¿Por qué los tiempos de inicio son más rápidos en Windows 8? [cerrado]

28

Algunas personas han hecho puntos de referencia comparando Windows 8 con Windows 7. Muchas características no mejoran, pero consistentemente, el tiempo de inicio es mejor.

¿Por qué Windows 8 se inicia más rápido en comparación con Windows 7? ¿Es una cuestión de servicios y, en consecuencia, podemos ajustar Windows 7 para que tenga el mismo tiempo de inicio?

Mikhail
fuente
1
La respuesta principal de "Usuario" de los miembros a continuación es la razón principal, pero sí recortaron bastante los servicios que se cargan con Windows desde W7, lo que también ayuda.
Moab
1
Todavía había menos tiempo para instalar aplicaciones ...; P
n611x007

Respuestas:

37

Desde el blog Building Windows 8 :

Ahora aquí está la diferencia clave para Windows 8: como en Windows 7, cerramos las sesiones de usuario, pero en lugar de cerrar la sesión del núcleo, la hibernamos. En comparación con una hibernación completa, que incluye muchas páginas de memoria en uso por las aplicaciones, los datos de hibernación de sesión 0 son mucho más pequeños, lo que lleva mucho menos tiempo para escribir en el disco. Si no está familiarizado con la hibernación, estamos guardando efectivamente el estado del sistema y el contenido de la memoria en un archivo en el disco (hiberfil.sys) y luego lo leemos nuevamente en el currículum y restauramos el contenido nuevamente en la memoria. El uso de esta técnica con el arranque nos brinda una ventaja significativa para los tiempos de arranque, ya que leer el archivo de hibernación y reiniciar los controladores es mucho más rápido en la mayoría de los sistemas (30-70% más rápido en la mayoría de los sistemas que hemos probado).

Es más rápido porque reanudar la sesión del sistema hibernado es comparativamente menos trabajo que hacer una inicialización completa del sistema, pero también es más rápido porque agregamos una nueva capacidad de reanudación de múltiples fases, que es capaz de usar todos los núcleos en un sistema de múltiples núcleos en paralelamente, para separar el trabajo de lectura del archivo de hibernación y descomprimir los contenidos. Para aquellos de ustedes que prefieren hibernar, esto también resulta en reanudaciones más rápidas de hibernación también.

Probablemente valga la pena mencionar rápidamente cómo tratamos el archivo de hibernación: si lee esto e inmediatamente fue e hizo un dir / s / ah hiberfile.sys, habría encontrado que es un archivo bastante grande en el disco. El archivo de hibernación tiene un tamaño predeterminado del 75% de la RAM física. El archivo es esencialmente una reserva para los datos de hibernación que se escribirán a medida que el sistema esté cayendo en hibernación. Por lo general, se usa mucho menos espacio, y en el caso de nuestro uso de inicio rápido, generalmente es ~ 10-15% de la RAM física, pero varía según los controladores, los servicios y otros factores. El sistema también trata el archivo de hibernación de manera ligeramente diferente a otros archivos en el disco, por ejemplo, el servicio de Instantáneas de volumen lo ignora (un pequeño beneficio de rendimiento. ) Puede deshabilitar la hibernación y reclamar este espacio ejecutando powercfg / hibernate off desde un símbolo del sistema elevado. Pero tenga en cuenta que si hace esto, deshabilitará la hibernación por completo, incluidas algunas capacidades agradables como el inicio rápido y la suspensión híbrida, lo que permite que los sistemas de escritorio descansen e hibernen simultáneamente, por lo que si se produce una pérdida de energía, aún puede reanudar del estado hibernado. También puede ejecutar powercfg / hibernate / size y especificar un valor entre 0 y 100 para el porcentaje de RAM física que se reserva para el archivo de hibernación, ¡pero tenga cuidado! Especificar un tamaño demasiado pequeño puede hacer que falle la hibernación. En general, recomiendo dejarlo habilitado en el valor predeterminado a menos que esté trabajando en un sistema con espacio en disco extremadamente limitado. deshabilitará la hibernación por completo, incluidas algunas buenas capacidades como el inicio rápido y la suspensión híbrida, lo que permite que los sistemas de escritorio hagan una suspensión y una hibernación simultáneamente, por lo que si se produce una pérdida de energía, aún puede reanudar el estado de hibernación. También puede ejecutar powercfg / hibernate / size y especificar un valor entre 0 y 100 para el porcentaje de RAM física que se reserva para el archivo de hibernación, ¡pero tenga cuidado! Especificar un tamaño demasiado pequeño puede hacer que falle la hibernación. En general, recomiendo dejarlo habilitado en el valor predeterminado a menos que esté trabajando en un sistema con espacio en disco extremadamente limitado. deshabilitará la hibernación por completo, incluidas algunas capacidades agradables, como el inicio rápido y la suspensión híbrida, lo que permite que los sistemas de escritorio hagan una suspensión e hibernación simultáneamente, por lo que si se produce una pérdida de energía, aún puede reanudar el estado de hibernación. También puede ejecutar powercfg / hibernate / size y especificar un valor entre 0 y 100 para el porcentaje de RAM física que se reserva para el archivo de hibernación, ¡pero tenga cuidado! Especificar un tamaño demasiado pequeño puede hacer que falle la hibernación. En general, recomiendo dejarlo habilitado en el valor predeterminado a menos que esté trabajando en un sistema con espacio en disco extremadamente limitado. lo que permite que los sistemas de escritorio descansen e hibernen simultáneamente, por lo que si se produce una pérdida de energía, aún puede reanudar el estado de hibernación. También puede ejecutar powercfg / hibernate / size y especificar un valor entre 0 y 100 para el porcentaje de RAM física que se reserva para el archivo de hibernación, ¡pero tenga cuidado! Especificar un tamaño demasiado pequeño puede hacer que falle la hibernación. En general, recomiendo dejarlo habilitado en el valor predeterminado a menos que esté trabajando en un sistema con espacio en disco extremadamente limitado. lo que permite que los sistemas de escritorio descansen e hibernen simultáneamente, por lo que si se produce una pérdida de energía, aún puede reanudar el estado de hibernación. También puede ejecutar powercfg / hibernate / size y especificar un valor entre 0 y 100 para el porcentaje de RAM física que se reserva para el archivo de hibernación, ¡pero tenga cuidado! Especificar un tamaño demasiado pequeño puede hacer que falle la hibernación. En general, recomiendo dejarlo habilitado en el valor predeterminado a menos que esté trabajando en un sistema con espacio en disco extremadamente limitado.

Elmo
fuente
La hibernación del núcleo no es toda la historia. No sé qué cambiaron, pero incluso sin la hibernación del núcleo, las botas de mi computadora portátil dejaron de funcionar notablemente más rápido con Win8 que con Win7 (y tengo un SSD y una CPU de doble núcleo) ... algunos componentes deben haber sido modificados para hacer Esto sucede, pero no sé qué.
Mehrdad
2
En lugar de copiar y pegar una respuesta, sería mejor resumir el artículo y luego hacer referencia a él. Citar artículos está bien, pero no en fragmentos masivos.
James Mertz
2
La imagen lo resume.
Elmo
17

Respuesta corta, y en mis propias palabras es que su PC tiene sesiones, la sesión 0 está reservada para la sesión del núcleo o la consola y la sesión 1 es normalmente la sesión de los usuarios registrados. Lo que han hecho es tomar la función de hibernación que hemos tenido en Windows durante años, que hiberna todas las sesiones y la han modificado para que hiberne solo la sesión 0 (el núcleo). Dice así:

  • Hace clic en apagar
  • Su PC cierra la sesión 1 (su sesión de usuario) y escribe la sesión 0 en el archivo hiberfil.sys en su disco duro.
  • Cuando inicia su PC, lee el contenido de la sesión 0 del archivo hiberfil.sys y lo vuelve a guardar en la memoria. Luego inicializa una nueva sesión para usted.

Para responder a su segunda pregunta, ya que esto es una modificación del núcleo, esto no se puede hacer en Windows 7.

Sin interés, puede hacer un apagado completo (clásico) utilizando shutdown.exe desde el símbolo del sistema.

shutdown /s /t 0

Si quieres hacer un apagado híbrido puedes usar:

 shutdown /s /hybrid /t 0
Taylor Gibb
fuente