Предыдущий раздел | Оглавление | Следующий раздел |
2.2. СИСТЕМНЫЙ РЕЕСТР WINDOWS
При каждой загрузке системы Windows для получения информации об особенностях конфигурации пространства имен NT к данному пространству имен подключается файловая система особого типа, которая оптимизирована для небольших файлов и называется реестром. Реестр организован в виде отдельных разделов, каждый из которых хранится в отдельном файле. При загрузке Windows раздел SYSTEM загружается в память с помощью той же самой программы загрузки, загружающей и ядро системы, и другие необходимые файлы (например, загрузочные драйверы).
В разделе SYSTEM содержится большое количество важной информации о соответствиях драйверов и конкретных устройств, программном обеспечении, требующем автозагрузки, множестве других параметров, которые управляют работой операционной системы. Для определения загрузочных драйверов файловых систем и дисков, на которых содержится операционная система, сама программа загрузки пользуется информацией, находящейся в системном реестре. В табл. 2.2 представлен список используемых в системе разделов.
Файл раздела | Имя после монтирования | Применение |
---|---|---|
STEM | HKLM \SYSTEM | Информация о конфигурации операционной системы (используется ядром) |
HARDWARE | HKLM \HARDWARE | Раздел в памяти, в котором записано обнаруженное оборудование |
BCD | HKLM \BCD* | База данных конфигурации загрузки |
SAM | HKLM\SAM | Информация об учетных записях локальных пользователей |
SECURITY | HKLM\SECURITY | Информация службы lsass об учетных записях и прочая информация безопасности |
DEFAULT | HKEY_USERS\DEFAULT | Раздел по умолчанию для новых пользователей |
NTUSER.DAT | HKEY_USERS |
Раздел для пользователей, хранится в домашнем каталоге |
SOFTWARE | HKLM \SOFTTWARE | Зарегистрированные в СОМ классы приложений |
COMPONENTS | HKLM \COMPONENTS | Манифесты и зависимости для компонентов системы |
В Windows имеется программа для изучения и редактирования системного реестра. Программа называется regedit. Она имеет удобный графический интерфейс, который позволяет открывать каталоги реестра, которые называются ключами реестра, и элементы данных, которые, в свою очередь, называются значениями ключей реестра. Использовать программу regedit необходимо с полной осторожностью, так как необдуманное изменение значений ключей реестра может повредить установленные приложения и даже привести к трудностям при загрузки системы, вплоть до отказа загрузки. Системный реестр остается одним из слабых мест операционной системы Windows.
Для разработчиков, использующих Win32 API, доступны вызовы для работы с системным реестром, например, вызовы для создания и удаления ключей, поиска значений в ключах и т. д. Основные вызовы представлены в табл. 2.3.
Функция Win32 API | Описание |
---|---|
RegCreateKeyEx | Создать новый ключ реестра |
RegDeleteKey | Удалить ключ реестра |
RegOpenKeyEx | Открыть ключ, чтобы получить его описатель |
RegEnumKeyEx | Перечислить подключи того ключа, описатель которого задан |
RegQueryValueEx | Поиск значения в ключе |
При завершении работы системы данные реестра сохраняются на диске. Так как целостность этих данных критична для работоспособности системы, система выполняет резервное копирование всех данных на диск (чтобы избежать повреждения при отказе системы). Потеря или повреждение системного реестра может привести к необходимости повторной установки как прикладного, так и системного программного обеспечения.
Предыдущий раздел | Оглавление | Следующий раздел |