Рассмотрены служебные программы (службы) операционных систем (ОС) Windows NT/2000/XP/Vista, работающие в режиме пользователя и занимающие в ОС Windows NT/2000/XP/Vista особое место. <...> В ОС Windows возможность запуска процессов, не связанных с работой интерактивного пользователя, осуществляется службами, или сервисами, в которых используются функции интерфейса (Win32 API*) и которые работают в режиме пользователя. <...> Этот термин обозначает и драйверы устройств, и низкоуровневые сервисы ОС, такие как NtCreateProcess, являющиеся внутрисистемными сервисами, и собственно сервисы, т. е. серверные приложения, являющиеся процессами пользовательского режима. <...> Примером Windows-сервиса может служить Web-сервер, который должен запускаться при запуске ОС и работать независимо от того, зарегистрировался ли в ней какой-либо пользователь. Windows-сервисы являются частью ОС и взаимодействуют с SCP-приложением (Service Control Program – программа управления сервисами) и диспетчером управления сервисами (Service Control Manager – SCM). <...> Вучебном пособии обсуждаются особенности работы и написания сервисных приложений режима пользователя, учетные записи сервисов и работа SCM. фейса. <...> Программа – служба Сервис, или служба, ОС Windows (Windows Service) – это Win32приложение, которое особым образом обрабатывается ОС. <...> Основное отличие сервиса от обычного приложения заключается во взаимодействии его с SCM. <...> Именно влияние SCM на работу сервиса определяет его особенности: • сервис имеет определенную структуру, которая позволяет ему принимать информацию и команды от SCM; • сервис в общем случае не является последовательно исполняемой программой, так как имеет несколько точек входа, т. е. содержит функции, вызываемые в ответ на определенные события в ОС; • сервис может выполняться от имени любой учетной записи терфейса, что позволяет создавать сервис или как GUI*-приложение (с функцией WinMain), или как консольное приложение (с функцией main). независимо от наличия вошедших в систему пользователей и их числа. <...> Например <...>
Сервисы_Windows.pdf
УДК 681.3.06
ББК 32.81
Ê82
Рецензенты:
À. À. Ðîùèí, Í. Â. Лукьянова
Ê82
Крищенко В. А.
Сервисы Windows : ó÷åá. пособие / Â.À. Êðèùåíêî,
Í.Þ. Ðÿçàíîâà. – Ì.: Èçä-âî МГТУ èì. Í.Ý. Áàóìàíà, 2011. –
47, [1] ñ.: èë.
Рассмотрены служебные программы (службы) операционных
систем (ÎÑ) Windows NT/2000/XP/Vista, работающие в режиме пользователя
и занимающие в ОС Windows NT/2000/XP/Vista особое ìåñòî.
На службы Win32 возложены такие важнейшие системные функции,
как сохранение копий отдельных файлов, управление конфигурацией
ñåòè, загрузки и обновления ОС Windows и ò. ï. Рассмотрены
особенности работы, использования, установки и разработки служб
Win32.
Для студентов 3-го и 4-го курсов, обучающихся на кафедре
«Программное обеспечение ЭВМ и информационные технологии»
МГТУ èì. Í.Ý. Áàóìàíà.
УДК 681.3.06
ББК 32.81
© МГТУ èì. Í.Ý. Áàóìàíà, 2011
Стр.2
Список источников
1. Ðóññèíîâè÷Ì., Соломон Ä. Внутреннее устройство Microsoft.
Windows Server 2003, Windows XP и Windows 2000. Мастер êëàññ:
Ïåð. с àíãë. 4-å èçä. Ì.: Русская ðåäàêöèÿ; ÑÏá.: Ïèòåð, 2006. 992 ñ.
2. Jeffrey Richter. Design a Windows NT Service to Exploit Special
Operating System Facilities // Microsoft System J., 1997. Vol. 12. No 10.
19 ð. – Режим доступа http://www.microsoft.com/msj/1097/
WINNT.aspx
3. MSDN Library, Microsoft. – Режим доступа http://
MSDN.microsoft.com/ru-ru/ library/d56de412.aspx
Оглавление
Введение .................................................. 3
1.ÑëóæáûWindows ......................................... 4
1.1. Программа – служба ................................... 4
1.2. Три компонента сервиса ................................ 5
1.3. ÎñîáåííîñòèSCM ..................................... 6
1.4. Программы управления сервисами ....................... 10
1.5. Учетные записи сервиса ................................ 15
Учетная запись локальной системы (Local System) ............15
Учетная запись сетевого сервиса (Network Service) ............16
Учетная запись локальной службы (Local Service) ............17
Выполнение сервисов под другими учетными записями .......17
1.6. Начало работы сервиса ................................. 17
1.7. Выполнение сервиса ................................... 21
2. Разработка сервиса Win32 ................................. 23
2.1. Структура программы сервиса ........................... 23
Точка входа main ........................................25
Точка входа в сервис (ServiceMain) .........................27
Точка входа по обработке команд (Handler) ..................34
2.2. Протокол âçàèìîäåéñòâèÿSCMè сервиса ................. 41
2.3. Пример функций сервиса .............................. 42
Программа, осуществляющая установку сервиса .............44
2.4. Отладка сервиса ...................................... 45
Список источников ......................................... 47
47
Стр.47