В следующем большом подразделе HKEY_LOCAL_MACHINE SystemCurrentControlSetServices содержится в основном служебная системная информация. Некоторые из его подразделов очень важны для операционной системы.
Подраздел Arbitrators содержит информацию программ-арбитров, о которых шла речь выше.
Подраздел Class перекликается по своему содержанию с описанным выше разделом HKEY_LOCAL_MACHINEEnum, частично беря свои данные из него, и содержит в себе информацию об установленных и распознанных устройствах. Именно из него берется информация для отображения в окне Панель управления — Система — Устройства (рис. 14.15).
Рис. 14.15.
Таким образом, этот подраздел фактически является 'реестром в реестре' — базой данных по устройствам, «железу», установленным в компьютере. В него включена информация, поставляемая энумератором и диспетчером конфигурации и записанная в разделе HKEY_LOCAL_MACHINEEnum, а также данные о загруженных драйверах устройств и их параметрах (к примеру, строка инициализации модема помещается в ключе ClassModem 000Init). Вспомните, кстати, что в Enum'е были ссылки на драйвера устройств вида Driver = DiskDrive 001. Так вот это были ссылки именно на подразделы этого раздела Class, в чем нетрудно убедиться.
То есть — раздел HKEY_LOCAL_MACHINESystemCurrent ControlSet ServicesClass является основным держателем информации об устройствах компьютера, назначенных им ресурсах и загруженных для них драйверах. Именно он поставляет информацию в окно Панель управления — Система — Устройства. Раздел HKEY_LOCAL_ MACHINEEnum тесно связан с этим разделом и хранит «технические» данные для каждого устройства. В разделе HKEY_DYN_DATA располагаются данные о текущем состоянии каждого из устройств.
В разделах HKEY_LOCAL_MACHINESystemCurrentControlSetServices Class и HKEY_LOCAL_MACHINE Enum размещается информация лишь об имеющихся устройствах, об их характеристиках и назначенных ресурсах. Информация же о конкретной работе устройств, о том, исправны они или нет, находится в разделе реестра HKEY_DYN_DATA, который постоянно находится в оперативной памяти.
Остальная часть раздела HKEY_LOCAL_MACHINESystemCurrentControl SetServices содержит данные некоторых программ и особого интереса для пользователя не представляет.
В системном реестре Windows 2000/XP по сравнению с реестром Windows 9х похожую структуру имеет лишь подраздел HKEY_LOCAL_MACHINESoftware, однако настройки операционной системы, в частности, таблица соответствия имен шрифтов и их файлов, находятся не только в его подразделе MicrosoftWindows, но и в подразделе MicrosoftWindowsNT. Остальные подразделы имеют другую структуру и другое предназначение. Кроме того, к перечисленным выше местам реестра, указанные в которых программы запускаются автоматически при старте Windows, в Windows 2000/XP добавились еще параметры Userinit раздела HKEY_LOCAL_MACHINE SoftwareMicrosoftWindows NTCurrentVersionWinlogon и Load раздела HKEY_CURRENT_USERSoftwareMicrosoftWindows NTCurrentVersionWindows.
Общий модуль
HKEY_USERS — второй «реальный» раздел реестра. Он состоит из одного или двух больших подразделов. В любом случае один из них называется. Default и является разделом HKEY_CURRENT_USER для конфигурации пользователя Windows по умолчанию (если в Windows зарегистрировано несколько пользователей, то ее можно загрузить, нажав Esc при запросе пароля на входе в Windows). Если в Windows зарегистрирован один пользователь, то раздел. Default будет единственным и совпадать с HKEY_CURRENT_USER, а если нет, то в HKEY_USERS будет еще один раздел, чье имя будет совпадать с именем текущего пользователя, и именно этот раздел будет отражен в реестре еще раз под именем HKEY_CURRENT_USER.
В системном реестре Windows 2000/XP раздел HKEY_USERS тоже присутствует и выполняет ту же функцию — хранит в себе варианты раздела HKEY_CURRENT_USER для каждого из пользователей, зарегистрированных в операционной системе.
Ключи конфигурации
HKEY_CURRENT_CONFIG — это описание текущей конфигурации оборудования компьютера. Этот раздел является отражением одной из ветвей раздела HKEY_LOCAL_MACHINEConfig, в котором описаны все созданные в системе конфигурации оборудования. Сами эти конфигурации создаются с помощью диалогового окна Панель управления — Система — Конфигурации. Когда конфигурация меняется, меняется и содержимое раздела HKEY_ CURRENT_CONFIG — он начинает «отражать» уже другую ветвь раздела HKEY_LOCAL_MACHINE Config.
Назначение отдельных разделов и параметров этого ключа практического интереса не представляет, так как редактировать эти данные лучше «законным» способом — с помощью диалоговых окон. Единственным следствием из всей этой информации может быть совет восстановить реестр из резервной копии, если в результате ваших экспериментов с созданием конфигураций компьютер стал неработоспособным.
В системном реестре Windows 2000/XP этот раздел устроен совершенно по-другому, хоть и выполняет похожую функцию.
Железный ключ
HKEY_DYN_DATA — пожалуй, самый недокументированный раздел реестра. Отчасти это обьясняется тем, что данные в этом разделе создаются и корректируются автоматически. Любое вмешательство пользователя может лишь нарушить работу компьютера, — здесь нет ничего такого, что требовало бы необходимости редактирования через Редактор реестра. Интерес этот раздел представлял, скорее всего, лишь для разработчиков самой Windows на стадии ее отладки, а также, может быть, для разработчиков драйверов различных устройств компьютера. Но, так как уж он присутствует в системном реестре, то и программа regedit.exe его отображает.
В отличие от всех остальных разделов, содержимое которых хранится в файлах системного реестра на жестком диске и загружается в оперативную память лишь в случае необходимости его считывания или изменения, все данные HKEY_DYN_DATA при загрузке операционной системы размещаются в оперативной памяти и находятся там вплоть до завершения работы операционной системы.
В разделе HKEY_ DYN_DATA находятся два подраздела. Первый из них, HKEY_DYN_ DATAConfig Manager Enum посвящен состоянию «железа» компьютера. Если в разделе HKEY_LOCAL_MACHINESystem CurrentControlSet ServicesClass расположена информация о том, какие устройства установлены в компьютере, то в этом разделе — данные об их функционировании, о том, как они работают — исправно или нет. Информация в окне Панель управления — Система — Устройства формируется из содержимого обоих этих разделов.
Второй же раздел, PerfStats — это раздел статистики. Он связан (но не является «отражением», как, скажем, HKEY_CLASSES_ROOT) с разделом HKEY_LOCAL_MACHINESystemCurrentControlSetcontrolPerf Stats (рис. 14.16) и содержит статистическую информацию по параметрам этого раздела. Можно сказать, что в HKEY_LOCAL_ MACHINESystemCurrentControlSetControl PerfStats перечислены параметры статистики системы, а в HKEY_DYN_DATA PerfStats — их значения. Именно отсюда берет свои данные программа Системный монитор.
Рис. 14.16.