Что такое реестр Windows и как он работает?

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

Всякий раз, когда новая программа устанавливается в системе Windows , в (Windows)реестре(Windows Registry) Windows создается запись с такими атрибутами, как размер, версия, расположение в хранилище и т. д.

Что такое реестр Windows и как он работает

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

Что такое реестр Windows(Windows Registry) и как(How) он работает?

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

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

История реестра Windows

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

С появлением Windows 3.1 упрощенная версия этого требования была удовлетворена с помощью центральной базы данных, общей для всех приложений и системы, называемой реестром Windows(Windows Registry) .

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

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

Актуальность реестра Windows(Windows Registry) по отношению к другим операционным системам

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

Все другие операционные системы, такие как iOS, Mac OS , Android и Linux , продолжают использовать текстовые файлы как способ настройки операционной системы и изменения поведения операционной системы.

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

Чтобы обойти эту проблему, как macOS, так и iOS развернули совершенно другой подход к расширению текстового файла, реализовав расширение .plist(.plist extension) , которое содержит всю информацию о системе, а также информацию о конфигурации приложения, но все еще далеко от преимуществ наличия единого реестра. перевешивают простое изменение расширения файла.

Каковы преимущества реестра Windows(Windows Registry) ?

Поскольку каждая(Every) часть операционной системы постоянно взаимодействует с реестром Windows(Windows Registry) , она должна храниться в очень быстром хранилище. Следовательно(Hence) , эта база данных была разработана для чрезвычайно быстрого чтения и записи, а также для эффективного хранения.

Если бы мы открыли и проверили размер базы данных реестра, он обычно колебался бы между 15-20 мегабайтами, что делает его достаточно маленьким, чтобы всегда загружаться в ОЗУ(RAM) ( оперативное запоминающее устройство(Random Access Memory) ), которое, кстати, является самым быстрым хранилищем, доступным для операционная система.

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

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

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

Многопользовательские(Multi-User) сценарии очень распространены в корпоративных установках, здесь существует острая необходимость в доступе с привилегиями пользователя. Поскольку не вся информация или ресурсы могут быть доступны всем, потребность в доступе пользователей на основе конфиденциальности была легко реализована через централизованный реестр Windows. Здесь сетевой администратор оставляет за собой право отказать или разрешить в зависимости от проделанной работы. Это сделало единую базу данных универсальной, а также сделало ее надежной, поскольку обновления могут выполняться одновременно с удаленным доступом ко всем реестрам нескольких устройств в сети.

Как работает реестр Windows?

Прежде чем запачкать руки , давайте изучим основные элементы реестра Windows .(Windows Registry)

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

Вы также должны знать: (You should also know:) Как получить полный контроль или право собственности на ключи реестра Windows(How to Take Full Control or Ownership of Windows Registry Keys)

Как получить доступ к реестру Windows?

Мы можем получить доступ и настроить реестр Windows(Windows Registry) с помощью инструмента редактора реестра(Registry Editor) , Microsoft включает бесплатную утилиту редактирования реестра вместе с каждой версией своей операционной системы Windows(Windows Operating System) .

Доступ к этому редактору реестра(Registry Editor) можно получить, введя «Regedit» в командной строке(Command Prompt) или просто введя «Regedit» в поле поиска или запуска в меню « Пуск(Start) » . Этот редактор является порталом для доступа к реестру Windows и помогает нам исследовать реестр и вносить в него изменения. (Windows)Реестр — это общий термин, используемый для различных файлов базы данных, расположенных в каталоге установки Windows .

Как получить доступ к редактору реестра

запустить regedit в командной строке Shift + F10

Безопасно ли редактировать редактор реестра?(Is it Safe to edit Registry Editor?)

Если вы не знаете, что делаете, то играть с конфигурацией реестра опасно. (Registry)Всякий раз, когда вы редактируете реестр(Registry) , убедитесь, что вы следуете правильным инструкциям и меняете только то, что вам указано.

Если вы намеренно или случайно удалите что-то в реестре Windows(Windows Registry) , это может изменить конфигурацию вашей системы, что может привести либо к « синему (Death)экрану(Blue Screen) смерти» , либо к тому, что Windows не загрузится.

Поэтому обычно рекомендуется сделать резервную копию реестра Windows(backup Windows Registry) , прежде чем вносить в него какие-либо изменения. Вы также можете создать точку восстановления системы(create a system restore point) (которая автоматически создает резервную копию реестра(Registry) ), которую можно использовать, если вам когда-нибудь понадобится изменить настройки реестра(Registry) на нормальные. Но если вы только то, что вам говорят, то это не должно быть никаких проблем. Если вам нужно знать, как восстановить реестр Windows, в этом руководстве(restore Windows Registry then this tutorial) объясняется, как это сделать легко.

Давайте изучим структуру реестра Windows .(Windows Registry)

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

Эти ключи(Keys) загружаются в оперативную память(RAM) на этапе загрузки системы и постоянно передаются в течение определенного интервала времени или при возникновении определенного события или событий системного уровня.

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

Ключи, находящиеся на вершине иерархии в реестре, которая начинается с HKEY , считаются кустами.

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

Давайте изучим структуру раздела реестра Windows и его подразделов:

Пример имени ключа — «HKEY_LOCAL_MACHINESYSTEMInputBreakloc_0804»

Здесь «loc_0804» относится к подразделу «Break» относится к подразделу «Input», который относится к подразделу «SYSTEM» корневого ключа HKEY_LOCAL_MACHINE .

Общие корневые ключи в реестре Windows(Common Root Keys in Windows Registry)

Каждый из следующих ключей — это отдельный куст, который содержит больше ключей внутри ключа верхнего уровня.

я. HKEY_CLASSES_ROOT

Это куст реестра Windows(Windows Registry) , который состоит из информации об ассоциации расширений файлов, программного идентификатора(programmatic identifier) ( ProgID ), данных идентификатора интерфейса(Interface ID) ( IID ) и идентификатора класса (CLSID)(Class ID (CLSID)) .

Этот куст реестра  HKEY_CLASSES_ROOT является шлюзом для любого действия или события, происходящего в операционной системе Windows . Предположим(Suppose) , мы хотим получить доступ к некоторым файлам mp3 в папке « Загрузки(Downloads) ». Операционная система запускает свой запрос через это, чтобы предпринять необходимые действия.

В тот момент, когда вы получаете доступ к кусту HKEY_CLASSES_ROOT(HKEY_CLASSES_ROOT) , очень легко растеряться, глядя на такой огромный список файлов расширений. Однако именно эти ключи реестра обеспечивают бесперебойную работу Windows.

Ниже приведены некоторые примеры ключей реестра куста HKEY_CLASSES_ROOT .

HKEY_CLASSES_ROOT\.otf
HKEY_CLASSES_ROOT\.htc
HKEY_CLASSES_ROOT\.img
HKEY_CLASSES_ROOT\.mhtml
HKEY_CLASSES_ROOT\.png
HKEY_CLASSES_ROOT\.dll

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

В приведенном выше примере реестр обращается к ключам, хранящимся в ключе HKEY_CLASSES_ROOT\.jpgКуст HKEY_CLASSES_ROOT — это коллективные данные, находящиеся как в кусте HKEY_LOCAL_MACHINE(HKEY_LOCAL_MACHINE) ( HKEY_LOCAL_MACHINE\Software\Classes ), так и в  кусте HKEY_CURRENT_USER(HKEY_CURRENT_USER) ( HKEY_CURRENT_USER\Software\Classes ). Поэтому, когда раздел реестра существует в двух местах, это создает конфликты. Таким образом, данные, найденные в HKEY_CURRENT_USER\Software\Classes , используются в HKEY_CLASSES_ROOT . Доступ к нему можно получить, открыв ключ HKEY_CLASSES в левой части экрана.

II. HKEY_LOCAL_MACHINE

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

Также узнайте, как: (Also know how to:) исправить сбои Regedit.exe при поиске в реестре .(Fix Regedit.exe Crashes when searching through Registry)

Этот раздел реестра далее делится на 7 подразделов:(This registry key is further divided into 7 sub-keys:)

1. SAM ( менеджер учетных записей безопасности(Security Accounts Manager) ) — это ключевой файл реестра, в котором хранятся пароли пользователей в защищенном формате (в хэше LM и хэше NTLM ). Хэш-функция — это форма шифрования, используемая для защиты информации учетной записи пользователя.

Это заблокированный файл, расположенный в системе по адресу C:WINDOWSsystem32config, который нельзя переместить или скопировать во время работы операционной системы.

Windows использует файл ключа реестра Security Accounts Manager для аутентификации пользователей при входе в свои учетные записи Windows . Всякий раз, когда пользователь входит в систему, Windows использует ряд хеш-алгоритмов для вычисления хеш-функции для введенного пароля. Если введенный хэш пароля равен хешу пароля в файле реестра SAM(SAM registry file) , пользователям будет разрешен доступ к их учетной записи. Это также файл, на который нацелено большинство хакеров при выполнении атаки.

2. Безопасность(2. Security) (доступен только администратору) — этот раздел реестра является локальным для учетной записи администратора, вошедшего в текущую систему. Если система управляется какой-либо организацией, пользователи не могут получить доступ к этому файлу, если пользователю явно не предоставлен административный доступ. Если бы мы открыли этот файл без прав администратора, он был бы пустым. Теперь, если наша система подключена к административной сети, этот ключ по умолчанию будет соответствовать профилю безопасности локальной системы, установленному и активно управляемому организацией. Этот ключ привязан к SAM , поэтому при успешной аутентификации в зависимости от уровня привилегий пользователя применяются различные локальные и групповые политики .(group policies)

3. Система(3. System) (критический процесс загрузки и другие функции ядра) — этот подраздел содержит важную информацию, относящуюся ко всей системе, такую ​​как имя компьютера, установленные в настоящее время аппаратные устройства, файловая система и какие автоматизированные действия могут быть предприняты в определенном событии, скажем, там Синий экран смерти(Blue screen of death) из-за перегрева процессора(CPU) , есть логическая процедура, что компьютер автоматически начнет принимать в таком случае. Этот файл доступен только пользователям с достаточными правами администратора. Когда система загружается, все журналы динамически сохраняются и читаются. Различные системные параметры, такие как альтернативные конфигурации, известные как наборы управления.

4. Программное обеспечение(4. Software ) Здесь хранятся все конфигурации стороннего программного обеспечения, такие как драйверы plug and play . (Third-party)Этот подраздел содержит настройки программного обеспечения и Windows , связанные с ранее существовавшим профилем оборудования, которые можно изменить с помощью различных приложений и системных установщиков. Разработчики программного обеспечения(Software) могут ограничивать или разрешать, к какой информации пользователи получают доступ при использовании их программного обеспечения. Это можно установить с помощью подраздела «Политики», который обеспечивает соблюдение общих политик использования для приложений и системных служб, которые включают используемые системные сертификаты. для аутентификации, авторизации или запрета определенных систем или служб.

5. Оборудование(5. Hardware) , представляющее собой подраздел, который создается динамически во время загрузки системы.

6. Компоненты(6. Components ) Информацию о конфигурации компонентов для всей системы можно найти здесь .

7. BCD.dat (в папке oot в системном разделе), критический файл, который система считывает и начинает выполнять во время последовательности загрузки системы, загружая реестр в ОЗУ(RAM) .

III. HKEY_CURRENT_CONFIG

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

Это также куст реестра, часть реестра Windows(Windows Registry) , в котором хранится информация об используемом в настоящее время профиле оборудования. HKEY_CURRENT_CONFIG на самом деле является указателем на ключ HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\HardwareProfiles\Currentregistry . Это просто указатель на текущий активный профиль оборудования, указанный в ключе HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\HardwareProfiles

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

IV. HKEY_CURRENT_USER

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

Многие параметры, которые вы настраиваете в различных апплетах на панели управления(Control Panel) , хранятся в  кусте реестра HKEY_CURRENT_USER . Поскольку куст HKEY_CURRENT_USER зависит от пользователя, на одном и том же компьютере содержащиеся в нем ключи и значения будут различаться от пользователя к пользователю. (HKEY_CURRENT_USER)Это отличается от большинства других кустов реестра, которые являются глобальными, то есть они сохраняют одну и ту же информацию для всех пользователей в Windows .

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

против HKEY_USERS

Он содержит подразделы, соответствующие ключам HKEY_CURRENT_USER для каждого профиля пользователя. Это также один из многих кустов реестра, которые есть в реестре Windows(Windows Registry) .

Здесь регистрируются все пользовательские данные конфигурации, для всех, кто активно использует устройство, такая информация хранится в разделе HKEY_USERS . Вся пользовательская информация, хранящаяся в системе, которая соответствует конкретному пользователю, хранится в кусте HKEY_USERS(HKEY_USERS) , мы можем однозначно идентифицировать пользователей, используя идентификатор безопасности или SID(security identifier or the SID) , который регистрирует все изменения конфигурации, сделанные пользователем.

Все эти активные пользователи, чья учетная запись существует в кусте HKEY_USERS(HKEY_USERS) , в зависимости от привилегий, предоставленных системным администратором, смогут получить доступ к общим ресурсам, таким как принтеры, локальная сеть, локальные накопители, фон рабочего стола и т. д. Их учетная запись имеет определенный реестр. ключи и соответствующие значения реестра, хранящиеся под SID текущего пользователя .

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

Рекомендуется: (Recommended:) исправить Редактор реестра перестал работать.(Fix The Registry editor has stopped working)

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

Типы данных, которые мы можем ожидать найти в реестре Windows(Types of data we can expect to find in the Windows Registry)

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

  • Строковые значения, такие как Unicode, который(Unicode ​which) является отраслевым стандартом вычислительной техники для согласованного кодирования, представления и обработки текста, выраженного в большинстве мировых систем письма.
  • Двоичные данные
  • Беззнаковые целые числа
  • Символические ссылки
  • Многострочные значения
  • (Resource)Список ресурсов (оборудование Plug and Play )
  • (Resource)Дескриптор ресурса (оборудование Plug and Play )
  • 64-битные целые числа

Вывод(Conclusion)

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

Простота использования, а также доступ к различным настройкам и настройкам в одном центральном месте также сделали Windows предпочтительной платформой для настольных приложений различных разработчиков программного обеспечения. Это очень очевидно, если вы сравните огромный объем доступных настольных программных приложений для Windows с macOS от Apple. Подводя итог, мы обсудили, как работает реестр Windows(Windows Registry) , его файловая структура и значение различных конфигураций ключей реестра, а также полное использование редактора реестра.



About the author

Я разработчик бесплатного программного обеспечения и сторонник Windows Vista/7. Я написал несколько сотен статей на различные темы, связанные с операционной системой, включая советы и рекомендации, руководства по ремонту и рекомендации. Я также предлагаю консультационные услуги, связанные с офисом, через мою компанию Help Desk Services. Я хорошо понимаю, как работает Office 365, его функции и способы их наиболее эффективного использования.



Related posts