Реестр Windows

Автор работы: Пользователь скрыл имя, 19 Февраля 2011 в 17:55, реферат

Описание работы

Согласно словарю Microsoft Computer Dictionary, реестр – это иерархически построенная, централизованная база данных в составе операционных систем Microsoft Windows 9x/NT/2000/XP/2003/Vista, содержащая сведения, которые используются операционной системой для работы с пользователями, программными продуктами и устройствами.
Системный реестр заменяет собой большинство текстовых ini-файлов, которые использовались в Windows 3.x, а также файлы конфигурации MS-DOS (например, Autoexec.bat и Config.sys).

Содержание работы

Введение……………………………………………………………………………………………..........3
1.История системного реестра Windows 4
2.Редактор реестра RegEdit.exe 7
3.Структура системного реестра Windows 9
4.Типы данных системного реестра Windows 13
5.Расположение системного реестра Windows 17
6.Структура reg-файлов в ОС семейства Windows 22
Заключение……………………………………………………………………………………............25
Библиографический список……………………………………………………………….......26

Файлы: 1 файл

реестр Windows.docx

— 297.37 Кб (Скачать файл)

Ко второму компоненту в системе иерархии реестра относятся разделы, или ключи реестра (keys).

В Windows XP не существует универсального стандарта для обозначения  ключей реестра, поэтому имена для  них назначались разработчиками согласно типам данных, которые расположены  в ключе. Работать с ключами можно  в программе Редактор реестра (RegEdit), где они отображаются в виде подпапок ветвей HKEY_, как показано рисунке ниже.

Строго говоря, ограничений, которые соотносят  с ключами конкретный тип данных, попросту не существует. Поэтому ключи  в архитектуре реестра используются лишь для того, чтобы упростить  доступ к информации и предоставляют  собой, фактически, просто средством  для упорядочивания больших массивов данных реестра.

По своему функциональному  предназначению ключи реестра разделяются  на две следующие категории:

  • Указываются системой. Имена ключей выбираются ОС, их изменение может сделать Windows XP полностью неработоспособной.
  • Указываются пользователем. Имена ключей может изменять администратор компьютера, и такие модификации не станут причиной каких-либо фатальных проблем.

Ступенькой ниже в структурной иерархии реестра  расположены подразделы реестра (subkeys). Подразделы также прямо не связаны с какими-либо типами данных и не используются в рамках каких-либо соглашений, которые ограничивают присвоение им названий. Наравне с именами ключей, названия подразделов определяются как ОС, так и пользователем, причем в первом случае их модификация может стать причиной проблем в работе Windows, а во втором — нет.

Финальная ступень  в архитектуре системного реестра  называется параметром (values). Это компонент реестра, содержащий непосредственно сами данные, которые обуславливают работу ОС и всего компьютера. Параметры, фактически, являются цепочкой «имя параметра — значение параметра» и различаются по типу содержащейся в качестве их значений информации. 
 
 

    1. Типы  данных системного реестра  Windows

Итак, конечным элементом дерева реестра являются параметры.

Все параметры  реестра имеют фиксированный  тип. В табл.1 приведен полный список используемых типов. Не все из них  используются в разных версиях Windows. Например, REG_QWORD явно предназначен для 64-битной версии XP. Кроме того, сохраняется  преемственность поколений Windows –  в более поздних версиях используются все типы ранних версий. Также следует  учесть, что ряд типов используется только системой в некоторых разделах, и создать свой параметр такого типа с помощью редактора реестра  не получится. 

      Таблица 1

      Типы  параметров

№ п/п Тип данных Описание
Windows 9x
  REG_BINARY Двоичные данные. Большинство сведений об аппаратных компонентах хранится в виде двоичных данных и выводится в редакторе  реестра в шестнадцатеричном  формате. Максимальная длина такого ключа 16Кб.
  REG_DWORD Данные, представленные целым числом (4 байта). Многие параметры  служб и драйверов устройств  имеют этот тип и отображаются в двоичном, шестнадцатеричном или  десятичном форматах
  REG_SZ Текстовая строка фиксированной длины (например, "C:\Windows")
Windows XP
  REG_EXPAND_SZ Строка Unicode переменной длины. Этот тип данных включает переменные, обрабатываемые программой или службой
  REG_MULTI_SZ Многострочный текст Unicode. Этот тип, как правило, имеют  списки и другие записи в формате, удобном для чтения. Записи разделяются  пробелами, запятыми или другими  символами
  REG_DWORD_LITTLE_ENDIAN 32-разрядное  число в формате “остроконечников”  — младший байт хранится первым  в памяти. Эквивалент REG_DWORD
  REG_DWORD_BIG_ENDIAN 32-разрядное  число в формате “тупоконечников”  — старший байт хранится первым  в памяти
  REG_LINK Символическая ссылка Unicode. Только для внутреннего  использования (некоторые корневые разделы являются такой ссылкой  на другие подразделы)
  REG_NONE Параметр не имеет определенного типа данных
Windows XP (только в разделе HKLM\HARDWARE)
  REG_RESOURCE_LIST Список аппаратных ресурсов.
  REG_FULL_RESOURCE_DESCRIPTOR Дескриптор (описатель) аппаратного ресурса.
  REG_RESOURCE_REQUIREMENTS_LIST Список необходимых  аппаратных ресурсов.
Windows Vista
  REG_QWORD 64-разрядное  число
  REG_QWORD_LITTLE_ENDIAN 64-разрядное  число в формате “остроконечников”.  Эквивалент REG_QWORD
 
 

      Ограничения на имена ключей

Имена ключей не могут содержать:

      обратные  слеши (\),

      пробелы ( ),

      звездочки ( * )

      вопросительные  знаки (?).

Имя ключа  не должно совпадать с именами  ключей, располагающихся выше него по иерархии.

Имеется три типа системных элементов  реестра, каждый из которых является корневым и имеет собственную  иерархию:

      TypeLib,

      Interface,

      CLSID.

      1. Иерархия TypeLib идентифицирует положение  инсталлированных в данный момент  библиотек типов, которые являются  базами данных, описывающими содержимое  компонентов OLE. Широко используемая  для поддержки автоматизации  библиотека типов описывает прототипы  функций для всех поддерживаемых  интерфейсов, а также включает  в себя ссылки на файлы-подсказки,  и поэтому инструменты разработки  могут вызвать соответствующую  страницу подсказки и помочь  создателям макрокоманд правильно  воспользоваться серверами автоматизации.

      2. Иерархия Interface содержит список, отсортированный  по идентификаторам интерфейса, всех инсталлированных в системе  интерфейсов. Это дает возможность  прочитать имя интерфейса (IUnknown, IMalloc и т. д.) и подробности о  каждом интерфейсе (количество функций  в каждом интерфейсе и его  базовый класс).

      3. Иерархия CLSID детализирует все инсталлированные  в данный момент (открытые) компоненты OLE. CLSID — это идентификатор класса. CLSID обеспечивает связь между  компонентами. Соединение с конкретным  интерфейсом конкретного компонента  требует сначала идентифицировать  CLSID для доступа к компоненту, а затем IID для получения желаемого интерфейса. Так же, как и идентификаторы интерфейсов (типы данных IID и REFIID), идентификаторы классов (типы данных CLSID и REFCLSID) являются 128-разрядными (16 шестнадцатеричных цифр) числами, обеспечивающими машинный способ точной идентификации класса компонента. Также, как тип IID, CLSID имеет тип GUID:

      typedef struct_GUID

      { DWORD Data1;

      WORD Data2 ;

      WORD Data3;

      BYTE Data4[8];

      }GUID;

Из этих трех типов элементов самым важным является элемент идентификатор  класса, поскольку детали модуля компонента (файл с расширением .DLL или .EXE) хранятся в иерархии CLSID.

Например, следующий элемент реестра делает доступным компонент библиотеки PUBMEM:

      HKEY_CLASSES_ROOT\CLSID\

      {308D0430 – 1090 – 11cf – B92A – 00AA006238F8}\

      InprocServer32 = C:\PETZOLD\CHAP20\PUBMEM.DLL

InprocServer32 означает, что файл, на который  ссылаются, является 32-разрядным  файлом с расширением .DLL. 
 
 
 
 
 
 

    1. Расположение  системного реестра  Windows

Ранее была рассмотрена логическая структура  реестра, но существует ещё и физическая структура, сохраняющая различные  части реестра в отдельных  файлах. Хранение реестров разных версий Windows имеют различия.

В Windows ХР реестр содержится в двух файлах SYSTEM.DAT и USER.DAT, находящиеся в каталоге Windows. В Windows Me был добавлен еще один файл CLASSES.DAT.

В качестве примера  рассмотрим физическую структуру Windows XP.  Элементы реестра хранятся в виде атомарной структуры. Реестр разделяется на составные части, называемые ульями (hives), или кустами. Ульи хранятся на диске в виде файлов (табл.2). Некоторые ульи, такие, как HKLM\HARDWARE, не сохраняются в файлах. Они записываются в память компьютера в процессе его загрузки и удаляются сразу после отключения питания. Такие разделы реестра называются изменяемыми (vola-tile). В практическом плане это значит, что они управляются ОС в рамках одного сеанса, т.е. начиная с момента загрузки Windows и до завершения работы с ней. Примером такого энергозависимого раздела можно считать ветвь HKEY_LOCAL_MACHINE\HARDWARE, в которой расположены данные о подключенном к компьютеру оборудовании и назначенных различным устройствам ресурсах. К таким ресурсам относятся, в частности, запросы на прерывание (IRQ), каналы прямого доступа к памяти (DMA) и диапазоны ввода-вывода (I/O Range).

Поскольку такие  операции, как опрос, инициализация  устройств и динамическое распределение  ресурсов осуществляются непосредственно  в ходе загрузки Windows XP, все данные такого типа содержатся в памяти компьютера, поскольку следующем запуске  системы комплект оборудования может  оказаться совсем иным.

Другие компоненты реестра, содержащие данные об основной конфигурации ОС, ее настройках и параметрах, расположены в папке %systemroot%\System32\Config.

Файлы, которые  хранят данные о профилях пользователей Windows XP, расположены в папке %systemroot%\Profiles.

Что же касается данных, связанных с индивидуальными  настройками системы для каждого  пользователя, а также об их персональной конфигурации среды Windows, они хранятся в папках %Drive%\Documents and Settings\%UserName%, где %Drive% — имя раздела диска, на котором установлена Windows XP. В свою очередь, a %UserName% — папка, в качестве названия которой используется имя зарегистрированного в системе пользователя.

Дополнительная  информация о локальных пользователях Windows по умолчанию предоставлена  в папке %Drive%\Documents and Settings\LocalService, а сведения о настройках системы для удаленных пользователей — в папке %Drive%\Documents and Settings\NetworkService.

При запуске  системы реестр собирается из ульев в единую древовидную структуру с корневыми разделами. 
 
 
 
 
 
 
 
 

Таблица 2

Ульи  реестра

Улей Расположение
HKLM\SYSTEM %SystemRoot%\system32\config\system
HKLM\SAM %SystemRoot%\system32\config\SAM
HKLM\SECURITY %SystemRoot%\system32\config\SECURITY
HKLM\SOFTWARE %SystemRoot%\system32\config\software
HKLM\HARDWARE Изменяемый  улей
HKLM\SYSTEM\Clone Изменяемый  улей
HKU\<SID_пользователя> %USERPROFILE%\ntuser.dat
HKU\<SID_пользователя>_Classes %USERPROFILE%\Local Settings\Application Data\Microsoft\Windows\UsrClass.dat
HKU\.DEFAULT %SystemRoot%\system32\config\default
 

Кроме этих файлов, есть ряд вспомогательных, со следующими расширениями:

ALT —  резервная копия улья HKLM\SYSTEM для  Windows 2000 (отсутствует в XP).

LOG —  журнал транзакций, в котором  регистрируются все изменения  реестра.

Информация о работе Реестр Windows