Реестр Windows для начинающих. Базовые понятия, мониторинг и уход. Что такое реестр Windows

Программное обеспечение становится все сложнее, а его функциональность все более гибкой и сложной. В Microsoft Windows настройка осуществляется через реестр - механизм, упрощающий хранение параметров приложений и служебных программ. Реестр - это централизованная иерархическая база данных, состоящая из нескольких файлов (для программистов, работающих с ним, он представляется как единая база данных) и обладающая следующими возможностями:

    Иерархическая организация данных приложения позволяет сохранять свои параметры произвольным образом;

    Поддерживает многопользовательскую работу, он разделен на две части, в одной из которых хранятся параметры локального компьютера (HKEY_LOCAL_MACHINE), а в другой - пользовательские параметры (HKEY_USERS);

    Ограничение доступа к любым разделом реестра;

    Хранение данные разных типов, в том числе двоичных DWORD, строк и мультистрок.

Реестр - ограниченный совместно используемый системный ресурс, в pаботе с которым нужно придерживаться определенных правил этикета (или соглашений), многие из них накладываются самой системой.

В основе системного реестра лежит иерархия разделов (ключей) и значений. Разделы (ключи реестра) могут состоять из произвольного числа подразделов (подключей) значений. В свою очередь подразделы обладают такими же правами и могут включать в себя сколько угодно значений и новых подразделов. Названия раз­делов одного уровня должны различаться, кроме того, в них не должна вхо­дить обратная косая черта. Для просмотра реестра можно использовать стандартную программу regedit.exe. Она позволяет просматривать и модифицировать ключи и их значения.

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

Физически, реестр состоит из нескольких расположенных на жестком диске пользователя файлов. Файл, в котором хранится нужный про­граммисту раздел реестра, определяет ОС, она же и осуществляет доступ к нужному файлу.

Реестр Windows 2000 состоит из пяти предопределенных корневых разделов и одного предопределенного - для хранения данных о производительности системы (HKEY_PERFORMANCE_DATA). Этот предопределенный раздел содержит данные о производительности, передаваемые ему системой, службами и приложениями. Он не содержит опреде­ленных физических значений, скорее наоборот, фун­кции реестра предоставляют метод динамического по­лучения информации о производительности системы. Доступа к нему из программы Regedit нет. Раздел HKEY_DYN_DATA указывает на ту часть раздела HKEY_LOCAL_ MACHINE, которая нужна для Plug & Play устройств. При добавлении или удалении устройств из системы этот раздел изменяется.

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

Все подразделы реестра входят в раздел HKEY_LOCAL_MACHINE либо HKEY_USERS. Такая структура реестра обусловлена необходимостью хранения информации о параметрах, специфич­ных для компьютера, с одной стороны, и о параметрах, специфичных для пользователя, с другой. Остальные три предопределенных раздела - это вир­туальные закладки для частей разделов HKEY_LOCAL_MACHINE и HKEY_USERS. Так, данные подраздела HKEY_LOCAL_MACHINE\Software\Classes можно обна­ружить в разделе HKEY_CLASSES_ROOT.

Как и названия разделов, названия переменных одного подраздела долж­ны различаться. Единственное исключение из этого правила - значение по умолчанию (default), не имеющее названия. Наличие значений, в том числе и значения по умолчанию, в разделе необязательно, так что в нем могут содер­жаться несколько, только одно или вообще ни одного значения.

Таблица 6.1 . Предопределенные разделы системного реестра Windows 2000

Название раздела

Описание

HKEY_LOCAL_MACHINE

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

Набор данных, применяемых при работе определен­ного пользователя. Этот раздел содержит информа­цию для пользователя по умолчанию и для пользова­теля с загруженным в данный момент профилем.

HKEY_CURRENT_USER

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

HKEY_CLASSES_ROOT

Включает все типы соответствий файлов, а также информацию об OLE и ярлыках и содержит сведения о зарегистрированных СОМ-компонентах и связанных с оболочкой (shell) ассоциациях.

HKEY_CURRENT_CONFIG

Определенная системой закладка, или псевдоним, для HKEY_LOCAL_MACHINE\System\CurrentControlSet\Hardware Profiles\Current название которого соответствует имени пользователя, работающего в данный момент. Здесь хранятся сведения о конфигура­ции оборудования.

Реестр Windows является одной из самых загадочных частей операционной системы, которая позволяет настраивать и модифицировать почти все аспекты Windows. Некоторые работают с реестром постоянно, но большинство людей имеют о нем лишь слабое представление и не совсем уверены, как создавать пользовательские разделы и параметры. Итак, давайте попробуем разобраться, что же такое реестр Windows.

Что такое реестр Windows

Реестр Windows – это не что иное, как совокупность различных конфигураций и настроек системы.

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

Компоненты реестра Windows

Реестр Windows 10 состоит из трех основных компонентов – ключи корневого уровня, разделы и параметры.

Ключи корневого уровня содержат в себе разделы, которые имеют свой собственный набор параметров.

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

  • HKEY_CLASSES_ROOT (HKCR): этот ключ используется для связывания и внедрения объектов (Object Linking and Embedding, OLE) и ассоциации типов файлов. Это ключ, где Windows связывает файлы с их соответствующими программами, чтобы пользователь мог открывать и взаимодействовать с ними.
  • HKEY_ CURRENT_ USER (HKCU): этот раздел реестра Виндовс хранит все данные, настройки на уровне пользователя и конфигурации, связанные с вошедшим в систему пользователем. Не только Windows, но и другие программы хранят здесь данные, относящиеся к текущему пользователю.
  • HKEY_LOCAL_MACHINE (HKLM): независимо от статуса пользователя, этот ключ содержит все системные разделы, в том числе любые аппаратные настройки, параметры программного обеспечения и т.д. Поскольку HKLM содержит большую часть всей системной информации, он является одним из самых открытых корневых ключей Windows.
  • HKEY_USERS (HKU): как следует из названия, этот корневой ключ содержит параметры всех пользователей, включая вошедших и вышедших из системы, так что не путайте этот ключ с HKCU.
  • HKEY_CURRENT_CONFIG (HKCC): проще говоря, это псевдо корневой ключ, поскольку он является прямой ссылкой на текущие параметры профиля оборудования в корневом ключе HKLM.
Параметры разделов

Каждый из этих корневых ключей имеет свои собственные разделы, а каждый раздел имеет свои собственные параметры. В каждом разделе можно создать 6 различных типов параметров, а значения этих параметров полностью зависят от целевой программы и/или требований к конфигурации.

А вообще есть четыре основных типа данных, используемых в редакторе реестра Windows любой версии - 7,8 или 10:

  • Строковый параметр: состоит из простого читаемого текста и является одним из наиболее часто используемых параметров в реестре Windows.
  • Двоичный параметр: как следует из названия, этот параметр содержит только двоичные данные (0, 1). Часто используется для включения или выключения определенной функции.
  • Параметр DWORD (32 бита): похож на двоичный параметр, но способен хранить любое целое число в диапазоне от 32 бит. Предназначен для работы с 32-битными системами, но также используется в 64-битных системах в целях обеспечения обратной совместимости.
  • Параметр QWORD (64 бита): этот параметр почти как DWORD, но способен нести любое целое число в диапазоне от 64 бит. Можно сказать, что QWORD предназначен для работы с 64-битными системами.
Как открыть редактор реестра Windows

Этот способ открытия реестра будет работать независимо от установленной версии Windows - 7,8 или 10:

Нажмите клавишу + клавишу R, чтобы открыть окно «Выполнить». Введите или и нажмите Enter или OK. Если появится окно контроля учетных записей (UAC), нажмите «Да».

Основной исполняемый файл редактора реестра находится в каталоге C:\Windows . Так что можно открыть эту папку и запустить файл regedit.exe напрямую, или можно просто создать ярлык regedit.exe в удобном для вас месте.

Редактор реестра: для 64-разрядных и 32-разрядных Windows

Реестр в 64-битных версиях Windows состоит из 32-битных и 64-битных разделов. Многие из 32-битных разделов имеют те же самые названия, что и их 64-битные аналоги, и наоборот.

64-разрядная версия (используется по умолчанию) (regedit.exe) отображает как 64-битные, так и 32-битные разделы. В 64-разрядной версии редактора реестра 32-битные ключи отображаются в следующем разделе реестра:

HKEY_LOCAL_MACHINE\Software\WOW6432Node

Просматривать и редактировать 64-битные и 32-битные разделы и параметры можно с помощью 64-разрядной версии редактора. Для просмотра или редактирования 64-битных ключей необходимо использовать 64-разрядную версию редактора реестра (regedit.exe). Редактировать и просматривать 32-битные ключи и значения можно также с помощью 32-разрядной версии (%systemroot\%Syswow64). Чтобы открыть 32-разрядную версию редактора реестра, выполните следующие действия:

  • Откройте диалог «Выполнить».
  • Введите %systemroot%\syswow64\regedit и нажмите OK.

Примечание

Перед открытием 32-разрядной версии нужно закрыть 64-разрядную версию редактора реестра (и наоборот). Однако можно открыть второй экземпляр редактора реестра. Например, если 64-битная версия редактора уже запущена, введите команду %systemroot%\syswow64\regedit -m , чтобы запустить 32-разрядную версию редактора.

Создание новых разделов и параметров

Создавать разделы и параметры очень просто. Но прежде чем что-либо делать, пожалуйста, создайте резервную копию реестра Windows, так как любые неверные настройки или удаление важных элементов может стать причиной критических ошибок.

Чтобы создать резервную копию, в окне редактора нажмите «Файл -> Экспорт», введите имя файла и сохраните его в надежном месте.

Чтобы создать новый раздел, щелкните правой кнопкой мыши на ключе корневого уровня и выберите «Создать -> Раздел». Новый раздел будет выглядеть как папка, и по умолчанию будет называться что-то вроде «Новый раздел #1». Разумеется, раздел можно всегда переименовать. Такая же процедура применяется всякий раз, когда нужно создать новый подраздел.

Чтобы создать новый параметр, щелкните правой кнопкой мыши в пустой области правой панели редактора и выберите нужный параметр. Созданному параметру нужно присвоить название; название полностью зависит от конкретных требований.

Чтобы присвоить параметру значение, дважды щелкните на нем и введите значение. Опять же, значение зависит от программы или конкретных настроек.

Права доступа к разделам реестра

По аналогии с правами и разрешениями на определенные объекты в файловой системе NTFS, такая же защита предусмотрена и для разделов реестра.

Еще со времен Windows Vista большое количество ОС-специфических ключей реестра, хранящих настройки Windows, находятся под защитой Windows Resource Protection, поэтому нельзя просто взять и удалить или изменить их. Вы не сможете сделать этого, не став их владельцем и не установив разрешения (права доступа) на них. К счастью, операционная система позволяет и это, но ручной способ чересчур муторный, поэтому лучше использовать простую утилиту , которая автоматизирует весь этот процесс.

На этом все! Надеюсь, написанное выше помогло вам лучше понять реестр Windows и его основные компоненты. Обменивайтесь мнениями и опытом в комментариях ниже!

Отличного Вам дня!


Многие пользователи сталкиваются с терминами «очистить реестр », «удалить с реестра», «резервная копия реестра», «системный реестр» и т. д., но значительная часть из них даже не догадывается, что такое этот реестр. В данной статье рассмотрим, что собой представляет системный реестр, зачем его нужно чистить и как с ним работать.

Реестр Windows, что это?

Реестр, системный реестр, реестр Windows – это огромная и в то же время основная иерархическая база данных операционных систем семейства Windows, впервые появившаяся в далеком 1992-м году в Windows 3.1. Он представляет собой несколько хранящихся в системных каталогах файлов, таких как ServiceProfiles, %USERPROFILE%, System32config. Он возник как замена ini-файлам, в которых до этого хранилась конфигурация системы. Это значительно увеличило скорость доступа к системным данным.

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

Зачем чистить реестр и оптимизировать его?

Как было отмечено, в реестре находится информация фактически обо всех компонентах системы и их настройках, а представляет он собой более десятка защищенных системных файлов. Исходя из этого, файлы системной базы данных, как и любые другие, подвержены расфрагментации (когда сектора, хранящие один документ, разбросаны по поверхности диска, вместо того, чтобы находиться по соседству), из-за чего увеличивается время доступа к реестру. Поэтому он нуждается в периодической дефрагментации. Только дефрагментировать системные файлы обычным способом не получится, так как они постоянно используются Windows. Для этого разработана масса специальных утилит – дефрагментаторов и твикеров.

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

Структура реестра

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

Системный реестр Windows - ветви
  • HKEY_CLASSES_ROOT (HKCR) – ветка хранит данные обо всех зарегистрированных в операционной системе расширениях файлов, их ассоциациях с программами, а также о компонентах ActiveX и COM.
  • HKEY_CURRENT_USER (HKCU) – здесь хранится конфигурация аккаунта текущего пользователя.
  • HKEY_LOCAL_MACHINE (HKLM) – данные об аппаратных компонентах компьютера, их драйверах, режимах функционирования и сведения о загрузке ОС Windows.
  • HKEY_USERS (HKU) – хранит все данные обо всех учетных записях пользователей этого компьютера.
  • HKEY_CURRENT_CONFIG (HKCC) – здесь содержатся данные об оборудовании, используемом для включения компьютера.

Как запустить программу для работы с реестром?

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

Как открыть реестр Windows? 1-й способ
  • Вызываем диалоговое окно «Выполнить» посредством комбинации «Win + R».
  • Пишем «regedit» в текстовую форму и кликаем «Ок».
  • 2-й способ
  • Вызываем «Пуск» и вписываем команду запуска редактора реестра «regedit» в поисковую строку.
  • В результатах поиска кликаем по «regedit.exe» для запуска системной утилиты.
  • Работаем с записями системного реестра посредством стандартного редактора реестра

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

    В каждой ее ветке находится большое число подразделов, которые открываются нажатием на треугольник, двойным кликом по названию раздела/подраздела или кликом по кнопке «®» - курсор вправо на клавиатуре.

    Пользователю доступны следующие возможности по работе с системным реестром:

    • экспорт и импорт как целых веток, так и отдельных их разделов и записей (ключей);
    • перенос любых подразделов реестра на бумагу в виде текстовой информации;
    • создание, удаление, переименование ключей и веток;
    • поиск любой информации в реестре.

    Все действия выполняются через два пункта главного меню («Файл» и «Правка») редактора реестра после выделения необходимого ключа или подраздела, а также через их контекстное меню, что вызывается кликом правой клавиши мыши по объекту.

    Работа с реестром через стандартную программу мало чем отличается от работы с данными файловой системы вашего жесткого диска за несколькими исключениями, одно из которых - невозможность работать с несколькими объектами одновременно. Да и вид системной базы данных в виде дерева будет непривычным многим пользователям. Кнопка F2 все также отвечает за переименование, Delete – удаление веток и ключей реестра

    Важно! Перед совершением каких-либо действий с реестром обязательно создайте резервную копию ветки или раздела, в который намереваетесь вносить изменения.

    Создание резервное копии раздела или ветки:

    Вызываем контекстное меню изменяемой ветки и выбираем «Экспортировать» или же выделяем ветку, вызываем пункт меню «Файл» и кликаем «Экспорт…».

    Задаем путь и имя выходящего файла.


    Если у Вас остались вопросы по теме «
    Что такое реестр и как с ним работать?», то можете задать их в комментариях

    Как создать учетную запись Apple id на iPhone, iPad или iPod touch?

    В первую очередь откройте App Store, iTunes Store или iBooks и выберите любую бесплатную программу. Теперь ряд с выбранным объектом нажмите GET. Затем нажмите ее еще раз, чтобы загрузить объект. Нажимаем «Создать новый Apple ID». Следуйте дальнейшим инструкциям. Нажмите «Нет», когда вас попросят указать платежные реквизиты. После ввода информации вас попросят подтвердить ваш идентификатор Apple ID по электронной почте. Перед использованием идентификатора Apple ID нужно сначала подтвердить его.

    • Return to the previous step
    • Restart the F.A.Q
    • Спросить

    Спасибо! Мы постараемся ответить в ближайшее время


    if(function_exists("the_ratings")) { the_ratings(); } ?>

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

    Да, есть уже готовые Reg -файлы (файлы с расширением имя.reg), которые служат для экспорта и импорта данных реестра путем простого двойного щелчка мышью по нему. По умолчанию для файлов с расширением.reg установлена команда внесения их содержимого в реестр. Выполнены они в текстовом формате. Их можно просматривать и редактировать в блокноте или другом текстовом редакторе.

    Но бывают же ситуации когда такого готового файла нет или есть необходимость посмотреть некоторые параметры реестра. Вот тогда и возникает куча малая вопросов:

    Что такое реестр?

    Где его искать?

    Как в него войти?

    и в конце-концов

    Давайте попробуй вместе разобраться в этих вопросах.

    Сразу – это не подробная характеристика реестра с подробным описанием каждого параметра. Для этого существуют целые талмуды, как в печатном виде, так и в электронном.

    Что такое реестр?

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

    Реестр содержит данные, к которым Windows XP постоянно обращается во время загрузки, работы и ее завершения, а именно:

    • профили всех пользователей, то есть их настройки;
    • конфигурация оборудования, установленного в операционной системе;
    • данные об установленных программах и типах документов, создаваемых каждой программой;
    • свойства папок и значков программ;
    • данные об используемых портах.

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

    Как в него войти?

    Для работы с реестром используется простая и понятная утилита Regedit, знакомая еще со времен Windows 3.1.

    Что бы открыть системный реестр вам необходимо проделать следующее: нажать Пуск –> выбрать Выполнить… –> в поле Открыть… введите regedit –> нажмите ОК .

    Откроется окно утилиты Regedit с наименованием разделов.

    Разделы и подразделы – это, грубо говоря, папки в левом окне Regedit’а. Ключ реестра, или параметр – это некая переменная, которой присвоено определенное значение, проще говоря – это то, что мы видим в правом окне Regedit’а.

    Куст (основной раздел, стандартный раздел, в английской документации – улей, от англ. hive) – это раздел реестра, отображаемый как файл на жестком диске.

    Куст является набором разделов, подчиненных разделов и параметров и имеет корни на верхнем уровне иерархии реестра. По умолчанию большинство файлов кустов (Default, SAM, Security и System) сохраняются в папке %SystemRoot%\System32\Config (например, C:\Windows\System32\Config\). Папка %SystemRoot%\Profiles содержит профили (настройки) для каждого пользователя компьютера. Поскольку куст представляет собой файл, его можно перемещать из одной системы в другую. Для редактирования этого файла необходимо использовать редактор реестра.

    Реестр Windows XP состоит из 5 основных разделов:

    HKEY_CLASSES_ROOT

    Является подразделом HKEY_LOCAL_MACHINE\Software\Classes. В этой ветви содержатся сведения о расширениях всех зарегистрированных в системе типов файлов (хранящиеся здесь сведения отвечают за запуск необходимой программы при открытии файла с помощью Проводника Windows)

    HKEY_CURRENT_USER

    Данный раздел содержит настройки текущего активного пользователя, вошедшего в систему. Здесь хранятся папки пользователя, цвета экрана и параметры панели управления. Эти сведения сопоставлены с профилем пользователя. Хотя это раздел выглядит как один из основных в редакторе реестра, он является всего лишь ссылкой на один из профилей HKEY_USERS\.

    HKEY_LOCAL_MACHINE

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

    HKEY_USERS

    Данный раздел содержит все активные загруженные профили пользователей компьютера содержит настройки для всех пользователей компьютера.

    HKEY_CURRENT_CONFIG

    Данный раздел содержит сведения о профиле оборудования, используемом локальным компьютером при запуске системы.

    Часто для обозначения основных разделов реестра пользуются сокращениями:

    HKEY_CLASSES_ROOT – HKCR
    HKEY_CURRENT_USER – HKCU
    HKEY_LOCAL_MACHINE – HKLM
    HKEY_USERS – HKU
    HKEY_CURRENT_CONFIG – HKCC

    Как изменить нужный параметр?

    Нам необходимо проверить значение параметра Shell подраздела Winlogon раздела HKEY_LOCAL_MACHINE .

    Параметр Shell в реестре размещен по пути HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon

    Рассмотрим как это необходимо сделать. Проделайте это вместе со мной и вы на практике убедитесь что в этом нет ничего сложного.

    Внимание! Перед внесением изменений в реестр целесообразно делать резервную копию всего реестра или той ветки, в которую собираетесь вносить изменения. Для этого в редакторе реестра выполните: Файл –> Экспорт… –> дать имя файлу –> Сохранить. В случаи чего вы всегда сможете восстановить предыдущие параметры реестра, через Файл –> Импорт… Или запустив на исполнение сохраненный вами файл.

    Запускаем редактор реестра: Пуск –> выбрать Выполнить… –> в поле Открыть… вводим regedit –> нажимаем ОК .

    В редакторе реестра вначале нажимаем на плюсик (или два раза кликаем по папке) возле раздела HKEY_LOCAL_MACHINE , затем на папке SOFTWARE , дальше Microsoft , и так далее, пока не доберемся до нужного нам подраздела Winlogon .

    Кликаем на подразделе Winlogon и в правой части окна редактора реестра ищем параметр Shell . Правая часть редактора реестра разделена на три колонки: Имя, Тип, Значение. Вот как раз мы и добрались к тому значению, которое нам необходимо проверить.

    В нашем конкретном примере значение параметра Shell должно быть Explorer.exe

    Если оно отличается от нужного нам, то вносим изменения. Для этого два раза кликаем левой клавишей мыши по имени Shell (или один раз правой клавишей мыши и из контекстного меню выбираем Изменить ). Откроется окно Изменение строкового параметра , где в строке Значение вносим необходимые нам изменения и нажимаем ОК.

    Закрываем редактор реестра.

    Вот и все, мы проверили параметр реестра и при необходимости внесли в него изменение.

    P.S. Очень часто, для вступления в силу изменений необходимо перезагрузить компьютер. Не забывайте об этом.

     Реестр Windows (Windows Registry - системный реестр) - это иерархическая (древовидная) база данных, содержащая записи, определяющие параметры и настройки операционных систем Microsoft Windows. Реестр в том виде, как он выглядит при просмотре редактором реестра, формируется из данных, источниками которых являются файлы реестра и информация об оборудовании, собираемая в процессе загрузки. В описании файлов реестра на английском языке используется термин "Hive" . В документации от Microsoft этот термин переводится как "Куст" .

     Основные файлы, отвечающие за формирование реестра

    Файлы реестра создаются в процессе установки операционной системы и хранятся в папке:

    %SystemRoot%\system32\config (обычно C:\windows\system32\config ).

    Для операционных систем Windows это файлы с именами:

    system
    software
    sam
    security
    default
    components
    bcd-template

    В операционных системах Windows Vista, Windows 7, Windows8, , , файлы реестра располагаются в каталоге \Windows\system32\config и имеют такие же имена, однако в этих операционных системах добавился новый раздел реестра для хранения (Boot Configuration Data ) с именем BCD00000000 . Файл с данными этого раздела имеет имя bcd и находится в скрытой папке Boot активного раздела (раздела, с которого выполняется загрузка системы). Обычно, при стандартной установке Windows, создается активный раздел небольшого размера (от 100 до 500 мегабайт в зависимости от операционной системы), который скрыт от пользователя и содержит только служебные данные для загрузки системы – загрузочные записи, менеджер загрузки bootmgr , хранилище конфигурации загрузки BCD , файлы локализации и программы тестирования памяти. Расположение куста bcd зависит от того, как сконфигурирован загрузчик системы при ее установке, и может находиться на том же разделе, где и каталог Windows.

    Место расположения файлов реестра в любой версии Windows можно просмотреть с помощью редактора реестра, в разделе:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\hivelist

    В этом разделе хранится информация о всех кустах, включая пользовательские профили, со ссылками на их расположение в файловой системе Windows.

     Структура реестра

    Реестр Windows имеет древовидную структуру и состоит из 5 основных разделов реестра:

    HKEY_LOCAL_MACHINE (HKLM) - самый большой раздел реестра. В нем сосредоточены все основные настройки операционной системы, а также аппаратного и программного обеспечения компьютера. Информация, содержащаяся в этом разделе, применяется ко всем пользователям, регистрирующимся в системе.

    HKEY_ CLASSES_ ROOT (HKCR) - содержит ассоциации между приложениями и типами файлов (по расширениям файлов). Кроме того, в этом разделе находится информация о зарегистрированных типах файлов и объектах COM и ActiveX. Кроме HKEY_ CLASSES_ ROOT эти сведения хранятся также в разделах HKEY_LOCAL_MACHINE и HKEY_CURRENT_USER . Раздел HKEY_LOCAL_MACHINE\Software\Classes содержит параметры по умолчанию, которые относятся ко всем пользователям локального компьютера. Параметры, содержащиеся в разделе HKEY_CURRENT_USER\Software\Classes , переопределяют принятые по умолчанию и относятся только к текущему пользователю. Раздел HKEY_CLASSES_ROOT включает в себя данные из обоих источников.

    HKEY_USERS (HKU) - содержит настройки среды для каждого из загруженных пользовательских профилей, а также для профиля по умолчанию. В HKEY_USERS находится вложенный раздел \Default , а также другие подразделы, определяемые идентификатором безопасности (Security ID, SID ) каждого пользователя.

     HKEY_CURRENT USER (HKCU) - cодержит настройки среды для пользователя, на данный момент зарегистрировавшегося в системе (переменные окружения, настройки рабочего стола, параметры сети, приложений и подключенных устройств).

    Этот раздел дублирует информацию в HKEY_USERS\user SID , где user SID - идентификатор безопасности пользователя, зарегистрировавшегося в системе на текущий момент (узнать SID текущего пользователя можно, набрав в командной строке whoami /user ).

    HKEY_CURRENT_ CONFIG (HKCC) - cодержит настройки для текущего аппаратного профиля. Текущий аппаратный профиль включает в себя наборы изменений, внесенных в стандартную конфигурацию устройств, заданную в подразделах Software и System корневого раздела HKEY LOCAL_MACHINE . В HKEY_CURRENT_CONFIG отражаются только изменения. Кроме того, информация этого раздела находится в HKEY_LOCAL_MACHINE\System\CurrentControlSet\HardwareProfiles\Current .

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

     Основные типы данных, применяемые в реестре

    REG_DWORD - 32-х разрядное число. Этот тип данных используют многие параметры драйверов устройств и сервисов. Редакторы реестра могут отображать эти данные в двоичном, шестнадцатеричном и десятичном формате.

    REG_SZ - Текстовая строка в формате, удобном для восприятия человеком. Значениям, представляющим собой описания компонентов, обычно присваивается именно этот тип данных.

    REG_EXPAND_SZ - Расширяемая строка данных. Эта строка представляет собой текст, содержащий переменную, которая может быть заменена при вызове со стороны приложения, например, используется для записи переменных окружения.

    REG_MULTI_SZ - Многострочное поле. Значения, которые фактически представляют собой списки текстовых строк в формате, удобном для восприятия человеком, обычно имеют этот тип данных. Строки разделены символом NULL.

    REG_BINARY - Двоичные данные. Большинство аппаратных компонентов используют информацию, которая хранится в виде двоичных данных. Редакторы реестра отображают эту информацию в шестнадцатеричном формате.

    REG_RESOURCE_LIST - Список аппаратных ресурсов. Применяется только в ветви HKEY_LOCAL_MACHINE\HARDWARE .

    Также иногда можно встретить такие типы данных реестра:

     REG_RESOURCE_ REQUIREMENTS_LIST - Список необходимых аппаратных ресурсов. Применяется только в ветви HKEY_LOCAL_MACHINE\HARDWARE .

    REG_FULL_RESOURCE_ DESCRIPTOR - Дескриптор (описатель) аппаратного ресурса. Применяется только в ветви HKEY_LOCAL_MACHINE\HARDWARE .

    REG_QWORD - 64-х разрядное число.

    REG_DWORD_ LITTLE_ENDIAN - 32-разрядное число в формате «остроконечников» (little-endian), эквивалент REG_DWORD .

    REG_DWORD_BIG_ ENDIAN - 32-разрядное число в формате «тупоконечников» (big-endian).

    REG_QWORD_LITTLE_ ENDIAN - 64-разрядное число в формате «остроконечников». Эквивалент REG_QWORD .

    REG_NONE - Параметр не имеет определенного типа данных.

     Взаимодействие реестра с операционной системой

    При запуске компьютера распознаватель аппаратных средств (hardware recognizer ) помещает в реестр список обнаруженных им устройств. Обычно распознавание аппаратных средств осуществляется программой Ntdetect.com и ядром операционной системы Ntoskrnl.exe

    При старте системы ядро системы извлекает из реестра сведения о загружаемых драйверах устройств и порядке их загрузки. Кроме того, программа Ntoskrnl.exe передает в реестр информацию о себе (напр. номер версии).

    В процессе загрузки системы драйверы устройств обмениваются с реестром параметрами загрузки и конфигурационными данными. Драйвер устройства сообщает об используемых им системных ресурсах, включая аппаратные прерывания (IRQ ) и каналы доступа к памяти (DMA ), чтобы система могла включить эти данные в реестр. Кстати, реестр позволяет создавать несколько аппаратных профилей. Аппаратный профиль (hardware profile ) представляет собой набор инструкций, с помощью которого можно указать операционной системе, драйверы каких устройств должны загружаться при запуске компьютера. По умолчанию системой создается стандартный аппаратный профиль, который содержит информацию обо всех аппаратных средствах, обнаруженных на компьютере.

    При входе пользователя в систему загружаются пользовательские профили (user profiles ). Вся информация, относящаяся к конкретному имени пользователя и связанными с ним правами хранится в реестре. Пользовательский профиль определяет индивидуальные параметры настройки системы (разрешение дисплея, параметры сетевых соединений, подключенные устройства и многое другое). Информация о пользовательских профилях также хранится в реестре.

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

    При администрировании системы. Когда пользователь вносит изменения в конфигурацию системы с помощью средств администрирования системы (например при помощи Панели управления или оснастки MMC ), все изменения сразу отражаются в системном реестре. По сути средства администрирования представляют собой наиболее удобные и безопасные средства модификации реестра. Кстати, к средствам администрирования можно отнести и редактор реестра (regedit.exe ), ведь все изменения в систему можно вносить непосредственно правкой реестра.

      ■ В процессе загрузки и функционирования операционной системы выполняется постоянное обращение к данным реестра, как для чтения, так и для записи. Файлы реестра постоянно изменяются, поскольку не только система, но и отдельные приложения могут использовать реестр для хранения собственных данных, параметров и настроек. Другими словами, обращение к реестру - это одна из наиболее распространенных операций. Даже если пользователь не работает за компьютером, обращения к реестру все равно выполняются системными службами, драйверами и приложениями.

      ■ Нарушение целостности файлов реестра (нарушение структуры данных) или неверное значение отдельных критических параметров может привести к краху системы. Поэтому, прежде чем экспериментировать с реестром, позаботьтесь о возможности его сохранения и восстановления.



    Есть вопросы?

    Сообщить об опечатке

    Текст, который будет отправлен нашим редакторам: