Шрифт:
Интервал:
Закладка:
Каждое подобное приложение, открытое в Windows XP, опирается на использование объекта, который специалисты фирмы Intel назвали виртуальной машиной. При этом процессор пытается «внушить» приложению, что оно единственное, исполняющееся на компьютере. Каждая виртуальная машина характеризуется собственным пространством памяти и каналом доступа к устройствам системы. Интересно отметить, что на базе одного компьютера можно одновременно создать несколько виртуальных машин. Операционной системе Windows XP приходится идти на определенные ухищрения для того, чтобы обеспечить нормальное функционирование подобных виртуальных устройств, особенно, когда речь идет о не совсем дружественных по отношению к ней программных приложениях (например, играх).
На первый взгляд кажется, что Windows XP может потерять управление компьютерной системой при исполнении приложения MS DOS. Однако каждое из упомянутых виртуальных устройств остается под строжайшим контролем со стороны процессора. Если приложение формирует запрос, который процессор не в состоянии удовлетворить, он информирует об этом операционную систему. Windows XP тщательно отслеживает подобные запросы и не позволяет приложениям работать при выявлении каких-либо отклонений. Кроме того, Windows XP осуществляет мониторинг памяти видеоадаптера (видеопамяти) и других устройств компьютерной системы, и в случаях некорректного обращения приложения к устройствам прерывает его исполнение.
Для самостоятельного изучения
Я всегда с удовольствием наблюдал за работой своего компьютера. Для этого я пользовался файлом NTBTLOG.TXT загрузочного диска, который позволял отследить загружаемые драйверы Windows XP, а также порядок их загрузки. Вы также можете просмотреть все драйверы в папке SYSTEM32. Однако далеко не все программы попадают в эту папку: некоторые файлы Windows XP помещает в другие папки, и будет полезно разобраться в причинах подобных перемещений.
Рекомендую затратить некоторое время на просмотр папок SYSTEM и SYSTEM32 и попытаться обнаружить какие-нибудь следы компонентов интерфейса прикладного программирования API, а также разобраться в различиях имен 32-разрядных и 16-разрядных объектов. Для этого нужно щелкнуть правой кнопкой мыши по компоненту интерфейса API и воспользоваться опцией Свойства (Properties) контекстного меню. Обратитесь к вкладке Версия (Version) и познакомьтесь с записями полей Описание (Description) и Имя элемента (Item Name). Некоторые подобные записи помогут вам определить тот файл, который применяется операцией.
Полезно просмотреть содержимое файлов SYSTEM.INI и WIN.INI. Можно также отменить на время файл WIN.INI и проконтролировать, не возникло ли в системе каких-либо проблем. Отмена файла SYSTEM.INI обеспечивается с помощью утилиты MSCONFIG, при этом следует проверить факт инициализации повторной загрузки или возникновения каких-либо проблем.
12. Системный реестр Windows XP
Термин «реестр» (Registry) может толковаться по-разному. В вычислительной технике этим термином называют действия, связанные с регистрацией имен, разделов или операций. Системный реестр, или просто реестр, Windows XP является тем объектом, где регистрируются большие объемы самой разнообразной информации. Нетрудно также интерпретировать его в виде специальной иерархической базы данных, которая допускает свободные формы представления данных и опирается на использование древообразной структуры, обеспечивающей доступ к информации [33] .
Реестр впервые появился в Windows NT. В дальнейшем все версии Windows 9х также предусматривали его применение, равно как и Windows 2000. Создание реестра стало следствием предпринимавшихся ранее (например, в рамках более ранних версий операционной системы Windows) попыток сохранения различных данных, в частности инициализационных файлов – INI-файлов. Как было показано выше, старые программные приложения часто используют INI-файлы, поскольку эти файлы весьма близки разработчикам приложений (некоторые разработчики боятся задействовать реестр, считая его своего рода «черной дырой» в среде Windows).
Созданный специалистами Microsoft реестр на самом деле является весьма полезным компонентом системы. В последнее время он претерпел несколько изменений и от этого только выиграл. Применяя реестр, вы создаете возможность для записи и длительного хранения различных данных и величин, причем подобное хранение не предполагает их преобразования в другой формат, что заметно облегчает последующее использование.
Ниже рассматриваются приемы работы с реестром, в частности методы запоминания и хранения данных для различных компонентов Windows XP и отдельные параметры этих компонентов. Хотя я не намеревался подробно описывать все элементы реестра, вы узнаете достаточно много, чтобы самостоятельно редактировать (безопасным образом) записи системного реестра и тем самым улучшать показатели быстродействия Windows XP.
Структурные компоненты системного реестра – кусты
Как упоминалось выше, системный реестр представляет собой иерархическую базу данных, призванную запоминать и хранить различные данные о компонентах Windows XP. Проблема состоит в том, что некоторые из этих данных относятся к приложениям, а другие задаются пользователями, касаются самой операционной системы Windows или связаны с компьютерной системой. Поскольку информация поступает из различных источников, на практике весьма сложно создать единственный файл, который бы содержал все необходимые сведения. Тем не менее, как станет ясно из материалов раздела «Методы редактирования системного реестра» данной главы, реестр все-таки удается интерпретировать в виде одного файла, в частности с помощью программы Редактор реестра (Registry Editor).
При создании реестра специалисты Microsoft воспользовались концепцией, получившей название принципа секционирования реестра, с помощью кустов (hives). В этом случае каждый сектор или физическая область памяти использовалась для запоминания определенного типа данных. При обращении к реестру программа Редактор реестра выводит в окне данные, относящиеся к самым разным источникам информации. Применение многочисленных компонентов файлов позволило размещать данные в соответствующих областях памяти жесткого диска и формировать удобную для работы компьютерную среду. Пользователи не могут просматривать и задействовать данные друг друга, если только они предварительно не обменялись соответствующими разрешениями. Область памяти, содержащая данные пользователя, обычно относится к тому же каталогу, что и прочие его данные.
В этой главе часто применяется термин HKEY, причем некоторые читатели иногда путают HKEY с термином «куст». Эти термины совершенно различны: куст представляет собой отдельный компонент файла (физическая область памяти), содержащий сохраненные данные, а HKEY является сокращением фразы «handle to a key» (дескриптор раздела) и используется для указания на инструмент разработчика, относящийся к самому низкому уровню реестра, который допускает непосредственный доступ к нему. Когда разработчик достигает этого уровня, ему приходится открывать реестр и получать необходимые права для работы с его данными (см. раздел «Подробное знакомство с системным реестром» данной главы).
Кусты определенным образом связаны с некоторыми разделами или подразделами реестра. Так, в разделе «Методы редактирования системного реестра» показано, что разделы служат для указания на конкретный параметр. Реестр объединяет все разделы таким образом, чтобы Windows XP могла применить их для обращения к определенному параметру. Подобный параметр часто представлен данными, сохраненными в реестре. Например, вы вправе воспользоваться подразделом реестра под названием «Преимущественный цвет» (Favorite Color) и соответствующим этому подразделу параметром «Синий» (Blue), который служит для описания подраздела, представленного общей записью в системном реестре. Большая часть пар «подраздел-параметр» реестра задается именно таким образом, хотя тип данных может изменяться от ключа к ключу. Кроме того, многие ключи снабжаются сразу несколькими параметрами.
Теперь, когда вы получили первое представление о реестре, можно перейти к обсуждению некоторых нюансов работы с ним. Речь пойдет о программе Редактор реестра (файл REGIDIT.EXE), системных файлах и некоторых дополнительных компонентах реестра, используемых в условиях совместного применения системного реестра группой сотрудников. (Следует отметить, что накапливаемая совместными усилиями информация в ряде случаев оказывается наиболее ценной, особенно при работе в больших сетях с несколькими индивидуально используемыми серверами.)
Методы редактирования системного реестра
Поскольку реестр имеет достаточно высокий уровень сложности, необходимы разнообразные программные инструменты, позволяющие эффективно его использовать. Файл REGEDIT.EXE (программа Редактор реестра) как раз и является таким высокоэффективным инструментом. Он отсутствует в меню Пуск, причем я вполне понимаю специалистов Microsoft, которые постарались упрятать его подальше. Указанный инструмент – весьма мощное средство, и специалисты занесли его в папку Windows. Доступ к программе обеспечивается с помощью Проводника или с помощью диалогового окна, которое открывается после выбора команды Выполнить (Run) в меню Пуск.
- Windows Vista. Для профессионалов - Роман Клименко - Программное обеспечение
- Знакомьтесь: Windows 7 - Владимир Пташинский - Программное обеспечение
- Windows Vista - Сергей Вавилов - Программное обеспечение
- Linux From Scratch - Gerard Beekmans - Программное обеспечение