Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
6.3 Начальная загрузка операционной системы.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
152.58 Кб
Скачать

Функции загрузчика ntldr

NTLDR управляет процессами выбора операционной системы и распознавания аппаратных средств перед инициализацией ядра Windows NT/2000/XP. Загрузчик NTLDR должен находиться в корневом каталоге системного диска. Помимо этого, в системном разделе должны присутствовать файлы, перечисленные в табл. 6.1.

Когда NTLDR начинает выполнение, он очищает экран и выполняет перечисленные ниже действия.

  •  Переключает процессор в режим использования 32-разрядной модели памяти с плоской адресацией. Компьютеры х86 при запуске стартуют в реальном режиме, подобном режиму, в котором стартуют процессоры 8088 и 8086. Поскольку NTLDR представляет собой 32-разрядную программу, для того чтобы загрузчик смог начать выполнение каких бы то ни было действий, процессор необходимо переключить в защищенный режим.

  •  Запускает соответствующую минифайловую систему. Код, предназначенный для доступа к файлам на томах FAT и NTFS, встроен в NTFS. Этот код позволяет загрузчику читать файлы, получать доступ к ним и выполнять их копирование.

  •  Читает расположенный в корневом каталоге системного диска файл Boot.ini и отображает на экране соответствующее меню для выбора загружаемой операционной системы. Экран, выводимый на данном этапе загрузки, называется экраном загрузчика (boot loader screen). Если компьютер сконфигурирован для загрузки нескольких систем, и пользователь выбирает операционную систему, отличную от Windows NT/2000/XP, то NTLDR загружает в память файл Bootsect.dos и передает ему управление. Другая операционная система стартует как обычно, поскольку файл Bootsect.dos содержит копию загрузочного сектора раздела, который находился на основном разделе или логическом диске до инсталляции Windows NT/2000/XP.

  •  Если выбрана одна из версий Windows NT/2000/XP, то NTLDR выполняет программу Ntdetect.com, чтобы собрать информацию о физических устройствах, подключенных на данный момент к компьютеру.

  •  NTLDR загружает и запускает ядро операционной системы Ntoskrnl.exe и передает ему информацию, собранную программой Ntdetect.com.

Примечание

Одним из наиболее важных усовершенствований, представленных в Windows XP является возможность так называемой быстрой загрузки (Fast Boot), которая была реализована путем увеличения производительности загрузчика. Версия загрузчика NTLDR, входящая в состав Windows XP, оптимизирована для выполнения быстрого считывания диска. Когда система загружается впервые, вся информация о конфигурации диска, включая системные метаданные, помещается в кэш. Программа упреждающей выборки— Logical Prefetcher, появившаяся в Windows XP, записывает большую часть этих данных в системный кэш, обладающий возможностью выполнения эффективных дисковых операций ввода/вывода в асинхронном режиме, что существенно снижает время поиска. Во время начальной загрузки, программа предварительной выборки завершает большинство операций ввода/вывода, необходимых для запуска системы, параллельно с инициализацией устройства, обеспечивая ускоренную начальную загрузку и регистрацию пользователя. Более того, каждый системный файл во время начальной загрузки считывается только один раз, за одну операцию. В результате, загрузчик Windows XP работает примерно в 4-5 раз быстрее загрузчика Windows 2000.

Как вы, вероятно, предполагаете, параметры программы предварительной выборки также хранятся в реестре. Их можно найти под следующим ключом (рис. 6.2):

HKEY_LOCAL_MACHINE\SYSTEM\

CurrentControlSet\ Control\Session Manager

\MemoryManagement\PrefetchParameters

Нас интересуют, прежде всего, параметры RootDirPath (тип данных- REG_SZ, значение ПО умолчанию — Prefetch) и EnablePrefetcher (тип данных — REG_DWORD). Параметр EnablePrefetcher может иметь следующие значения:

  •  0x00000001 — предварительная выборка при запуске приложения;

  •  0x00000002 — предварительная выборка при выполнении загрузки.

Если активизированы обе опции, то значение параметра будет 0x00000003. Данные установки вступают в силу немедленно. Обратите внимание, что на серверных системах по умолчанию установлена лишь опция предварительной выборки при начальной загрузке. Предварительная выборка приложений может быть активизирована в реестре, о чем уже упоминалось. Файл предварительной выборки системной начальной загрузки расположен в каталоге %SystemRoot%\Prefetch (и путь к нему задан параметром RootoirPath). Хотя эти файлы могут быть открыты с помощью Блокнота (Notepad), в них содержатся двоичные данные, которые имеет смысл просматривать шестнадцатеричным редактором, а не Блокнотом (Notepad). Если вы хотите их просмотреть, то сначала сделайте копию с защитой от записи, или скопируйте их в другой каталог.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]