Compartir a través de


Procedimientos recomendados para el rendimiento activado/desactivado

Plataforma

Clientes- Windows Vista | Windows 7
Servidores- Windows Server 2008 | Windows Server 2008 R2

Descripción

Los estados de alimentación del sistema (o S-states), como se define en la especificación Advanced Computer Power Interface (ACPI), se llaman coloquialmente estados de encendido y apagado, ya que la transición de estado S-state más común es un equipo que se activa y desactiva. Las distintas transiciones de estado de encendido y apagado en un sistema que ejecuta Windows Vista o Windows 7 son de arranque, suspensión (ACPI S3), hibernación (ACPI S4) y apagado.

Un buen rendimiento durante estas transiciones de encendido y apagado no solo mejora la calidad percibido de un equipo, sino que también afecta considerablemente a los patrones de uso diario del equipo y la confiabilidad del sistema. Los clientes pueden sentirse frustrados por los sistemas que tardan demasiado tiempo en arrancar o apagarse. Los sistemas móviles que tienen transiciones largas de suspensión e hibernación pueden agotar innecesariamente la duración de la batería. Los tiempos de apagado más largos también pueden afectar negativamente a la confiabilidad de los sistemas móviles. Por ejemplo, aumentan el riesgo de cortes de energía inesperados.

Las extensiones del sistema, como controladores, aplicaciones y servicios, pueden tener un impacto significativo en los tiempos de transición de encendido y apagado. En esta sección se describen algunos de los procedimientos recomendados que los desarrolladores de aplicaciones y servicios pueden seguir para evitar retrasos durante el arranque, el modo de espera y el apagado, y para garantizar una experiencia de usuario posterior al arranque y posterior a la reanudación. Para obtener más información sobre cómo identificar problemas de rendimiento on/off mediante Windows Performance Toolkit e implementar las recomendaciones siguientes para la aplicación o el servicio, consulte las notas del producto en la sección "Vínculos a otros recursos".

Prácticas recomendadas

  • Usa Windows Performance Toolkit para medir el rendimiento durante todas las transiciones de encendido y apagado.
  • Realice pruebas de forma controlada y realice comparaciones con una línea base válida:
    • Obtención de una medida de línea de base en un sistema con tantas extensiones del sistema como sea posible
    • Agregar aplicaciones y servicios de uno en uno
    • Prueba de regresiones inaceptables en los tiempos de transición de encendido y apagado
  • Evite usar código administrado para aplicaciones en la ruta de acceso de arranque crítica.
  • Asegúrese de que todas las aplicaciones responden rápidamente a las notificaciones de apagado (WM_QUERYENDSESSION y mensajes de WM_ENDSESSION).
  • Reduzca los retrasos en la ruta de acceso de apagado de los servicios y las aplicaciones al minimizar la CPU, el disco y la actividad de red en respuesta a las notificaciones de apagado.
  • Evite retrasos en el procesamiento de la notificación de suspensión (WM_POWERBROADCAST mensaje).
  • Responda rápidamente a los eventos de reanudación y minimice el uso posterior a la CPU, el disco y la red.
  • Reduzca el consumo de recursos de la aplicación después del arranque.
  • No inicie aplicaciones desde la clave RunOnce en cada arranque.
  • Convierta todos los servicios no esenciales para iniciar o desencadenar el inicio de la demanda para que los recursos del sistema estén disponibles durante el arranque.
  • Evite el uso de grupos de pedidos de carga para expresar las dependencias del servicio.
  • Asegúrese de que todos los servicios en ejecución notifiquen este estado lo antes posible durante el arranque para evitar el bloqueo del Administrador de control de servicios (SCM).
  • Evite el uso de código administrado para los servicios en la ruta de inicio.
  • No permita que los servicios opten por recibir notificaciones previas al apagado y apagado (SERVICE_CONTROL_PRESHUTDOWN y códigos de control SERVICE_CONTROL_SHUTDOWN) a menos que sea absolutamente necesario.
  • Asegúrese de que todos los servicios que han optado por recibir notificaciones de apagado responden rápidamente al SCM.
  • Compruebe que los servicios no opten por recibir notificaciones de suspensión a menos que sea absolutamente necesario.
  • Asegúrese de que todos los servicios respondan rápidamente a los eventos de reanudación y minimice el uso posterior a la CPU, el disco y la red.