|
Функции загрузчика NTLDR (для компьютеров х86) NTLDR
управляет процессами выбора операционной системы и распознавания аппаратных средств
перед инициализацией ядра. Загрузчик NTLDR должен находиться в корневом каталоге
системного диска. Помимо этого, в системном разделе должны присутствовать файлы,
перечисленные в табл. 3.1. Когда NTLDR начинает выполнение, он очищает экран
и выполняет следующие действия. 1. Переключает процессор в режим использования
32-разрядной модели памяти с прямой адресацией. Компьютеры х86 при запуске стартуют
в реальном режиме, подобном режиму, в котором стартуют процессоры 8088 и 8086.
Поскольку NTLDR представляет собой 32-разрядную программу, для того чтобы загрузчик
смог начать выполнять какие бы то ни было действия, процессор необходимо переключить
в защищенный режим. 2. Запускает соответствующую мини-файловую систему. Код,
предназначенный для доступа к файлам на томах FAT и NTFS, встроен в NTFS. Этот
код позволяет загрузчику читать файлы, получать доступ к ним и выполнять их копирование.
3. Читает расположенный в корневом каталоге системного диска файл Boot.ini
и отображает на экране соответствующее меню для выбора загружаемой операционной
системы. Экран, выводимый на данном этапе загрузки, называется экраном загрузчика
(boot loader screen). Если компьютер сконфигурирован для загрузки нескольких систем,
и пользователь выбирает операционную систему, отличную от Windows NT/2000/XP или
Windows Server 2003, то NTLDR загружает в память файл Bootsect.dos и передает
ему управление. Другая операционная система стартует как обычно, поскольку файл
Bootsect.dos содержит копию загрузочного сектора раздела, который находился на
основном разделе или логическом диске до инсталляции Windows NT/2000/XP или Windows
Server 2003. 4. Если выбрана одна из версий Windows NT/2000/XP или Windows
Server 2003, то выполняется Ntdetect.com, чтобы собрать информацию о физических
устройствах, подключенных на данный момент к компьютеру. 5. Загружает и запускает
ядро операционной системы Ntoskrnl.exe и передает ему информацию, собранную программой
Ntdetect.com. Одним из наиболее значимых усовершенствований,
впервые введенных в Windows XP и присутствующих в Windows Server 2003, является
существенное повышение производительности, в том числе — так называемая ускоренная
загрузка (Fast Boot), реализованная за счет повышения производительности загрузчика
Ntldr. Новые версии Ntldr, входящие в состав Windows XP и Windows Server 2003,
оптимизируют операции чтения с диска и во время первой загрузки кэшируют все данные
о дисковой подсистеме, включая метаданные файловой системы. Кэшированные данные
используются при последующих перезагрузках для чтения системных файлов параллельно
с другими операциями. Теперь в процессе загрузки считывание каждого из системных
файлов происходит за одну операцию. Как результат, по сравнению с Windows 2000
производительность загрузчика выросла примерно в 4—5 раз. |