- Любовные романы
- Фантастика и фэнтези
- Ненаучная фантастика
- Ироническое фэнтези
- Научная Фантастика
- Фэнтези
- Ужасы и Мистика
- Боевая фантастика
- Альтернативная история
- Космическая фантастика
- Попаданцы
- Юмористическая фантастика
- Героическая фантастика
- Детективная фантастика
- Социально-психологическая
- Боевое фэнтези
- Русское фэнтези
- Киберпанк
- Романтическая фантастика
- Городская фантастика
- Технофэнтези
- Мистика
- Разная фантастика
- Иностранное фэнтези
- Историческое фэнтези
- LitRPG
- Эпическая фантастика
- Зарубежная фантастика
- Городское фентези
- Космоопера
- Разное фэнтези
- Книги магов
- Любовное фэнтези
- Постапокалипсис
- Бизнес
- Историческая фантастика
- Социально-философская фантастика
- Сказочная фантастика
- Стимпанк
- Романтическое фэнтези
- Ироническая фантастика
- Детективы и Триллеры
- Проза
- Юмор
- Феерия
- Новелла
- Русская классическая проза
- Современная проза
- Повести
- Контркультура
- Русская современная проза
- Историческая проза
- Проза
- Классическая проза
- Советская классическая проза
- О войне
- Зарубежная современная проза
- Рассказы
- Зарубежная классика
- Очерки
- Антисоветская литература
- Магический реализм
- Разное
- Сентиментальная проза
- Афоризмы
- Эссе
- Эпистолярная проза
- Семейный роман/Семейная сага
- Поэзия, Драматургия
- Приключения
- Детская литература
- Загадки
- Книга-игра
- Детская проза
- Детские приключения
- Сказка
- Прочая детская литература
- Детская фантастика
- Детские стихи
- Детская образовательная литература
- Детские остросюжетные
- Учебная литература
- Зарубежные детские книги
- Детский фольклор
- Буквари
- Книги для подростков
- Школьные учебники
- Внеклассное чтение
- Книги для дошкольников
- Детская познавательная и развивающая литература
- Детские детективы
- Домоводство, Дом и семья
- Юмор
- Документальные книги
- Бизнес
- Работа с клиентами
- Тайм-менеджмент
- Кадровый менеджмент
- Экономика
- Менеджмент и кадры
- Управление, подбор персонала
- О бизнесе популярно
- Интернет-бизнес
- Личные финансы
- Делопроизводство, офис
- Маркетинг, PR, реклама
- Поиск работы
- Бизнес
- Банковское дело
- Малый бизнес
- Ценные бумаги и инвестиции
- Краткое содержание
- Бухучет и аудит
- Ораторское искусство / риторика
- Корпоративная культура, бизнес
- Финансы
- Государственное и муниципальное управление
- Менеджмент
- Зарубежная деловая литература
- Продажи
- Переговоры
- Личная эффективность
- Торговля
- Научные и научно-популярные книги
- Биофизика
- География
- Экология
- Биохимия
- Рефераты
- Культурология
- Техническая литература
- История
- Психология
- Медицина
- Прочая научная литература
- Юриспруденция
- Биология
- Политика
- Литературоведение
- Религиоведение
- Научпоп
- Психология, личное
- Математика
- Психотерапия
- Социология
- Воспитание детей, педагогика
- Языкознание
- Беременность, ожидание детей
- Транспорт, военная техника
- Детская психология
- Науки: разное
- Педагогика
- Зарубежная психология
- Иностранные языки
- Филология
- Радиотехника
- Деловая литература
- Физика
- Альтернативная медицина
- Химия
- Государство и право
- Обществознание
- Образовательная литература
- Учебники
- Зоология
- Архитектура
- Науки о космосе
- Ботаника
- Астрология
- Ветеринария
- История Европы
- География
- Зарубежная публицистика
- О животных
- Шпаргалки
- Разная литература
- Зарубежная литература о культуре и искусстве
- Пословицы, поговорки
- Боевые искусства
- Прочее
- Периодические издания
- Фанфик
- Военное
- Цитаты из афоризмов
- Гиды, путеводители
- Литература 19 века
- Зарубежная образовательная литература
- Военная история
- Кино
- Современная литература
- Военная техника, оружие
- Культура и искусство
- Музыка, музыканты
- Газеты и журналы
- Современная зарубежная литература
- Визуальные искусства
- Отраслевые издания
- Шахматы
- Недвижимость
- Великолепные истории
- Музыка, танцы
- Авто и ПДД
- Изобразительное искусство, фотография
- Истории из жизни
- Готические новеллы
- Начинающие авторы
- Спецслужбы
- Подростковая литература
- Зарубежная прикладная литература
- Религия и духовность
- Старинная литература
- Справочная литература
- Компьютеры и Интернет
- Блог
Windows Vista. Для профессионалов - Роман Клименко
Шрифт:
Интервал:
Закладка:
Последняя удачная конфигурация загружает операционную систему на основе ветви реестра HKEY_LOCAL_MACHINESYSTEMControlSetX, номер которой указан в параметре REG_DWORD-типа LastKnownGood, расположенном В ветви реестра HKEY_LOCAL_MACHINESYSTEMSelect.
По умолчанию значение параметра LastKnownGood изменяется после каждого успешного входа пользователя в операционную систему. Однако сторонние службы могут изменить условие, при котором загрузка операционной системы считается удачной, и значение параметра LastKnownGood изменяется.
Для этого им достаточно описать новую программу верификации запуска системы с помощью ветви реестра Windows HKEY_LOCAL_MACHINESYSTEM CurrentControlSetControlBootVerificationProgram. Также им нужно будет присвоить параметру строкового типа ReportBootOk, расположенному В ветви реестра HKEY_LOCAL_MACHINESOFTWAREMicrosof t Windows NTCurrentVersionWinlogon, значение 0. Это необходимо сделать, чтобы операционная система не вызывала функцию Notif yBootConf igStatus при входе пользователя в систему (так как эта функция будет вызываться из новой программы верификации). Функция вызывается перед сохранением последней удачной конфигурации.
• ImagePath – этот параметр строкового типа определяет путь к исполняемому файлу службы. Именно этот файл представляет собой службу и будет запускаться при ее загрузке.
• Start – имеет тип REG_DWORD и определяет, когда именно будет запускаться данная служба. Он может принимать следующие значения.
– 0 – запускать драйвер загрузчиком операционной системы (NTLDR) перед началом этапа инициализации ядра (во время загрузки драйвер будет находиться в памяти).
– 1 – запускать драйвер при инициализации ядра (подсистемой ввода/вывода).
– 2 – запускать службу с помощью диспетчера управления службами (services.ехе) после запуска окна приветствия winlogon.ехе.
– 3 – запускать службу вручную, когда она понадобится какой-нибудь программе.
– 4 – запрещает запуск данной службы.
• DelayedAutoStart – этот параметр REG_DWORD-типа является нововведением операционной системы Windows Vista. Если его значение равно 1, то служба будет запускаться не сразу, а через определенный промежуток времени, чтобы не загружать операционную систему (с задержкой). Как правило, данный параметр используется в том случае, когда значение параметра Start равно 2.
• ServiceSidType – имеет тип REG_DWORD и является нововведением операционной системы Windows Vista. Он определят тип SID, который был присвоен соответствующей службе. Если значение данного параметра равно 1, то служба будет использовать неограниченный SID. А если значение равно 3, то ограниченный.
• Security – данный параметр REG_BINARY-типа содержит дескриптор защиты службы, определяющий права пользователей, которые могут получить доступ к службе.
• Туре – имеет тип REG_DWORD и определяет тип службы. Возможны следующие значения этого параметра.
– 0x1 – драйвер представляет устройство уровня ядра.
– 0x2 – драйвер является драйвером файловой системы уровня ядра.
– 0x4 – драйвер является аргументом для адаптера (данное значение является устаревшим).
– 0x8 – драйвер используется для распознавания файловой системы.
– 0x10 – служба является программой, запускающей свой процесс.
– 0x20 – служба является программой, работающей в общем процессе. Работа нескольких служб в одном процессе позволяет экономить ресурсы компьютера.
– 0x100 – данное значение параметра может добавляться к остальным значениям. Присутствие этого значения говорит о том, что службе разрешено взаимодействовать с Рабочим столом пользователя (то есть она может отображать свои окна). Использование данного значения параметра разрешено только для служб, запущенных от имени системы.
По умолчанию службы, запущенные от имени системы или другой учетной записи, не могут взаимодействовать с Рабочим столом текущего пользователя. Это связано с особенностями работы операционной системы Windows: каждая учетная запись имеет свой собственный Рабочий стол и может взаимодействовать только с ним. При этом отображаться может только один Рабочий стол – текущего пользователя. Поэтому, даже если служба попытается отобразить какое-либо сообщение (за исключением диалогового сообщения, которое служба может отобразить на Рабочем столе текущего пользователя, воспользовавшись специальными параметрами), пользователь этого сообщения не увидит.
Если же разрешить службе, запущенной от имени локальной системы, взаимодействовать с Рабочим столом, то она будет отображать окна не на своем Рабочем столе, а на Рабочем столе текущего пользователя.
...Примечание
Запретить работу служб в интерактивном режиме можно с помощью параметра типа REG_DWORD NolnteractiveServices, расположенного в ветви HKEY_LOCAL_MACHINE SYSTEMCurrentControlSetControlWindows.
• FailureActions – этот параметр REG_BINARY-типа определяет действия, которые будет выполняться в том случае, если в работе службы произошел сбой. При этом сначала в этом параметре описываются действия для первой неудачной попытки запуска, затем для второй, а потом для всех остальных.
• RequiredPrivileges – имеет тип REG_MULTI_SZ и определяет особые привилегии, которые необходимы для работы данной службы. Он впервые появился в операционной системе Windows Vista с целью повышения общей безопасности компьютера. Теперь службы, которым полностью не нужны системные права, но необходимо выполнять определенные системные операции, могут быть запущены с пониженными правами, однако при этом им будет предоставлено определенное системное право, необходимое для их работы.
...Примечание
Для получения сведений о службах, установленных в операционной системе, можно использовать класс Win32_Service, который принадлежит пространству имен root cimv2 и является производным от классов Win32_BaseService и CIM_Service. Например, он поддерживает следующие свойства: AcceptPause (определяет, разрешено ли приостанавливать работу службы), AcceptStop (указывает, разрешено ли останавливать работу службы), Description (содержит строку описания службы), Desktoplnteract (определяет, может ли служба взаимодействовать с Рабочим столом пользователя). DisplayName (указывает название службы), ErrorControl (определяет поведение операционной системы при возникновении ошибки во время запуска данной службы). Name (ключевое свойство, определяющее имя службы), PathName (указывает путь к исполняемому файлу службы), ProcessID (определяет PID процесса запущенной службы), Started (указывает, запущена ли служба в данный момент), StartName (определяет учетную запись, от имени которой запускается служба).
Класс также поддерживает следующие методы: Create (позволяет создать службу). Delete (позволяет удалить службу), Change (позволяет изменить настройки службы). ChangeStartMode (позволяет изменить режим запуска службы), InterrogateService (обновляет информацию о службе), PauseService (приостанавливает работу службы). ResumeService (продолжает работу службы), StartService (запускает работу службы). StopService (останавливает работу службы), UserControlService (посылает службе код управления).
Если вы знакомы с сервером инструментариев Windows (WMI), то, наверное, уже догадались, что параметр может хранить те же константы привилегий, что и сценарии WMI.
Некоторые параметры реестра , описывающие стандартные настройки службы, также хранятся в подразделе Parameters. К ним можно отнести два параметра: ServiceDll и ServiceDllUnloadOnStop. Первый имеет тип REG_EXPAND_SZ и определяет библиотеку, необходимую для работы данной службы. Второй же параметр имеет тип REGDWORD и определяет, будут ли выгружаться из оперативной памяти компьютера библиотеки, необходимые для работы данной службы, если сама служба была остановлена.
Кроме того, некоторые службы и драйверы хранят в своей ветви реестра подразделы Performance. В данных подразделах описывается библиотека, в которой находятся счетчики производительности соответствующей службы, а также индивидуальные параметры работы этих счетчиков. Например, в данной ветви реестра может находиться параметр REG_DWORD-типа Collect Timeout, определяющий таймаут, в течение которого счетчики должны выполнить задание и ответить на запрос состояния.
Настройки служб svchost
Как вы уже узнали, служба может работать как в собственном процессе, так и в одном из общих процессов. Это позволяет экономить ресурсы компьютера. Хотя при этом появляется другая проблема: если возникнет ошибка в работе одной из служб, то будет завершена работа общего процесса, а вместе с ним и всех служб, которые в нем работали.
Одним из общих процессов для запуска служб является процесс svchost.ехе (например, общим также является процесс services.ехе). Он также называется «универсальным» процессом. Одновременно в операционной системе может существовать несколько запущенных процессов svchost.ехе. При этом каждый из них содержит службы определенного типа (например, типа netsvcs). Данные типы служб указываются как параметр строки запуска службы, расположенной в параметре Image Path ветви службы.
Все службы, исполняемый файл которых является частью файла svchost.ехе, имеют несколько настраиваемых параметров, расположенных в ветви реестра HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersion Svchost.

