El subsistema del administrador de sesiones , o smss.exe, es un componente de la familia de sistemas operativos Microsoft Windows NT , a partir de Windows NT 3.1 . Se ejecuta durante el proceso de inicio de esos sistemas operativos .
Inicialización de sesión
El subsistema del administrador de sesiones es el primer proceso en modo usuario que inicia el kernel. Una vez iniciado, crea archivos de paginación con datos de configuración de HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management,[ 1 ] las variables de entorno ubicadas en la entrada del registro HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environmenty asignaciones de dispositivos (por ejemplo , CON: , NUL: , AUX: , COM1: , COM2: , COM3 : , COM4: , PRN : , LPT1: , LPT2: , LPT3: , y letras de unidad) que se enumeran en la HKLM\System\CurrentControlSet\Control\Session Manager\DOS Devicesclave del registro. Esto se puede utilizar para crear unidades subst permanentes .
El administrador es responsable de iniciar los modos kernel y usuario del subsistema Win32 . Este subsistema incluye win32k.sys(modo kernel), winsrv.dll(modo usuario) y csrss.exe(modo usuario). [ 2 ] Cualquier otro subsistema listado en el Requiredvalor de la clave HKLM\System\CurrentControlSet\Control\Session Manager\SubSystemsdel Registro también se inicia.
El administrador también es responsable de realizar cualquier operación que se solicite al inicio de una sesión. Se ejecutan los comandos enumerados en HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\BootExecute, como autochky . Estos comandos se ejecutan antes de que los servicios se carguen en pasos posteriores del proceso de arranque. [ 3 ] Cualquier operación de cambio de nombre en cola en . Esto se utiliza para permitir que los archivos previamente en uso (por ejemplo, controladores) se reemplacen como parte de un reinicio. [ 4 ]convertHKLM\SYSTEM\CurrentControlSet\Control\Session Manager\PendingFileRenameOperations
A partir de Windows Vista, el subsistema del administrador de sesiones crea una instancia temporal de sí mismo que inicia la aplicación de inicio de Windows wininit.exey un segundo subsistema de tiempo de ejecución cliente/servidor csrss.exepara la sesión 0, una sesión dedicada a los procesos del sistema. Desde aquí, la aplicación de inicio de Windows inicia el administrador de control de servicios , services.exeque inicia todos los servicios de Windows configurados para "Inicio automático". [ 4 ] La aplicación también inicia el servicio del subsistema de la autoridad de seguridad local . lsass.exeAntes de Windows Vista, estos procesos se iniciaban mediante el inicio de sesión de Windows en lugar de la aplicación de inicio de Windows. [ 5 ]
Una vez configurada la sesión, el subsistema del administrador de sesiones inicia Winlogon (aplicación de inicio de sesión de Windows), que se encarga de gestionar los inicios de sesión interactivos en un sistema Windows, ya sea local o remoto. [ 5 ]
Operación
Una vez finalizado el proceso de arranque, el programa reside en la memoria y se puede ver ejecutándose en el Administrador de tareas de Windows . Luego espera a que finalicen winlogon.exeo csrss.exe, momento en el que Windows se apagará. Si los procesos no finalizan de la forma esperada, smss.exepuede bloquear el sistema o producirse un error grave . [ 6 ] También inicia nuevas sesiones de usuario cuando es necesario. En algunas versiones de Windows, mediante el uso de herramientas especiales, smss.exese puede eliminar el estado crítico del proceso en , después de eso, se puede terminar sin una pantalla azul, pero cualquier función que use smss.exedeja de funcionar hasta el siguiente reinicio.
El Servicio de Administrador de Sesiones Locales ( lsm.exe) envía solicitudes a SMSS a través del puerto de Comunicación Interprocesos Locales Asíncronos (ALPC) SmSsWinStationApiPortpara iniciar nuevas sesiones.
Cada vez que un usuario inicia sesión en el sistema, el Administrador de sesiones inicial crea una nueva instancia de sí mismo para configurar una nueva sesión. Este nuevo proceso inicia un subsistema Win32 y un proceso Winlogon para la nueva sesión. Esto permite que varios usuarios inicien sesión simultáneamente en sistemas Windows Server . [ 5 ]
Véase también
- Lista de componentes de Microsoft Windows
init— un proceso similar en sistemas de estilo Unix
Referencias
- ↑ "Solución de problemas del proceso de inicio" . Kit de recursos de Windows XP . Microsoft Technet. 3 de noviembre de 2005. Consultado el 24 de octubre de 2011 .
- ↑ Matt Pietrek (1996). "Explorando el funcionamiento interno: La visión de un programador sobre Windows NT 4.0" . Microsoft Systems Journal. Archivado del original el 18 de noviembre de 2012.
- ↑ "Solución de problemas del proceso de inicio" . Kit de recursos de Windows XP . Microsoft Technet. 3 de noviembre de 2005. Consultado el 24 de octubre de 2011 .
- 1 2 Ionescu, Alex; Russinovich, Mark; Solomon, David A. (2012). Windows internals, Part 2 (6.ª ed.). Redmond, Wash.: Microsoft. pp. 522–527 . ISBN 978-0735665873.
- 1 2 3 Archiveddocs (8 de septiembre de 2016). "Administración de Windows: Dentro del núcleo de Windows Vista: Parte 2" . learn.microsoft.com . Recuperado el 13 de mayo de 2023 .
- ↑ Microsoft Corporation (2007). "Procesos predeterminados en Windows 2000" . Microsoft Corporation . Consultado el 14 de junio de 2009 .
Lecturas adicionales
- Sesiones, Escritorios y Estaciones Windows
- Impacto del aislamiento de la sesión 0 en los servicios y controladores en Windows
- Aislamiento de sesión 0 - Windows 7 - Microsoft
- Arquitectura de Windows NT