Автоматические (запуск по триггеру) и ручные (запуск по триггеру) службы в Windows - Winhelponline

Automatic



MMC служб показывает имена служб, текущий статус и тип запуска. Большинство из вас знают об автомате, Автоматический (отложенный старт) , и руководство типы запуска .

  • Автомат - Запускает службы при запуске системы.
  • Автоматический (отложенный старт) - Запускает службу после завершения загрузки системы и завершения первоначальных ресурсоемких операций, чтобы система загружалась быстрее.
  • Справочник - Запускает службу по мере необходимости (определяется зависимостями от других служб) или при вызове из приложения с использованием соответствующего API.
  • инвалид - Полностью отключает службу и предотвращает запуск ее и ее зависимостей.

Но что это за услуги «триггерного старта»?









Что такое услуги триггерного запуска?

Служба запуска триггера - это обычная служба, настроенная на запуск (или остановку работы) только при ее запуске, то есть только при соблюдении определенных критериев и условий, которые вы определяете (например, когда становится доступен первый сетевой IP-адрес). , или когда последний сетевой IP потерян).



Вот список доступных триггеров, которые можно использовать для настройки режима запуска данной службы:





  • Прибытие или отправка интерфейса устройства
  • Присоединение к домену или выход из него
  • Открытие или закрытие порта межсетевого экрана
  • Изменение групповой политики
  • Первый доступный IP-адрес или последний оставленный IP-адрес
  • Пользовательское событие - трассировка событий для Windows (ETW)
Подробнее читайте в статье SERVICE_TRIGGER | Документы Microsoft

Пример 1: служба времени Windows

Служба времени Windows настроена на запуск, когда устройство подключено к домену. Вы можете запустить следующую команду, чтобы просмотреть триггеры для этой службы:

sc qtriggerinfo w32time

Вы увидите следующий результат:



[SC] QueryServiceConfig2 SUCCESS SERVICE_NAME: W32Time ЗАПУСК СЛУЖБЫ DOMAIN JOINED STATUS: 1ce20aba-9851-4421-9430-1ddeb766e809 [DOMAIN JOINED]

В Windows 7 и более ранних версиях вы видите два триггера для этой службы.

НАЧАТЬ СОСТОЯНИЕ СОЕДИНЕНИЯ К ДОМЕНУ СЛУЖБЫ: 1ce20aba-9851-4421-9430-1ddeb766e809 [ДОМЕН ПРИСОЕДИНЕН] СТАТУС СОЕДИНЕНИЯ К ДОМЕНУ СЛУЖБЫ: ddaf516e-58c2-4866-9574-c3b615d42ea1 [НЕ ПРИСОЕДИНЕН]

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

СВЯЗАННЫЙ: W32Time не запускается на компьютере рабочей группы - Клиент Windows | Документы Microsoft

Пример 2: Служба обновления Windows

Служба обновления Windows ( Wuauserv ) по умолчанию задано значение Вручную и настроено на запуск в Windows 10.

Выполните следующую команду, чтобы увидеть триггеры для Центр обновления Windows оказание услуг:

sc qtriggerinfo wuauserv

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

[SC] QueryServiceConfig2 SUCCESS SERVICE_NAME: wuauserv НАЧАЛО ГРУППЫ СЕРВИСОВ: 659fcae6-5bdb-4da9-b1ff-ca2a178d46e0 [НАСТОЯЩАЯ ПОЛИТИКА ДЛЯ МАШИНЫ] НАЧАЛО ПОЛИТИКИ СЕРВИСНОЙ ГРУППЫ: 54fb46c8-f089-464c-b1fd-59d1b62c3b50 [ПОЛЬЗОВАТЕЛЬСКАЯ ПОЛИТИКА]

Служба Windows Update будет запущена, когда конфигурация групповой политики (политики компьютера или пользователя) изменения . GUID 659FCAE6-5BDB-4DA9-B1FF-CA2A178D46E0 представляет MACHINE_POLICY_PRESENT_GUID, и 54FB46C8-F089-464C-B1FD-59D1B62C3B50 представляет USER_POLICY_PRESENT_GUID.

советы лампочка значокВы можете проверить это сами. Когда вы впервые откроете MMC служб, служба Windows Update будет в Остановлен штат. После того, как вы загрузите редактор групповой политики и измените конфигурацию (не обязательно параметр, связанный с «Центром обновления Windows»), служба Центра обновления Windows запустится и отобразится как Бег .

Служба Центра обновления Windows запускается при изменении групповой политики.

Пример 3: Служба улучшения отображения

Служба улучшения отображения ( DisplayEnhancementService ) в Windows 10 установлено значение Вручную (запуск по триггеру) . Эта служба включается только при изменении окружения дисплея. Функция адаптивной яркости в Windows 10 отслеживает датчики внешнего освещения, выявляет изменения внешнего освещения, триггер запускает службу улучшения дисплея.

Служба улучшения дисплея автоматически регулирует яркость дисплея в зависимости от условий окружающего освещения. Эта служба запускается только при запуске аппаратным интерфейсом датчика внешней освещенности.

Следующая команда показывает список триггеров, используемых этой службой:

sc qtriggerinfo DisplayEnhancementService

Выходные данные содержат список триггеров (для каждой службы может быть несколько триггеров) и интерфейсы устройств, с которыми они связаны.

Преимущества услуг триггерного пуска

Вам может быть интересно, почему бы просто не установить его на Автоматический , а зачем нужны триггеры?

Есть несколько проблем, связанных с постоянным запуском служб:

а) Системные ресурсы

Во-первых, зачем запускать программу или службу (даже в фоновом режиме), если она не нужна? Например, представьте себе службу обновлений, которая проверяет наличие новых обновлений приложений. Если компьютер не подключен к сети и не имеет доступного IP-адреса, почему служба должна работать круглосуточно без выходных? Если устройства Bluetooth не подключены, почему служба должна работать все время?

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

Любой запущенный процесс (включая службы) использует ценную память и ресурсы ЦП. Если в любой момент времени выполняется сотня служб, они добавляют довольно много памяти, дескрипторов, потоков и значительного использования ЦП. Эти потраченные впустую ресурсы снижают общую производительность компьютера и снижают его быстродействие.

СВЯЗАННЫЙ: Просмотр использования ресурсов отдельными службами в Windows 10

б) Время загрузки

Сервисы автоматического запуска имеют большое влияние на время загрузки устройства, и именно поэтому автоматический (отложенный запуск) был впервые представлен. Использование большего количества системных ресурсов (ЦП, памяти и т. Д.) Означает большее потребление энергии. Это может быть критично для портативных компьютеров и может значительно сократить время автономной работы.

в) С точки зрения безопасности

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

Автоматический (запуск по триггеру) Vs. Вручную (запуск по триггеру)

Вам может быть интересно, в чем разница между автоматическим (запуск по триггеру) и ручным (запуск по триггеру). Если триггеры могут быть добавлены либо к ручным, либо к автоматическим службам, почему нельзя установить ручной режим?

Для службы можно установить автоматический режим, чтобы она запускалась при загрузке Windows. Но служба также может корректно остановиться сама по себе, когда она выполнила свою задачу и у нее больше не будет работы. Возможно, вы видели следующее сообщение при запуске службы:

Служба [servicename] на локальном компьютере была запущена, а затем остановлена. Некоторые службы останавливаются автоматически, если они не используются другими службами или программами.

Служба могла быть корректно остановлена ​​после завершения своей работы. Но если вы назначите ему триггеры, его все равно можно будет запустить при необходимости - например, когда подключено определенное оборудование, открыт порт брандмауэра или когда происходит пользовательское событие. Автоматический (запуск по триггеру) предпочтительнее, если эта служба должна запускаться при запуске, а также иметь возможность запускаться по триггеру при необходимости.

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

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

использованная литература

Надеюсь, что приведенная выше информация была немного полезной!


Одна небольшая просьба: если вам понравился этот пост, поделитесь им?

Одна «крошечная» публикация от вас серьезно помогла бы росту этого блога. Несколько отличных предложений:
  • Приколи это!
  • Поделитесь этим в своем любимом блоге + Facebook, Reddit
  • Напишите об этом в Твиттере!
Так что большое спасибо за вашу поддержку, мой читатель. Это займет не более 10 секунд вашего времени. Кнопки «Поделиться» находятся прямо внизу. :)