Подсистема диспетчера сеансов
Подсистема диспетчера сеансов или smss.exe
, является компонентом семейства Microsoft Windows NT операционных систем , начиная с Windows NT 3.1 . Он выполняется во время процесса запуска этих операционных систем .
Инициализация сеанса
[ редактировать ]Подсистема диспетчера сеансов — это первый процесс пользовательского режима, запускаемый ядром. После запуска он создает дополнительные файлы подкачки с данными конфигурации из HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management,
[ 1 ] переменные среды, расположенные в записи реестра HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
и DOS сопоставления устройств (например, CON: , NUL: , AUX: , COM1: , COM2 : , COM3 : , COM4: , PRN: , LPT1: , LPT2: , LPT3: и буквы дисков), перечисленные в HKLM\System\CurrentControlSet\Control\Session Manager\DOS Devices
ключ реестра. Это можно использовать для создания постоянных вспомогательных приводов.
Менеджер отвечает за запуск ядра и пользовательских режимов подсистемы Win32 . Эта подсистема включает в себя win32k.sys
(режим ядра), winsrv.dll
(пользовательский режим) и csrss.exe
(пользовательский режим). [ 2 ] Любые другие подсистемы, перечисленные в Required
ценность HKLM\System\CurrentControlSet\Control\Session Manager\SubSystems
Ключ реестра также запускается.
Менеджер также несет ответственность за выполнение любых операций, которые требуется выполнить в начале сеанса. Команды, перечисленные в HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\BootExecute
, такой как autochk
и convert
, выполняются. Эти команды выполняются до загрузки служб на последующих этапах процесса загрузки. [ 3 ] Любые операции переименования, поставленные в очередь HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\PendingFileRenameOperations
. Это используется для замены ранее использовавшихся файлов (например, драйверов) в ходе перезагрузки. [ 4 ]
Начиная с Windows Vista, подсистема диспетчера сеансов создает свой временный экземпляр, который запускает приложение запуска Windows ( wininit.exe
) и вторую подсистему времени выполнения клиент/сервер ( csrss.exe
) для сеанса 0 — сеанса, посвященного системным процессам. Отсюда приложение запуска Windows запускает диспетчер управления службами ( services.exe
), который запускает все службы Windows, для которых установлен параметр «Автозапуск». [ 4 ] Приложение также запускает службу подсистемы локального органа безопасности ( lsass.exe
). До появления Windows Vista эти процессы запускались при входе в систему Windows, а не при запуске приложения Windows. [ 5 ]
После настройки сеанса подсистема диспетчера сеансов запускает Winlogon (приложение входа в Windows), которое отвечает за обработку интерактивного входа в систему Windows, как локальную, так и удаленную. [ 5 ]
Операция
[ редактировать ]После завершения процесса загрузки программа остается в памяти, и ее можно увидеть в диспетчере задач Windows . Затем он ожидает либо winlogon.exe
или csrss.exe
завершиться, после чего Windows выключится. Если процессы не завершаются ожидаемым образом, smss.exe
может зависнуть система или проверка ошибок . произойдет [ 6 ] Он также инициирует новые пользовательские сеансы, когда это необходимо.
Служба локального диспетчера сеансов ( lsm.exe
) отправляет запросы в SMSS через асинхронной локальной межпроцессной связи (ALPC). порт SmSsWinStationApiPort
для начала новых сеансов.
Каждый раз, когда пользователь входит в систему, первоначальный диспетчер сеансов создает новый экземпляр самого себя для настройки нового сеанса. Этот новый процесс запускает подсистему Win32 и процесс Winlogon для нового сеанса. Это позволяет нескольким пользователям одновременно входить в систему в системах Windows Server . [ 5 ]
См. также
[ редактировать ]- Список компонентов Microsoft Windows
init
— аналогичный процесс в системах в стиле Unix
Ссылки
[ редактировать ]- ^ «Устранение неполадок процесса запуска» . Ресурсный комплект Windows XP . Майкрософт Технет. 3 ноября 2005 года . Проверено 24 октября 2011 г.
- ^ Мэтт Питрек (1996). «Покопаемся под капотом: взгляд программиста на Windows NT 4.0» . Системный журнал Microsoft. Архивировано из оригинала 18 ноября 2012 года.
- ^ «Устранение неполадок процесса запуска» . Ресурсный комплект Windows XP . Майкрософт Технет. 3 ноября 2005 года . Проверено 24 октября 2011 г.
- ^ Jump up to: а б Ионеску, Алекс; Руссинович, Марк; Соломон, Дэвид А. (2012). Внутреннее устройство Windows, часть 2 (6-е изд.). Редмонд, Вашингтон: Microsoft. стр. 522–527. ISBN 978-0735665873 .
- ^ Jump up to: а б с Архив документов. «Администрирование Windows: Внутри ядра Windows Vista: Часть 2» . Learn.microsoft.com . Проверено 13 мая 2023 г.
- ^ Корпорация Майкрософт (2007). «Процессы по умолчанию в Windows 2000» . Корпорация Майкрософт . Проверено 14 июня 2009 г.