- •Оглавление
- •Аппаратная часть
- •Работа с системным реестром
- •Назначение реестра
- •Структура реестра
- •Хранение данных реестра
- •Проблема размера реестра
- •Использование редактора реестра.
- •Усовершенствования в структуре реестра
- •Администрирование реестра
- •Запуск Regedit
- •Интерфейс программы Regedit
- •Команды меню File
- •Команды меню Edit
- •Команды меню View
- •Меню Favorites
- •Резервное копирование и восстановление реестра
- •Заключение
- •Список используемой литературы
- •Приложение
Хранение данных реестра
В Windows NT/2000/XP и Windows Server 2003 элементы реестра хранятся в виде атомарной структуры. Реестр подразделяется на составные части, которые разработчики этой операционной системы назвали ульями (hives) по аналогии с ячеистой структурой пчелиного улья. Улей представляет собой дискретную совокупность ключей, вложенных ключей и параметров, берущую начало в вершине иерархии реестра. Отличие ульев от других групп ключей состоит в том, что они являются постоянными компонентами реестра. Ульи не создаются динамически при загрузке операционной системы и не удаляются при ее остановке. Таким образом, ключ HKEY_LOCAL_MACHiNE\Hardware, который строится динамически распознавателем аппаратных средств при запуске операционной системы, ульем не является.
Данные ульев реестра хранятся в файлах, которые находятся в каталогах %SystemRoot%\system32\Config и %SystemRoot'%\Profiles\%Username% (Windows NT 4.0) и %SystemRoot%\system32\Config, и %SystemDrive%\ Documents and Settings\%Username% (Windows 2000, Windows XP и Windows Server 2003).
Каждый улей реестра ассоциирован с набором стандартных файлов.
Некоторые из файлов реестра в Windows XP и Windows Server 2003 больше не используются. Это является следствием усовершенствований, внесенных в их реестр.
Все файлы ульев реестра, за исключением HKEY_CURRENT_USER, находятся в подкаталоге %SystemRoot%\system32\config.
Поддержку улья HKEY_CURRENT_USER выполняют файлы Ntuser.dat и Ntuser.dat.log. В файлах Ntuser.dat хранятся пользовательские профили; файл Ntuser.dat.log отслеживает изменения, которые вносились в файл Ntuser.dat. В Windows NT 4.0 эти файлы располагаются во всех подкаталогах каталога %SystemRoot%\Profiles. В Windows 2000/XP и Windows Server 2003 эти файлы располагаются в каталогах %SystemRoot%\Documents and Settings\ % Username%.
Файлы Ntuser и Userdiff были впервые введены в Windows NT 4.0:
файл Ntuser.dat, в котором хранится пользовательский профиль, заменил собой файлы usernamejcet и admiruco: из предыдущих версий Windows NT;
файл Ntuser.dat из каталога %SystemRoot%\Profiles\DefaultUser заменил собой файл Userdef из предыдущих версий Windows NT. Этот профиль используется для построения улья HKEY_CURRENT_USER, когда новый пользователь впервые регистрируется в системе;
файлы UserdifF, которые находятся только в каталоге %SystemRoot% \system32\config, не ассоциируются ни с одним ульем. Они служат для обновления существующих профилей пользователей, использовавшихся в предыдущих версиях Windows NT, таким образом, чтобы эти профили могли применяться в Windows NT 4.0 и последующих.
Проблема размера реестра
Одним из основных недостатков INI-файлов, использовавшихся для управления конфигурацией системы и приложений до введения реестра, являлась проблема, вызванная ограничением по размеру файла Win.ini, использовавшегося в ранних версиях Windows для хранения параметров настройки всех установленных в системе приложений. Каждое вновь устанавливаемое приложение вносило свои параметры в этот файл, вследствие чего он очень быстро рос. Когда размер файла Win.ini превышал установленное ограничение (не более 64 Кбайт), добавление новых записей в его состав создавало проблему, поскольку все дальнейшие изменения, вносимые в последние разделы этого файла (за пределами инициализационной границы), игнорировались.
Казалось, что с введением концепции реестра эта проблема была решена. Однако реестр, при всей своей прогрессивности, все же остался ограниченным по объему. Поэтому проблема снова начала возникать с появлением приложений, интенсивно использующих реестр. При установке в системе таких приложений значительный объем нерезидентного пула поглощался реестром, оставляя слишком малый объем адресного пространства для других приложений, работающих в режиме ядра. В Windows NT/2000 для решения этой проблемы применяется ограничение по размеру реестра, т. е. существует возможность установить ограничение на размер, до которого может разрастаться реестр.
В отличие от Windows NT/2000, в Windows XP и Windows Server 2003 ограничение по размеру реестра практически снято. Код реестра был переработан таким образом, чтобы переместить реестр из нерезидентного пула и передать управление им диспетчеру кэша. Эта новая реализация позволяет реестру разрастаться до больших размеров, нежели в предыдущих версиях, и фактически ограничивает его размеры только объемом доступного дискового пространства. Таким образом, ни в Windows XP, ни в Windows Server 2003 вы больше не найдете опции, позволяющей задать ограничение по размеру реестра.
