Windows 7 — Service Trigger. Триггеры для служб.

В этой статье поговорим о службах, запускаемых по триггеру (trigger start service), новой функции, впервые появившейся в Windows 7. В принципе, службы, запускаемые по триггеру в Windows 7 – это обычные службы, которые можно настроить на остановку или запуск по наступлению какого-либо событий (это может быть открытие порта,  доступность ip адреса и т.д.). Перечислим доступные триггеры,  которые могут быть использованы для настройки запуска служб в Windows 7 Service Trigger:

  • Открытие/закрытие порта на брандмауэре
  • Подключение/отключение устройства
  • Вход или выход из домена
  • Доступность/недоступность определенного ip адреса
  • Изменение в групповых политиках
  • Настраиваемое событие – с помощью программного интерфейса  windows ETW

Зачем вообще понадобился механизм служб, запускаемых по триггеру в Windows 7/2008 r2? Службы, запускаемые по триггеру нужны для:

1)      Увеличения быстродействия системы и оптимизации использования системных ресурсов. Ведь любая запущенная служба (даже если она работает в фоновом режиме) потребляем ресурсы CPU и памяти, так зачем же тратить драгоценные ресурсы для служб, которые в данный момент не нужны?

2)      Экономия электроэнергии. Как и в первом пункте речь идет об уменьшении загрузки на CPU, и как следствие уменьшения потребления электроэнергии (что особенно актуально для переносных устройств: ноутбуков, нетбуков, планшетов)

3)       Увеличение стабильности работы системы за счет уменьшения количества постоянно запущенных процессов (имеется в виду вероятные утеки памяти в службах)

Познакомимся с технологию Service Trigger в Windows 7 поближе. В качестве примера возьмем службу «Computer Browser» (Обозреватель сети), которая по умолчанию настроена на ручной (manual) запуск, однако, как мы видим на скриншоте, в настоящий момент она запущена.

windows7 service trigger

Откроем командную строку и наберем в ней следующую команду:

SC qtriggerinfo BROWSER

windows7 service trigger

После выполнения этой команды можно увидеть, что для службы Computer Browser настроен сервисный триггер. Служба Computer Browser запустится только после того, как откроется следующие порты в брандмауэре (139 TCP, 137 UDP, 138 UDP), и отключится, как только указанные порты будут закрыты.

Данную статью я пишу на своем ноутбуке, подключенном к интернету с помощью Wireless LAN, поэтому, если я отключу свое беспроводное соединение, должен перестать проходить любой сетевой трафик через брандмауэр, и служба Computer Browser должна отключиться автоматически. И действительно, через 60 секунд после того, как я отключил Wireless LAN, служба «Обозревателя сети» отключилась.

Windows 7 - службы, запускаемые по триггеру

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

Попробуем посмотреть информацию о триггерах другой сетевой службы, DHCP:

SC qtriggerinfo DHCP

Windows 7  триггеры

Как вы видите, для данной службы нет ни одного заданного триггера.


Предыдущая статья Следующая статья

Комментариев: 1 Оставить комментарий

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Я не робот( Обязательно отметьте)