Главная сайта | Форум | Фотоальбом | Регистрация   | Вход | Cайт в избранное | Правила сайта и форума

Приветствую Вас Гость | RSS


Фильмы | Онлайн Видео | Софт | Новости и Статьи | Игры онлайн | Фотоальбом | Форум

ДЛЯ ПРОСМОТРА САЙТА РЕКОМЕНДУЕТСЯ ИСПОЛЬЗОВАТЬ:  Uran - браузер от uCoz на базе проекта Chromium. | Google ChromeOpera | Firefox 


МЕНЮ САЙТА

ПОИСК ПО САЙТУ

Gamesblender 675: новый шутер от Valve, Stellar Blade на ПК и ускоренный ИИ на GeForce RTX

Gamesblender № 674: новые боссы PlayStation, опасная стратегия Microsoft и ассасины в Японии

Gamesblender № 673: внезапная Hades II, закрытие студий Bethesda и контроль видеоигр в России

Gamesblender № 661: будущее Xbox, новая игра авторов Ori, «неправильная» Subnautica 2 и прощание с Dead Cells

Gamesblender № 660: «портативки» от Sony и Microsoft, эксклюзивы Xbox на PlayStation, сделка Epic и Disney и показ Final Fantasy VII Rebirth

Tekken 8: 10 аниме из 10

Gamesblender № 659: Death Stranding 2 и другие показы State of Play, новый президент Blizzard, отмена Deus Ex и перенос «Смуты»

Gamesblender № 657: дата выхода S.T.A.L.K.E.R. 2, «Индиана Джонс» от авторов Wolfenstein, закрытие Piranha Bytes, Larian против подписок

Gamesblender № 656: ремастер Half-Life 2, сиквел Cyberpunk 2077 и новый конкурент Steam Deck

Gamesblender № 654: главные события 2023 года в игровой индустрии

Игромания! ИГРОВЫЕ НОВОСТИ,11 декабря (Death Stranding, Metro Exodus, Portal, God Of War, Witchfire)

Лучшие БОЕВИКИ 2016

Во что поиграть на этой неделе — 20 апреля (God Of War, Yakuza 6, Steampunk Tower 2)

Игромания! Игровые новости, 9 мая (Watch Dogs 2, Dishonored 2, Uncharted 4, The Oregon Trail)

Игромания! ИГРОВЫЕ НОВОСТИ, 7 мая (Red Dead Redemption 2, Beyond Good and Evil 2, Hotline Miami)

Игромания! Игровые новости, 27 февраля (Overwatch, Bethesda, Бэтмен, Nintendo Switch)

Игромания! Игровые новости, 22 мая (Ведьмак, Destiny 2, Life is Strange, Sega, GTA 5)

Игромания! ИГРОВЫЕ НОВОСТИ, 21 октября (Postal 4: No Regerts, PDXCon 2019, League of Legends)
СТАТИСТИКА
Всего материалов:
Фильмомания: 1513
Видео: 220
Каталог файлов: 95
Каталог статей: 6797
Фотоальбом: 1236
Форум: 1152/8421
Каталог сайтов: 386

Всего зарегистрировано:
Зарегистрировано: 1724
Сегодня: 0
Вчера: 0
За неделю: 1
За месяц: 6

Из них:
Пользователи: 1649
Проверенные: 23
Друзья: 5
Редакторы: 0
Журналисты: 8
В вечном бане: 33
Модераторы: 1
Администраторы: 3

Из них:
Парней 1295
Девушек 427


ON-Line всего: 2
Гостей: 2
Пользователей: 0

Сейчас на сайте:


Кто был?
Фокусник, demonej7, Vasja,
День Рождения у: Wildsax(44), alitka984(40), Yodomara(29)
ВЫ МОЖЕТЕ ОКАЗАТЬ ПОДДЕРЖКУ ЗА ТРУДЫ, ПОЖЕРТВОВАВ ЛЮБУЮ СУММЫ.

WEBMONEY



Категории каталога

Главная » Статьи » Статьи » Статьи: Windows 7

Архитектура системного реестра. Часть 2

Продолжение. Начало см. здесь

Кусты

Как уже говорилось ранее, компонент исполнительной системы, который и реализует сам реестр операционных систем Windows, располагается на диске не одним файлом, а в виде набора нескольких файлов, которые называются кустами (в некоторой документации вы можете увидеть название «улей», что является синонимом. Сам термин hive переводится как «куст» или «улей»). В каждом кусте размещена группа разделов, называемая деревом реестра, где начальная точка дерева имеет название корня, под которым уже находятся прочие подразделы с их параметрами. Причем, корень дерева реестра не стоит путать с корневыми разделами, так как это разные вещи. Диспетчером конфигурации (исполнительная система, реализующая реестр) определяются пути с полными именами файлов всех кустов на локальных компьютерах. Вспомогательные файлы для всех кустов за исключением HKEY_CURRENT_USER в операционных системах Windows находятся в папке %SystemRoot%\System32\Config. Во время загрузки операционной системы диспетчер конфигурации в разделе HKLM\SYSTEM\CurrentControlSet\Control\Hivelist определяет путь к каждому из существующих кусов и удаляет пути к кустам, выгруженным из памяти. Затем, для формирования привычной древовидной структуры системного реестра, диспетчер конфигурации создает корневые разделы реестра и связывает друг с другом существующие кусты. Как вы увидите немного ниже, кусты HKEY_LOCAL_MACHINE\HARDWARE и HKLM\SYSTEM\Clone (который вы сможете найти только в Windows 2000) являются изменяемыми и не имеют сопоставимых файлов, то есть такие кусты существуют временно и операционная система манипулирует ими только в памяти. Все кусты реестров с их местоположениями указаны в следующей таблице:

Путь к кусту в системном реестреПуть к файлу самого куста
HKEY_LOCAL_MACHINE\BCD00000000\Boot\BCD
HKEY_LOCAL_MACHINE\COMPONENTS%SystemRoot%\System32\Config\Components
HKEY_LOCAL_MACHINE\SYSTEM%SystemRoot%\System32\Config\System
HKEY_LOCAL_MACHINE\SAM%SystemRoot%\System32\Config\Sam
HKEY_LOCAL_MACHINE\SECURITY%SystemRoot%\System32\Config\Security
HKEY_LOCAL_MACHINE\SOFTWARE%SystemRoot%\System32\Config\Software
HKEY_LOCAL_MACHINE\HARDWAREИзменяемый куст (Volatile hive)
HKEY_USERS\%SystemRoot%\ServiceProfiles\LocalService\Ntuser.dat
HKEY_USERS\%SystemRoot%\ServiceProfiles\NetworkService\NtUser.dat
HKEY_USERS\\Users\\Ntuser.dat
HKEY_USERS\_Classes\Users\\AppData\Local\Microsoft\Windows\Usrclass.dat
HKEY_USERS\.DEFAULT%SystemRoot%\System32\Config\Default

Таблица 1. Файлы, соответствующие кустам реестра

Для того чтобы в самом начале загрузки операционной системы, пока еще нет поддержки виртуальной памяти библиотека системного ядра Ntldr.dll могла считывать все кусты (например, HKLM\SYSTEM) в физическую память, Windows ограничивает размеры кустов реестра. В отличие от операционных систем Windows XP и Windows Server 2003, где лимит на размер куста составлял 200 МБ или до четверти физической памяти, установленной в системе, начиная с операционных систем Windows Vista и Windows Server 2008 размер увеличен до 400 МБ или половины физической памяти, установленной в системе (в операционной системе Windows 2000 размер куста не мог превышать 12 МБ). В 64-разрядных операционных системах предельным размером куста является 1,5 ГБ. Общий размер загружаемых данных реестра ограничен в связи с тем, что для хранения кустов реестра операционная система использует пул подкачиваемой памяти, который определяется диспетчером памяти при инициализации на основании многих факторов. Причем, данные системного реестра не могут занимать более 80% этого пула.

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

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

Рис.1. Структура куста реестра

Изменение данных реестра

На данный момент существует множество приложений (включая программное обеспечение сторонних разработчиков), которые предназначены для внесения изменений системного реестра. Для редактирования реестра программа должна использовать функции, с которыми, возможно, вы уже знакомы по утилите Process Monitor (такие функции как RegCreateKeyEx, RegQueryValueEx, RegSetValueEx и RegDeleteKeyEx). К основным средствам, предназначенным для редактирования реестра, относятся редактор реестра, групповые политики, файлы реестра, утилита командной строки REG, а также сценарии, написанные на языках сценариев VBScript или JScript, которые будут вкратце рассмотрены в следующих подразделах.

Редактор реестра

Утилита «Редактор реестра» (Regedit.exe) – это средство, которое, по меньшей мере, хотя бы один раз открывал каждый пользователь операционных систем Windows. Редактор реестра предназначен для просмотра и редактирования разделов и параметров реестра, поддерживает настройку параметров безопасности, позволяет восстанавливать реестр из резервной копии, а также сохранять и загружать файлы куста. Помимо этого, при помощи данного средства вы можете управлять системным реестром компьютеров, расположенных в вашей сети. Для того чтобы открыть данную утилиту, достаточно в диалоговом окне «Выполнить» ввести Regedit.exe. Редактор реестра имеет удобный пользовательский интерфейс, где слева, в области переходов, вы можете увидеть набор разделов реестра локального или удаленного компьютера, которые отображаются в виде папок, а справа, в области сведений вы можете найти параметры, которые входят в состав выбранного вами раздела. При просмотре системного реестра удаленного компьютера для вас будут доступны только два корневых раздела - HKEY_USERS и HKEY_LOCAL_MACHINE. Несмотря на то, что редактор реестра позволяет изменять большинство параметров, изменения стоит вносить очень осторожно, так как неправильное изменение параметров может привести к серьезным неисправностям. На следующей иллюстрации вы можете увидеть редактор реестра.

Рис. 2. Окно «Редактор реестра»

Групповые политики

Групповые политики – это компонент операционной системы, позволяющий управлять большинством конфигурационных параметров пользователей и компьютеров. Основана групповая политика на конкретных параметрах политики, которые обычно называются политиками, определяющими определенную настройку для применения. В большинстве случаев, этими политиками можно управлять непосредственно из оснастки «Редактор локальной групповой политики» на локальных компьютерах или компьютерах, расположенных в рабочей группе, а в доменной среде для управления конфигурацией групповых политик применяется оснастка «Управление групповой политикой». В данной оснастке, в узле «Административные шаблоны», политики конфигурации пользователя модифицируют значения параметров реестра в разделе HKEY_CURRENT_USER, а политики конфигурации компьютера – в разделе HKEY_LOCAL_MACHINE. Сам по себе, административный шаблон является текстовым файлом, указывающим на изменение конкретных параметров системного реестра, а также генерирующий пользовательский интерфейс для настройки параметра административных шаблонов непосредственно в оснастке редактора групповых политик. В большинстве случаев, административные шаблоны, предназначенные для конфигурации компьютера, модифицируют значения параметров в разделах HKLM\Software\Policies и HKLM\Software\Microsoft\Windows\CurrentVersion\Policies, а административные шаблоны конфигурации пользователя - HKCU\Software\Policies и HKCU\Software\Microsoft\Windows\CurrentVersion\Policies. При необходимости, помимо предустановленных административных шаблонов вы можете добавлять новые административные шаблоны, которые состоят из двух файлов - .admx и .adml.

Файлы реестра

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

Версия_редактора_реестра
Пустая строка
[Путь_реестра1]
«Наименование_параметра1»=«Тип_данных1:Значение_данных1»
«Наименование_параметра2»=«Тип_данных2:Значение_данных2»
Пустая строка
[Путь_реестра2]
«Наименование_параметра3»=«Тип_данных3:Значение_данных3»

Рассмотрим каждую из составляющих REG-файла:

Версия_редактора_реестра – это заголовок данного файла, без которого параметры, указанные в REG-файле не будут импортироваться в системный реестр. В качестве такого заголовка должна быть указана строка с текстом Windows Registry Editor Version 5.00. иногда вместо данного заголовка вы можете встретить REGEDIT4, который является форматом устаревших версий Windows 98/NT 4.0

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

Путь_реестраХ представляет собой раздел или подраздел реестра, включающий первое импортируемое значение. При указании пути реестра, вы должны отделять каждый уровень косой чертой и заключать весь путь в квадратные скобки. В том случае, если последний уровень в реестре отсутствует – при импорте REG-файла будет создан такой подраздел.

Наименование_параметраХ является названием импортируемого параметра реестра. Название параметра всегда должно быть заключено в кавычки и перед указанием его значения должен быть указан знак равенства. В том случае, если параметр с таким именем существует, его значение будет изменено согласно тому, которое указано в REG-файле, а если такого параметра не существует, то он автоматически будет создан с указанным вами значением.

Тип_данныхХ определяет тип данных параметра реестра и всегда указывается после знака равенства. После типа данных перед значением данного параметра должно стоять двоеточие. Все типы данных были перечислены в одном из предыдущих разделов данной статьи.

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

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

Пример REG-файла:

Windows Registry Editor Version 5.00

;Отключить удаленный доступ к реестру
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RemoteRegistry]
"Start"=dword:00000004

Утилита командной строки REG

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

  • REG add. Эта подкоманда позволяет добавлять в системный реестр новый подраздел или параметр;
  • REG query. При помощи этой подкоманды вы можете выводить список параметров раздела, а также названия вложенных подразделов;
  • REG delete. Позволяет удалять из раздела определенный подраздел или параметр;
  • REG copy. Используя эту подкоманду, вы можете копировать параметры раздела по указанному пути раздела на локальном или удаленном компьютере;
  • REG compare. Данная подкоманда позволяет вам сравнивать подразделы или параметры реестра;
  • REG restore. При помощи этой подкоманды вы можете записывать в реестр ранее сохраненные подразделы и параметры;
  • REG flags. Эта подкоманда отображает и устанавливает флаги заданного раздела;
  • REG save. Позволяет сохранять копию указанных подразделов и параметров системного реестра в файл;
  • REG import. Используя эту подкоманду, вы можете импортировать в реестр заданный куст;
  • REG export. При помощи этой подкоманды вы можете экспортировать заданные подразделы и параметры в файл;
  • REG load. Эта подкоманда предназначена для загрузки указанного вами куста из файла в системный реестр;
  • REG unload. Позволяет выгрузить заданный вами куст из реестра в файл.

Каждая подкоманда включает в себя определенные параметры, позволяющие выполнять конкретные действия. Например, параметр /s подкоманды REG add указывает символ, используемый в качестве разделителя данных для параметров типа REG_MULTI_SZ, а одноименный параметр подкоманды REG copy используется для копирования всех подразделов и параметров.

Для примера, добавим в контекстное меню ярлыка «Компьютер» команду «Программы и компоненты», просмотрим внесенные изменения, а затем удалим эту команду непосредственно из командной строки. Для этого необходимо выполнить следующие команды:

REG add HKLM\SOFTWARE\Classes\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\66 /ve /t REG_SZ /d "Программы и компоненты"
REG add HKLM\SOFTWARE\Classes\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\66\command /ve /t REG_SZ /d "control appwiz.cpl"
REG query HKLM\SOFTWARE\Classes\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\66\command /s /ve
REG delete HKLM\SOFTWARE\Classes\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\66\command
REG query HKLM\SOFTWARE\Classes\CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\66\command

где в командах REG add параметр /ve указывает на то, что модифицироваться должен параметр с пустым именем (по умолчанию), параметр /t отвечает за используемый тип данных, а параметр /d определяет реальное значение, помещаемое в реестр. Параметр /s команды REG query позволяет вывести все вложенные подразделы, а при помощи параметра /ve можно увидеть значения параметров по умолчанию. Все вышеперечисленные действия можно увидеть на следующей иллюстрации:

Рис. 3. Выполнение простейших операций с реестром средствами командной строки


Если на странице вы заметили в посте отсутствие изображений, просьба сообщить , нажав на кнопку.



После прочтения материала " Архитектура системного реестра. Часть 2 ", можно просмотреть форум и поискать темы по данной игре.



ДРУГИЕ МАТЕРИАЛЫ
Японцам показали кусочек Fallout 3
Возрождение X-Wing, TIE Fighter
Дата релиза, скачивание и вся остальная информация по Microsoft Office 2021
Трансформеры: от наброска-чертежа до триумфа
DVD-рекордер Samsung с функцией сверхразгона
Красивые видео гоночной игры Forza Motorsport 3
Мощный ноутбук Samsung R560 за 34 тысячи
Е3 2009: официальный анонс Final Fantasy XIV
Бета-версия Dawn of War 2 There Is Only War
Чипы NXP признаны наиболее скоростными среди аналогов
Google начнёт продавать электронные книги
Новая версия утилиты для борьбы с троянцем-вымогателем от «Доктор Веб»
Fujitsu Siemens ESPRIMO Q5030: 1,4-литровый ПК-рюкзак
Странный ритм-шутер Retro/Grade
E3 2009: анонс Castlevania: Lords of Shadow
Первые оценки Mercenaries 2
"Темный рыцарь": создание фильма
США готовятся к кибервойне?
Снимки опытного образца платы Gigabyte GA-X58-Extreme
Провайдеры запретят нелегальное скачивание из Сети?

Если вам понравился материал "Архитектура системного реестра. Часть 2", - поделитесь ним с другими.


html-cсылка на публикацию
BB-cсылка на публикацию
Прямая ссылка на публикацию


Категория: Статьи: Windows 7 | Добавил: Фокусник (09.09.2010)
Просмотров: 1517

Ниже вы можете добавить комментарии к материалу " Архитектура системного реестра. Часть 2 "

Внимание: Все ссылки и не относящиеся к теме комментарии будут удаляться. Для ссылок есть форум.


Всего комментариев : 0
avatar
ФОРМА ВХОДА
ПОЖЕРТВОВАНИЯ

WMZ: Z143317192317
WMB: X706980753649

Boosty - Donate

Payeer: P48650932
На кофе / ko-fi
ПАРТНЕРЫ

World of Warships — это free-to-play ММО-экшен, который позволяет окунуться в мир масштабных военно-морских баталий. Возьмите под управление легендарные боевые корабли первой половины ХХ века и завоюйте господство на бескрайних океанских просторах.

Курсы обмена WebMoney


Что такое ресурс Turbobit и как качать.


Получи 10 ГБ места бесплатно, на всю жизнь.


Boosty – сервис по сбору донатов.
Видеообзор игры Goat Simulator
Видеообзор игры Goat Simulator
Видеообзор игры CounterSpy
Видеообзор игры CounterSpy

"Start Again" - Sam Tsui
FIFA 18 - Карьера за игрока #1
FIFA 18 - Карьера за игрока #1
Мир принадлежит тебе (2018) - Русский трейлер
Мир принадлежит тебе (2018) - Русский трейлер
Кодзима, что это было? Разбор ЧЕТВЁРТОГО трейлера Death Stranding
Кодзима, что это было? Разбор ЧЕТВЁРТОГО трейлера Death Stranding
Календарь Игромании: Июль 2018
Календарь Игромании: Июль 2018
Хроники Нарнии 4: Серебряное кресло
Хроники Нарнии 4: Серебряное кресло
Безупречная жизнь — Русский трейлер (2018)
Безупречная жизнь — Русский трейлер (2018)
Обзор игры The Crew 2
Обзор игры The Crew 2

Смешные демотиваторы-приколы (14 шт)
Смешные демотиваторы-приколы (14 шт)
Детские фотографии знаменитостей - 14 шт
Детские фотографии знаменитостей - 14 шт
Что можно сделать из старых тракторных шин
Что можно сделать из старых тракторных шин
Фотоприколы с кошками (17 шт)
Фотоприколы с кошками (17 шт)
Женщина потратила 3 года и $70 тысяч на переделку старого автобуса в комфортный дом на колёсах (23 фото)
Женщина потратила 3 года и $70 тысяч на переделку старого автобуса в комфортный дом на колёсах (23 фото)
Субботний пост приколов (21 шт)
Субботний пост приколов (21 шт)
Фото-приколов много не бывает (35 шт)
Фото-приколов много не бывает (35 шт)
Города мира тогда и сейчас
Города мира тогда и сейчас
СТАТИСТИКА
Яндекс.Метрика


Copyright © 2000-2024, Alex LTD and System PervertedХостинг от uCoz