Uso de la CPU para aplicaciones Windows de 16 y 32 bits de ajuste del rendimiento

Importante: Este artículo contiene información acerca de cómo modificar el registro. Antes de modificar el registro, asegúrese de que sabe cómo restaurarlo si ocurre algún problema. Para obtener información acerca de cómo hacerlo, vea el tema de ayuda "Restaurar la clave del registro" en Regedit.exe o "Restaurar una clave del registro" en Regedt32.exe.


Resumen

Aplicaciones de 16 bits o 32 bits de Windows pueden utilizar demasiada CPU tiempo, incluso cuando están inactivo (ningún evento de teclado o ratón). Registro del servidor de Terminal Server puede modificarse para detectar este comportamiento, suspender la ejecución de la aplicación y permitir que otras aplicaciones a utilizar la CPU, que son mucho más eficientes multitarea.

Más información

Advertencia: Si utiliza incorrectamente el Editor del registro puede originar problemas graves que conlleven la reinstalación del sistema operativo. Microsoft no puede garantizar que puedan resolverse los problemas resultantes del uso incorrecto del Editor del registro. Utilice el Editor del registro bajo su propio riesgo.


Para obtener información acerca de cómo modificar el registro, vea el tema de ayuda "Cambiar claves y valores" en el Editor del registro (Regedit.exe) o los temas "Agregar y eliminar información del registro" y "Modificar información del registro" en Regedt32.exe. Tenga en cuenta que debe hacer una copia del registro antes de modificarlo. Si está ejecutando Windows NT, debe actualizar también su disco de reparación de emergencia (ERD).


Para modificar el registro, siga estos pasos:

  1. Ejecute Regedt32.exe y busque la siguiente clave:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\TerminalServer\Compatibility\Applications
    Nota: la clave del registro anterior es una ruta de acceso; se ha ajustado para mejorar la legibilidad.

  2. Haga doble clic en la subclave de aplicaciones para mostrar varias configuraciones predefinidas. Seleccione configuración bajo la subclave de aplicaciones. Los siguientes valores se muestran en el lado derecho de la ventana del Editor del registro:
    FirstCountMsgQPeeksSleepBadApp:REG_DWORD:0xf

    Flags:REG_DWORD:0x8
    MsgQBadAppSleepTimeInMillisec:REG_DWORD:0
    NthCountMsgQPeeksSleepBadApp:REG_DWORD:0x5

  3. Con la subclave de configuración resaltada, haga clic en Guardar clave en el menú desplegable de registro . El nombre de archivo puede ser cualquier cosa, como Setup.reg. Cuando se guardan los valores de configuración, cree una subclave de la aplicación.
  4. Con la subclave de aplicaciones resaltada, haga clic en Agregar clave en el menú desplegable de Edición . Establezca el campo nombre de clave en el nombre del archivo ejecutable en cuestión, menos la extensión. Por ejemplo, para la aplicación Myapp.exe, escriba MYAPP en el campo Nombre de clave . Deje en blanco el campo de clase. Haga clic en Aceptar.
  5. Para copiar los valores de la subclave de configuración, haga clic en para seleccionar la nueva subclave (por ejemplo, MYAPP) y seleccione Restaurar en el menú desplegable de registro . Haga clic para elegir el nombre del archivo que creó en el paso 3. Haga clic en cuando aparezca el cuadro de diálogo de advertencia. La nueva subclave aplicación ahora tiene los mismos valores que la subclave de configuración.
  6. Ahora se deben ajustar los valores de la aplicación. Los valores se describen en las secciones siguientes:

Valores del registro de aplicación incorrecto

Son los valores predeterminados de la configuración de la aplicación incorrecta:

FirstCountMsgQPeeksSleepBadApp = 0xf
MsgQBadAppSleepTimeInMillisec = 0x1
NthCountMsgQPeeksSleepBadApp = 0x5
Flags: 0x8

FirstCountMsgQPeeksSleepBadApp es el número de veces que la aplicación debe consultar la cola de mensajes antes de que Terminal Server decida que se trata de un comportamiento incorrecto. Disminuya este valor para poner la aplicación en modo de suspensión con más frecuencia, por lo que utiliza menos tiempo de CPU.


MsgQBadAppSleepTimeInMillisec es el número de milisegundos que la aplicación se suspenderá cuando Terminal Server ha decidido que se trata de un comportamiento incorrecto. Aumente este valor para utilizar menos tiempo de CPU. Si este valor es cero, se deshabilita la detección de sondeo.


NthCountMsgQPeeksSleepBadApp - después de que la aplicación se determina como "mala", esta configuración es el número de veces que la aplicación debe consultar la cola de mensajes antes de volver a suspenderse. Disminuya este valor para utilizar menos tiempo de CPU.


Flags se establecen en un valor que corresponde al tipo de aplicación para Windows. Los valores válidos son:

0x4 for Win16 applications only
0x8 for Win32 applications only
0xC for either Win16 or Win32 applications

Configuración de la aplicación incorrecto


Todos los valores se expresan en números hexadecimales. Al cambiar los valores, primero haga clic en el botón Decimal y el valor decimal de la entrada. Por ejemplo, si desea que el valor de MsgQBadAppSleepTimeInMillisec se establece en 200 milisegundos, realice los pasos siguientes:

  1. Haga doble clic en MsgQBadAppSleepTimeInMillisec.
  2. Haga clic en el botón de opción Decimal .
  3. Introduzca 200 en el campo de datos .
  4. Haga clic en Aceptar. Ahora, el valor se convierte en 0xc8, el equivalente hexadecimal de 200 decimal.
Notas:

  • Para modificar la detección de sondeo para las aplicaciones de MS-DOS, utilice la utilidad DOSKBD. Para obtener información adicional, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:

    Detección de sondeo de teclado de aplicaciones DOS modificar 186560

  • Al ajustar estos parámetros, asegúrese de que está ejecutando el Monitor de rendimiento. Estos parámetros afectará a la cantidad de CPU utilizada por una aplicación. Estos parámetros suelen compensar el uso de la CPU en comparación con la capacidad de respuesta de la aplicación.
  • Las entradas del registro que se mencionan en este artículo no se aplican a servicios de Terminal Server de Windows 2000, Windows XP o Windows 2003 Terminal Services.
Propiedades

Id. de artículo: 186628 - Última revisión: 01/23/2017 - Revisión: 1

Comentarios