Диспетчер управления службами


Диспетчер управления службами (англ. Service Control Manager, SCM) — в Microsoft Windows (\Windows\System32\Services.exe) особый системный процесс, реализующий технологию удалённого вызова процедур (англ. remote procedure call, RPC). Обеспечивает создание, удаление, запуск и остановку служб ОС. Стартует при загрузке системы, обеспечивает работу журнала событий, а также позволяет выполнять манипуляцию процессами удалённой машины.[1]

Монтирование базы данных установленных служб производится в системном реестре и располагается в ветке HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services. Данная база используется SCM и другими программами для добавления, изменения или конфигурирования служб.

Начальная структура базы служб создаётся при установке операционной системы и включает в себя следующие данные:

В структуре данной базы обязательно присутствуют записи, описывающие системные драйверы, необходимые для запуска операционной системы.

При загрузке операционной системы SCM запускает все службы, у которых указан тип запуска «Автоматически», а также все службы, указанные в зависимостях автозапускаемых служб. Таким образом, при запуске службы с типом запуска «Автоматически», у которой в зависимостях указаны службы с типом запуска «Вручную», последние также будут запущены, несмотря на свой тип запуска.

После загрузки операционной системы пользователь может вручную запустить необходимые службы, воспользовавшись консолью управления службами.