Серверная операционная система Microsoft Windows 2003

         

Загрузка операционной системы


В этой главе собраны некоторые полезные сведения (в первую очередь касающиеся процесса загрузки системы), знакомство с которыми позволит пользователю быстрее локализовать и устранить ошибки в работе системы. Проблемы с загрузкой и в процессе работы возможны в любой операционной системе, и Windows Server 2003 не является исключением из общего правила. Тем не менее, стоит порадовать пользователей и хорошими новостями: система действительно стала еще надежнее, стабильнее и, кроме того, в ее состав добавлены новые средства устранения как проблем с загрузкой, так и других неполадок. (Эти средства будут подробно описаны в главе 23 "Восстановление системы".)
Грамотный пользователь не должен пугаться, услышав слова "boot-сектор", "главная загрузочная запись", "POST" и т. п. Чтобы по возможности быстро и с минимальными потерями выйти из ситуации, при которой возникают проблемы с загрузкой ОС, необходимо знать, как происходит этот процесс, от момента включения компьютера и до регистрации пользователя в системе.

происходящие при успешном запуске компьютера,


Процессы, происходящие при успешном запуске компьютера, работающего под управлением Windows Server 2003, перечислены ниже.
 Самотестирование при включении (Power-On Self-Test, POST)   Инициализация при запуске (Initial startup process)   Работа загрузчика (Boot loader process):  выбор операционной системы (при наличии нескольких систем)  опознавание аппаратных средств

 выбор конфигурации   Загрузка ядра  инициализация ядра  Регистрация пользователя Как видно из приведенного выше списка, процесс загрузки Windows Server 2003 имеет очень близкое сходство с процессом загрузки Windows 2000/XP. Это неудивительно, если вспомнить, что новое семейство серверных продуктов Windows Server 2003 построено на базе ядра Windows 2000/XP. Тем не менее, и в этой области внесены некоторые усовершенствования, которые будут особо отмечены в ходе дальнейшего изложения.

Описанная выше последовательность загрузки действует только применительно к системам, загружающимся после нормального останова. При выходе из режима ожидания (standby) или спящего (hibernate) режима эта последовательность будет другой.

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

Чтобы система Windows Server 2003


Чтобы система Windows Server 2003 начала загружаться, необходимо соблюдение следующих условий:
 корректная инициализация аппаратных средств компьютера   наличие всех файлов, необходимых для загрузки системы

Самотестирование при включении


При включении питания или перезагрузке компьютер проходит стадию самотестирования (bootstrapping) аппаратных средств при включении питания (так называемую процедуру POST, Power-On Self-Test). В это время компьютер находится под управлением базовой системы ввода/вывода (Basic Input/Output System, BIOS). При возникновении проблем с аппаратными средствами или настройками уже на стадии POST компьютер сигнализирует об этом серией звуковых сигналов. На этот случай следует иметь под рукой сопроводительную документацию, полученную от поставщика в комплекте с вашим компьютером.



Файлы, необходимые для запуска системы


Успешное завершение процедуры POST свидетельствует о корректной инициализации аппаратных средств компьютера. Теперь для запуска операционной системы требуется присутствие всех нужных файлов. Процедура запуска системы закончится неудачей, если хотя бы один из файлов, необходимых для ее загрузки, не будет найден или окажется поврежденным.
Файлы, необходимые для успешного запуска Windows NT/2000/XP, а также продуктов из семейства Windows Server 2003 на компьютерах х86, перечислены в табл. 3.1.

Таблица 3.1. Файлы, необходимые для запуска Windows NT/2000/XP и продуктов из семейства Windows Server 2003

Файлы
Местоположение
Описание
NTLDR
Корневой каталог системного диска
Загрузчик операционной системы
Boot.ini
Корневой каталог системного диска
Файл, задающий пути к каталогам, в которых установлены копии операционных систем. Подробное описание опций файла Boot.ini будет приведено далее в этой главе
Bootsect.dos (только в системах с двойной загрузкой, где в качестве альтернативной операционной системы используются MS-DOS, Windows 3.1 х или Windows 9x/ ME; этот файл необходим для загрузки альтернативной ОС)
Корневой каталог системного диска
Скрытый системный файл, содержащий копию загрузочного сектора, используемого для загрузки альтернативных операционных систем
Ntdetect.com
Корневой каталог системного диска
Распознаватель аппаратной конфигурации. Передает загрузчику (Ntldr) информацию об обнаруженных и распознанных аппаратных средствах
Ntbootdd.sys (только для SCSI)
Корневой каталог системного диска
Драйвер, используемый для доступа к жестким дискам SCSI. Содержимое этого файла зависит от используемого контроллера
Ntoskrnl.exe
%SystemRoot% \system32
Ядро операционной системы
Hal.dll
%SystemRoot% \system32
Уровень аппаратных абстракций — Hardware Abstraction Layer, HAL). Изолирует низкоуровневые подробности функционирования аппаратных устройств от остальной операционной системы и предоставляет API для обращения к однотипным устройствам. Дистрибутивный компакт-диск содержит различные версии HAL. Файл, который будет скопирован на ваш компьютер в процессе инсталляции, зависит от аппаратной конфигурации вашего компьютера
Улей реестра SYSTEM
%SystemRoot% \system32\Config
Ключ реестра HKEY LOCAL
MACHINE\SYSTEM
Драйверы устройств
%SystemRoot% \system32\Drivers
Файлы драйверов устройств, установленных в вашей системе


Инициализация при запуске


После успешного завершения процедуры POST начинается процесс инициализации при запуске: на компьютерах х86 системная BIOS ищет и загружает в память загрузочный сектор (boot sector), инструкции которого затем загружают файл NTLDR.
После завершения тестов POST на компьютере х8б системная BIOS пытается обнаружить загрузочный диск. Порядок поиска загрузочного диска (флоппи-дисководы, жесткие IDE- и SCSI-диски, устройства CD-ROM) задается BIOS. Современные BIOS позволяют пользователю переконфигурировать этот порядок, называемый последовательностью загрузки (boot sequence). Подробную информацию о редактировании последовательности загрузки можно найти в сопроводительной документации к вашему компьютеру. Если при этом дисковод А: включен в последовательность загрузки первым, и в нем находится дискета, BIOS попытается использовать эту дискету в качестве загрузочной. Если дискеты в дисководе нет, BIOS проверяет первый жесткий диск, который к этому времени уже инициализировался. Для запуска огромное значение имеет первый сектор жесткого диска, который содержит главную загрузочную запись (Master Boot Record, MBR) и таблицу разделов (partition table).

В дополнение к дискетам и жестким дискам, BIOS может позволять загрузку операционной системы с других загрузочных носителей, к числу которых относятся компакт-диски, сетевые адаптеры, диски Zip или LS-120.
Если вы с помощью программы BIOS Setup установили последовательность загрузки "CDROM, А, С", то BIOS в первую очередь будет пытаться найти загрузочный носитель в устройстве CD-ROM и флоппи-дисководе. Попытка загрузки с жесткого диска будет предпринята только в том случае, если ни устройство CD-ROM, ни флоппи-дисковод не содержат загрузочного носителя. Когда вы пытаетесь выполнить загрузку с дистрибутивного компакт-диска, программа Setup просматривает жесткий диск и пытается найти уже существующую установленную копию Windows Server 2003. Если такая копия будет обнаружена, то будет выведено сообщение Press any key to boot from CD-ROM. Если вы в течение 3 секунд не нажмете на любую из клавиш, то программа Setup не запустится, и вы сможете обойти загрузку с компакт-диска. Поэтому, если вы не планируете запускать программу Setup для установки Windows Server 2003 или выполнения восстановительных работ, рекомендуется извлечь из устройства CD-ROM все компакт-диски, т. к. это позволит минимизировать время, требующееся для загрузки Windows Server 2003.

Системная BIOS считывает главную загрузочную запись и загружает ее в память, а затем передает ей управление. Код, содержащийся в главной загрузочной записи, сканирует таблицу разделов в поисках системного раздела. Найдя системный раздел, MBR загружает в память его нулевой сектор и исполняет код, содержащийся в этом секторе. Сектор 0 на системном разделе, так называемый загрузочный сектор раздела (partition boot sector), содержит загрузочный код операционной системы. Этот код и осуществляет запуск операционной системы способом, определенным данной операционной системой.

Чтобы успешно выполнить загрузку Windows NT/2000/XP или Windows Server 2003 с дискеты, нужно, чтобы ее первым сектором был загрузочный сектор раздела. Кроме того, на этой дискете должны присутствовать все файлы, необходимые для загрузки. Чтобы изготовить такую дискету, отформатируйте ее под управлением Windows NT/2000/XP или Windows Server 2003 и затем скопируйте на эту дискету следующие файлы: Ntldr, Ntdetect.com, Boot.ini, Bootsect.dos (если вы имеете мультизагрузочную систему и хотите обеспечить возможность загрузки с этой дискеты всех систем, установленных на компьютере), а также Ntbootdd.sys (в случае использования жестких дисков SCSI).

Если на первом жестком диске нет системного раздела, главная загрузочная запись отобразит одно из следующих сообщений об ошибках:
 invalid partition table (Неверная таблица разделов);  Error loading operating system (Ошибка при загрузке операционной системы);  Missing operating system (Отсутствует операционная система).

Как правило, главная загрузочная запись не зависит от конкретной операционной системы. Например, на компьютерах х86 одна и та же главная загрузочная запись служит для запуска Windows NT/2000/XP, продуктов из семейства Windows Server 2003, Windows 9x/ME, а также комбинации MS-DOS/Windows З.Ъс. Что касается загрузочного сектора раздела, то он зависит как от операционной системы, так и от используемой файловой системы. На компьютерах х86 загрузочный сектор раздела систем Windows 2000, Windows ХР и Windows Server 2003 отвечает за выполнение следующих действий.
 Распознавание используемой файловой системы и ее применение для поиска загрузчика операционной системы (NTLDR) в корневом каталоге системного раздела. В томах FAT структура данных, называемая загрузочным сектором раздела, действительно имеет длину в 1 сектор физической разметки диска. В томах FAT32 эта структура занимает уже 2 сектора физической разметки диска, поскольку загрузочный код занимает более 512 байт. В томах NTFS загрузочный сектор раздела может занимать до 16 секторов, причем дополнительные секторы могут содержать код файловой системы, необходимой для поиска NTLDR.  Нахождение загрузчика операционной системы NTLDR и его загрузка в память.  Начало исполнения кода самозагрузки.

На компьютерах х86 системный раздел должен находиться на первом физическом жестком диске. Загрузочный раздел (который содержит системные файлы операционной системы) может совпадать с системным разделом, но может находиться и в другом разделе того же жесткого диска или даже на другом жестком диске.
Если первый жесткий диск не содержит системного раздела, который должен использоваться для запуска компьютера, необходимо отключить этот диск, чтобы BIOS могла получить доступ к нужному жесткому диску, с которого будет запускаться операционная система.
Если в дисководе А: имеется дискета, BIOS загрузит в память первый сектор этой дискеты. Если дискета является системной, то ее первый сектор представляет собой загрузочный сектор раздела (Partition Boot Sector). Если дискета не является загрузочной и отформатирована под управлением MS-DOS или Windows 9x, то вы увидите на экране следующее сообщение об ошибке:

Non-System disk or disk error  Replace and press any key when ready

Если же дискета не загрузочная и отформатирована в Windows NT/2000/XP или в Windows Server 2003, то сообщение будет следующим:

Ntldr is missing Press any key to restart



Работа загрузчика


Загрузчик (boot loader) позволяет выбрать операционную систему, которую требуется запустить, и загружает файлы операционной системы из загрузочного раздела. Общие задачи, выполняемые на данном этапе, сводятся к установке 32-разрядной модели памяти с прямой адресацией (flat addressing), сбору данных об аппаратной конфигурации, построению ее описания в памяти и передаче указателя на это описание в блок загрузчика. После этого NTLDR (для платформ х86) загружает образ ядра, HAL и драйверы для устройств и файловой системы тома, с которого производится загрузка системы. Помимо всего прочего, на данном этапе производится также и загрузка некоторых драйверов, для которых равен нулю параметр реестра start, расположенный под следующим ключом реестра:
HKEY_LOCAL_MACHINE\SYSTEM\ CurrentControlSet\Services\ServiceName
Здесь service/feme представляет собой имя сервиса, например:
HKEY_LOCAL_MACHINE\ SYSTEM\CurrentControlSet\Services\atapi

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

Windows could not start because the following file is missing of corrupt: \WINDOWS\SYSTEM32\CONFIG\SYSTEM You can attempt to repair this file by starting Windows Setup using the original Setup CD-ROM. Select 'r' at the first screen to start repair.

Подробную информацию о системном реестре, а также процедурах его резервного копирования и восстановления можно найти в главе 24 "Работа с системным реестром". Здесь же следует отметить, что улей реестра System в работающей системе пользователи видят в составе дерева HKEY_LOCAL_MACHINE. Этот улей определяет порядок загрузки всех драйверов системы, и доступ к нему получают как загрузчик операционной системы, так и диспетчер ввода/вывода.



Функции загрузчика 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 раз.



Выбор запускаемой операционной системы


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

Please select the operating system to start: Windows XP Professional Windows Server 2003 Windows 2000 Professional Windows NT Server Version 4.0 Windows NT Server Version 4.0(VGA mode) Use the up and down arrow keys to move the highlight to your choice. Press ENTER to choose. Seconds until highlighted choice will be started automatically: 29 For troubleshooting and advanced startup options for Windows, press F8.

Выбор операционной системы, которую требуется запустить, ничем не отличается от аналогичного процесса при работе с предшествующими версиями операционных систем из семейства Windows — Windows NT, Windows 2000 и Windows XP. Операционная система, указанная в приведенном списке первой, выбирается по умолчанию, и изначально курсор установлен на этой строке. Чтобы выбрать для запуска другую операционную систему, воспользуйтесь клавишами перемещения курсора (<t> и <1>), выделите нужную операционную систему и нажмите клавишу <Enter>.
Если вы не выберете ни один из пунктов меню к тому моменту, когда счетчик, указанный в строке:
Seconds until highlighted choice will be started automatically: 29
достигнет нуля, NTLDR загрузит операционную систему, указанную в файле Boot.ini по умолчанию. Программа Setup задает в качестве параметра по умолчанию копию операционной системы, которая была инсталлирована последней. Файл Boot.ini можно отредактировать, указав в качестве загружаемой по умолчанию операционной системы любую из установленных. Подробную информацию о содержимом файла Boot.ini и методах его редактирования см. далее в этой главе.

Если Windows XP или Windows Server 2003 является единственной операционной системой, установленной на компьютере, то меню загрузчика не появится. В этом значение тайм-аута, указанное в файле Boot.ini, будет просто проигнорировано, и операционная система запустится сразу же.



Любой пользователь, имеющий хотя бы


Любой пользователь, имеющий хотя бы небольшой опыт работы с предыдущими версиями Windows NT, сразу же заметит одно небольшое, но существенное отличие экрана загрузчика Windows 2000/XP и Windows Server 2003 от экрана загрузчика Windows NT 4.0. Это — следующая строка, расположенная в нижней части экрана:
For troubleshooting and advanced startup options for Windows, press F8
Аналогичная опция — нажатие клавиши <F8> — имелась в системах Windows 95/98/ME. Если загрузка Windows завершается неудачей, возможно, вам помогут опции отладочного меню, выводимого по нажатию клавиши <F8>. Следует отметить, что по сравнению с Windows 2000, в Windows XP и Windows Server 2003 это меню было расширено, и в нем появился целый ряд дополнительных опций.
Итак, если при появлении меню загрузки Windows XP/Windows Server 2003 нажать клавишу <F8>, то на экране появится меню следующего содержания:
Windows Advanced Options Menu Please select an option: Safe Mode Safe Mode with Networking Safe Mode with Command Prompt Enable Boot Logging Enable VGA Mode Last Known Good Configuration (your most recent settings that worked) Directory Services Restore Mode (Windows domain controllers only) Debugging Mode Start Windows Normally** Reboot** Return to OS Choices Menu** Use the up and down arrow keys to move the highlight to your choice. * Опция усовершенствована по сравнению с Windows 2000. ** Новые опции, введенные в Windows XP.

Это меню будет оставаться на экране до выбора одной из опций.
При загрузке в безопасном режиме (safe mode) операционная система использует стандартные параметры настройки (монитор VGA, без сетевых средств, с минимальным количеством драйверов — фактически запускаются только драйверы, необходимые для загрузки Windows). Например, если после инсталляции нового программного обеспечения Windows перестала запускаться, то вполне возможно, что загрузка в безопасном режиме позволит выполнить запуск операционной системы с минимальным количеством сервисов и драйверов. После загрузки вы сможете изменить параметры настройки компьютера, не позволяющие осуществить корректную загрузку, или удалить программное обеспечение, вызвавшее эти проблемы. Ниже кратко описаны опции дополнительного меню загрузки. 
 Safe Mode (Безопасный режим)
Если пользователь выбирает эту опцию, то при запуске Windows загружаются только базовые файлы и драйверы, абсолютно необходимые для работы (стандартные драйверы мыши и клавиатуры, накопителей, базовый драйвер видеоадаптера VGA и минимальный объем стандартных системных сервисов). Если Windows невозможно загрузить даже с использованием этого режима, то, вероятнее всего, потребуется выполнять процедуру восстановления поврежденной системы. Подробная информация по данному вопросу и пошаговые инструкции по проведению процедуры восстановления приведены в главе 23 "Восстановление системы".
 Safe Mode with Networking (Безопасный режим с загрузкой сетевых драйверов)
Если выбрана данная опция, то Windows загружается с использованием только базовых файлов и драйверов (как и в случае с выбором предыдущей опции), но в дополнение делается попытка запуска сетевых служб и восстановления сетевых подключений.
 Safe Mode with Command Prompt (Безопасный режим с поддержкой командной строки)
Выбор этой опции приводит к попытке запуска Windows с использованием только базовых файлов и драйверов, и вместо графического интерфейса Windows отображает на экране окно командной строки.
 Enable Boot Logging (Включить протоколирование загрузки)
При выборе этой опции Windows Server 2003 будет записывать протокол загрузки в файл %SystemRoot%\Ntbt\og.txL Действие этой опции аналогично включению параметра /BOOTLOG в файле Boot.ini (см. табл. 3.3).
 Enable VGA Mode (Включить режим VGA)
После выбора данной опции компьютер загружается с использованием стандартного драйвера VGA. Аналогичный результат дает применение параметра /BASEVIDEO в файле Boot.ini (см. табл. 3.3).
 Last Known Good Configuration (your most recent settings that worked) (Загрузка последней удачной конфигурации)
Такая опция существовала и в Windows NT 4.0/Windows 2000. Однако ее использование в более новых версиях операционной системы (Windows ХР и продуктах из семейства Windows Server 2003) имеет различия, которые необходимо рассмотреть более подробно. При выборе данной опции в Windows 2000 операционная система запускается с использованием информации реестра, сохраненной сразу же после успешного запуска (критерием успешного запуска во всех ОС, построенных на основе ядра Windows NT, является успешная регистрация в системе хотя бы одного пользователя). Следует сразу же отметить, что в Windows NT/2000 эта опция позволяет исправить только ошибки конфигурирования системы, да и то не всегда. Использовать ее рекомендуется лишь в тех случаях, когда точно известно о допущенной конфигурационной ошибке. Проблемы, вызванные отсутствием или повреждением системных файлов или драйверов, использование этой опции исправить не поможет. Помимо этого, следует помнить, что все изменения, внесенные после последнего успешного запуска Windows NT/2000, в случае применения этой опции будут потеряны.
С выпуском Windows XP в состав этой опции были введены дополнительные усовершенствования. В отличие от Windows NT/2000, Windows ХР и Windows Server 2003 перед установкой обновленных версий драйверов создают резервные копии драйверов, использующихся на текущий момент. При выборе опции будут восстановлены не только параметры реестра, сохраненные после последней успешной загрузки, но и все драйверы, которые при этом использовались. Таким образом, применение этой опции в Windows ХР и Windows Server 2003 позволит восстановить систему не только после конфигурационных ошибок, но и после установки несовместимых приложений и драйверов, приводящих к нестабильной работе или препятствующих загрузке Windows.
 Directory Services Restore Mode (Windows domain controllers only) (Восстановление службы каталогов (только на контроллерах домена Windows))
Если вы пытаетесь исправить проблемы с загрузкой Windows ХР или обычного сервера Windows Server 2003, эту опцию использовать не следует, поскольку она предназначена только для серверов, являющихся контроллерами домена. Как следует из ее названия, данная опция предназначена для восстановления службы каталога.
 Debugging Mode (Режим отладки)
Эта опция запускает Windows и устанавливает отладочный режим, при котором отладочная информация пересылается по последовательному кабелю на другой компьютер.
 Start Windows Normally (Обычная загрузка Windows)
Как и следует из названия этой опции, она позволяет выполнить запуск Windows XP или Windows Server 2003 в нормальном режиме. Данная опция была впервые введена в Windows XP.
 Reboot (Перезагрузка)
Когда пользователь выбирает эту опцию, процесс загрузки повторится с самого начала (с выполнения процедуры POST). Данная опция была впервые введена в Windows XP.
 Return to OS Choices Menu (Вернуться к выбору операционной системы)
Возвращает к экрану загрузчика, позволяющему выбрать загружаемую операционную систему. Данная опция была впервые введена в Windows XP.
Как уже было указано, три последние опции впервые появились в Windows XP. Хотя они и не представляют никаких принципиально новых возможностей, они все же делают работу с отладочным меню гораздо более удобной по сравнению с Windows 2000.

Распознавание аппаратных средств


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



Выбор конфигурации (аппаратного профиля)


Если для загрузки выбрана операционная система Windows XP или Windows Server 2003, и в ней имеется только один профиль аппаратной конфигурации, то после того, как загрузчик получит информацию об аппаратных средствах компьютера, он продолжит процедуру загрузки, запустив ядро операционной системы Ntoskrnl.exe и передав ему информацию, собранную программой Ntdetect.com.
Если в системе создано несколько профилей аппаратной конфигурации, и загрузчик не может определить, какой из них должен быть загружен, то на экране появится следующая информация:

Hardware Profile/Configuration Recovery Menu This menu allows you to select a hardware profile to be used when Windows is started. If your system is not starting correctly, then you may switch to a previous system configuration, which may overcome startup problems. IMPORTANT: System configuration changes made since the aast successful startup will be discarded. Profile 1 Profile 2 Profile 3 Use the up and down arrow keys to move the highlight to the selection you want. Then press ENTER. To switch to the Last Known Good Configuration, press 'L'. To Exit this menu and restart your computer, press F3. Seconds until highlighted choice will be started automatically: 5

После этого загрузчик в течение пяти секунд ожидает, давая пользователю возможность выбрать один из существующих профилей аппаратной конфигурации или одну из перечисленных опций (нажатием клавиши <L> или клавиши <F3>).
Первый аппаратный профиль выделен курсором. Чтобы использовать для загрузки другой аппаратный профиль, клавишами со стрелками переместите курсор к нужной опции и нажмите клавишу <Enter>.

Для настольных компьютеров Windows XP создает один аппаратный профиль по умолчанию, включающий в свой состав все аппаратные компоненты, обнаруженные при установке системы. Для портативных компьютеров Windows XP создает два аппаратных профиля по умолчанию (Docked Profile и Undocked Profile) и выбирает нужный профиль в зависимости от того, используется ли портативный компьютер в качестве dock-станции или независимо. Хотя поддержка Plug and Play в значительной степени исключает необходимость ручного создания и конфигурирования аппаратных профилей, они все же могут быть весьма полезны.



Загрузка ядра


Получив информацию об аппаратных средствах компьютера и выбранном аппаратном профиле, Ntldr загружает в память уровень аппаратных абстракций (Hal.dll) и ядро операционной системы Ntoskrnl.exe. Загрузив и запустив ядро, Ntldr передает ему информацию, собранную программой Ntdetect.com.
Информация о выбранном аппаратном профиле передается загрузчику, когда пользователь нажимает клавишу <Enter> в меню Hardware Profile/ Configuration Recovery. Помимо этого, загрузчик может сделать выбор автоматически по истечении указанного интервала времени (или в случае, если в системе существует только один аппаратный профиль). На данном этапе ядро и уровень аппаратных абстракций еще не инициализированы. Далее загрузчик просматривает реестр и загружает улей HKEY_LOCAL_MACHINE\ SYSTEM из файла %SystemRoot%\system32\Config\System.

В Windows NT/2000 загрузчик на данном этапе извлекал информацию о заданном по умолчанию или определенном пользователем размере реестра (registry quota). Как будет показано в главе 24 "Работа с системным реестром", в Windows XP и Windows Server 2003 необходимость в ограничении по размеру реестра отпала.

На данном этапе загрузчик активизирует API для работы с реестром и создает набор управляющих параметров (control set), который будет использоваться для инициализации компьютера. Эти задачи являются подготовительными для загрузки драйверов. Значение, заданное в ключе реестра HKEY_LOCAL_MACHiNE\SYSTEM\select (рис. 3.1), определяет, какой набор управляющих параметров из перечисленных в ключе HKEY_LOCAL_MACHINE\SYSTEM должен использоваться при загрузке. По умолчанию загрузчик использует набор управляющих параметров, определяемый значением Default. Если пользователь выбрал последнюю успешно загруженную конфигурацию (LastKnownGood), то загрузчик использует набор управляющих параметров, определяемых значением LastKnownGood. На основании сделанного пользователем выбора и значения ключа Select загрузчик определяет, какой из наборов управляющих параметров (controlSet00x) будет использоваться. После этого загрузчик устанавливает значение Current ключа Select на номер набора управляющих параметров, который он будет использовать.



Рис. 3.1. Ключ реестра HKEY_LOCAL_MACHINE\SYSTEM\Select

Далее загрузчик сканирует все сервисы (службы), определенные ключом реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services, И ищет драйверы устройств, для которых значение start равно 0x0 (такое значение указывает на то, что драйверы должны быть загружены, но не инициализированы). Как правило, драйверы с такими значениями представляют собой низкоуровневые драйверы устройств, например, драйверы дисков. Значение Group для каждого драйвера устройства определяет порядок, в котором загрузчик должен его загружать. Ключ HKEY_LOCAL_MACHINE\SYSTEM \CurrentControlSet\Control\ServiceGroupOrder реестра определяет порядок загрузки.
К моменту завершения этой фазы все базовые драйверы загружены и активны, за исключением случаев, когда один из критически важных драйверов не инициализировался, вследствие чего началась перезагрузка системы.



Инициализация ядра


В системах Windows 2000, Windows XP и Windows Server 2003. об инициализации ядра сигнализирует появление графической заставки (рис. 3.2). Это — чисто "косметическое" отличие от Windows NT 4.0, которое не меняет принципов загрузки Windows 2000/XP и Windows Server 2003 по сравнению с предыдущей версией системы.



Рис. 3.2. Появление графической заставки сигнализирует о начале инициализации ядра

Хотите убедиться в справедливости сказанного? Нет ничего проще. Добавив ключ /SOS в строку файла Boot.ini, управляющего содержимым меню загрузчика и режимом загрузки операционной системы, перезагрузите компьютер. Использование этой опции позволяет пользователю видеть всю последовательность загрузки драйверов.
Ядро создает ключ HREY_LOCAL_MACHINE\HARDWARE, используя информацию, полученную от загрузчика. Ключ HKEY_LOCAL_MACHINE\HARDWARE содержит данные об аппаратных средствах, распознавание которых осуществляется каждый раз при запуске системы. В состав этих данных входит информация об аппаратных компонентах на системной плате и о прерываниях, используемых конкретными аппаратными устройствами.
Ядро создает набор опций управления Clone, копируя в него опции управления из набора CurrentControlSet. Набор опций управления Clone никогда не модифицируется, т. к. он должен представлять собой полностью идентичную копию данных, которые использовались для конфигурирования компьютера и не должны отражать изменений, внесенных в ходе процесса запуска.
На стадии инициализации ядро выполняет следующие операции:
1. Инициализирует низкоуровневые драйверы устройств, загруженные на предыдущей стадии.
2. Загружает и инициализирует остальные драйверы устройств.
3. Запускает программы, например Chkdsk, которые должны отработать прежде, чем будут загружены какие-либо сервисы.
4. Загружает и инициализирует сервисы.
5. Создает файл подкачки pagefile.sys.
6. Запускает подсистемы, необходимые для работы Windows.

Windows XP и Windows Server 2003, в отличие от Windows NT/2000, выполняют параллельную инициализацию драйверов. Это сделано с целью ускорения процесса загрузки. Вместо того, чтобы ожидать инициализации предыдущего драйвера для того, чтобы начать инициализацию следующего, эти операции теперь выполняются параллельно. Таким образом, определяющее влияние на общее время загрузки оказывает самое медленное устройство.



Регистрация пользователя в системе


Подсистема Win32 автоматически запускает процесс WinLogon.exe, который, в свою очередь, запускает процесс Диспетчера локальной безопасности (Local Security Authority, Lsass.exe). После завершения инициализации ядра необходимо произвести регистрацию пользователя в системе. Процедура регистрации может быть произведена автоматически на основании информации, хранящейся в реестре, или вручную. При ручной регистрации пользователя, в зависимости от выбранного способа регистрации в системе, появляется диалоговое окно Welcome to Windows с текстом Press Ctrl+Alt+Delete to begin. В любом случае, к этому моменту Windows XP/Windows Server 2003, как и Windows 2000, может еще продолжать инициализацию сетевых драйверов, однако пользователю уже разрешается зарегистрироваться в системе.
На данном этапе Service Control Manager выполняет загрузку автоматически стартующих сервисов, для которых значение start, расположенное в ключе реестра HKEY_LOCAL_MACHINE\SYSTEM\ CurrentControlSet\Services\DriverWame, установлено равным 0x2. На этом этапе сервисы загружаются с учетом установленных для них зависимостей, поскольку их загрузка осуществляется параллельно. Зависимости описываются значимыми элементами DependOnGroup и DependOnService, расположенными под ключом реестра HKEY_LOCAL_MACHINE\SYSTEM\ CurrentControlSet\Services\DriverWame.
Кроме того, одновременно с появлением окна Welcome to Windows или окна Log On to Windows выполняется запуск сервисов, перечисленных в реестре под следующими ключами:
 HKEY_LOCAL_MACHINE\Software\Microsoft\ Windows\CurrentVersion\RunServicesOnce  HKEY_LOCAL_MACHINE\Software\Microsoft\ Windows\CurrentVersion\RunServices

Как и для предыдущих версий Windows NT/ 2000, загрузка Windows XP/Windows Server 2003 не считается успешной до тех пор, пока в системе не зарегистрируется пользователь. После этого набор управляющих опций clone копируется В LastKnownGood.

После регистрации пользователя в системе происходят следующие процессы.
 Обновление наборов управляющих параметров. Набор управляющих параметров, на который ссылается параметр реестра LastKnownGood, заменяется содержимым параметра clone, который создается каждый раз при запуске компьютера.  Входят в силу параметры настройки групповой политики (Group Policy settings). Происходит считывание параметров, задаваемых групповой политикой как в отношении компьютера, так и в отношении пользователя, зарегистрировавшегося в системе.  Происходит запуск программ из группы Startup. Windows запускает регистрационные скрипты (logon scripts), а также программы и сервисы, указанные следующими ключами реестра или находящиеся в перечисленных ниже папках:  HKEY_LOCAL_MACHINE\Software\Microsoft\ Windows\CurrentVersion \Runonce  HKEY_LOCAL_MACHINE\Software\Microsoft\ Windows\CurrentVersion\ policies\Explorer\Run  HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ Windows\CurrentVerslon\Run  HKEY_CURRENT_USER\SOFTWARE\Microsoft\ Windows\CurrentVersion\Run  systemdrive\Documents and Settings\All Users\Start Menu\Programs \Startup  systemdrive\Documents and Settings\username\Start Menu\Programs \Startup  windir\Profiles\All Users\Start Menu\Programs\Startup  windir\Profiles\username\Start Menu\Programs\Startup

Две папки, перечисленные последними в этом списке, существуют только в системах, установленных как обновление с Windows NT 4.0.

Процесс распознавания устройств Plug and Play запускается параллельно процессу регистрации в системе. Этот процесс использует информацию системной BIOS, а также информацию об аппаратных средствах и драйверах устройств, полученную в процессе запуска системы. Если в систему были добавлены новые устройства Plug and Play, которые были правильно подключены, то на данном этапе система их распознает и выполнит их энумерацию (enumeration), или перечисление. Как правило, обнаружение новых устройств, выделение им аппаратных ресурсов, установка драйверов новых устройств происходят в автоматическом режиме при минимальном вмешательстве пользователя. Более подробная информация по данному вопросу была приведена в главе 2 "Поддержка оборудования".



Файл Boot.ini


При инсталляции Windows NT/2000/XP или Windows Server 2003 на компьютерах х86 программа инсталляции помещает в корневой каталог системного раздела файл Boot.ini. NTLDR использует информацию из этого файла для отображения экрана, позволяющего пользователю выбирать операционную систему для загрузки.
Пример файла Boot.ini приведен ниже.

[boot loader] timeout=30 default=multi(0)disk(0)rdisk(0)partition(2)\WINXP [operating systems] multi(O)disk(O)rdisk(0)partition(1)\WINNT=" Microsoft Windows 2000 Professional" /fastdetect /noguiboot multi"(0)disk(0)rdisk(0)partition(2)\WINXP=" Microsoft Windows XP Professional" /fastdetect multi (0)disk(0)rdisk(0)partition(3)\WINDOWS=" Windows Server 2003, Standard" /fastdetect С:\CMDCONS\BOOTSECT.DAT="Microsoft Windows Recovery Console" /cmdcons C:\="Microsoft Windows"

Файл Boot.ini состоит из разделов [boot loader] и [operating systems], описанных ниже.



Раздел [boot loader]


Параметры, содержащиеся в этом разделе, описаны в табл. 3.2.

Таблица 3.2. Параметры, используемые в разделе [boot loader] файла Boot.ini

Параметр
Описание
timeout
Количество секунд, имеющееся в распоряжении пользователя для того, чтобы выбрать загружаемую операционную систему в меню загрузки, отображенном на экране. Если по истечении этого срока выбор операционной системы не сделан, NTLDR начнет загрузку операционной системы по умолчанию. Если значение параметра timeout равно 0, загрузчик сразу же начинает загрузку операционной системы по умолчанию, не позволяя пользователю сделать выбор. Если значение этого параметра установить на -1, то загрузчик будет ожидать выбора пользователя неограниченно долго. Значение -1 не воспринимается как допустимое в группе параметров System на панели управления, где задается значение timeout; поэтому для того, чтобы установить параметр timeout в —1 , вы должны вручную отредактировать файл Boot.ini
default
Путь к операционной системе, загружаемой по умолчанию

Меню загрузки не появится, если на компьютере установлена только одна копия Windows XP или Windows Server 2003. В этом случае загрузчик будет игнорировать значение параметра timeout и немедленно запустит операционную систему.

Раздел [operating systems]


Этот раздел содержит список доступных для загрузки операционных систем. Каждая запись указывает путь к загрузочному разделу операционной системы, строку для отображения на экране в процессе загрузки и необязательные параметры.
Файл Boot.ini поддерживает загрузку множества версий операционных систем, построенных на основе ядра Windows NT (включая Windows 2000, Windows XP и продукты из семейства Windows Server 2003), а также запуск других операционных систем. В число альтернативных операционных систем, которые можно указать для загрузки в файле Boot.ini, входят Windows 9x, MS-DOS, а также OS/2, Linux и UNIX. Более подробную информацию об организации систем с двойной загрузкой можно найти в главе 1 "Планирование и установка системы".
Записи в разделе [operating systems] файла Boot.ini допускают использование ряда параметров (табл. 3.3). В этих параметрах строчные и заглавные буквы не различаются. Параметры, доступные только в Windows 2000/XP и Windows Server 2003, помечены символом звездочки (*).

Таблица 3.3. Параметры, используемые в разделе [operating systems] файла Boot.ini

Параметр
Описание
/BASEVIDEO
Компьютер загружается с использованием стандартного драйвера VGA. Если вы инсталлируете новый драйвер видеоадаптера, но он работает некорректно, выбор режима загрузки Windows 2000/XP или Windows Server 2003 с этим параметром позволит загрузить компьютер и заменить драйвер
/BAUDRATE
Указывает скорость в бодах, которая будет использоваться для отладки. Если вы не установите скорость в бодах, то по умолчанию будет принята скорость 9600 (если к компьютеру подключен модем), и 19 200 — для нуль-модемного кабеля. Параметр оказывает побочный эффект, устанавливая также параметр /DEBUG вне зависимости от того, используете ли вы /DEBUG или нет
/BOOTLOG*
Если указан этот параметр, то Windows 2000/XP или Windows Server 2003 будет записывать протокол загрузки в файл %SystemRoof%\Ntbtlog.txt. Этот файл указывает, какие драйверы были загружены и какие остались незагруженными
/CRASHDEBUG
Отладчик загружается при запуске Windows 2000/XP или Windows Server 2003, но остается в неактивном состоянии до тех пор, пока не произойдет ошибка ядра. Этот режим особенно полезен, если в процессе вашей работы имеют место редкие непредсказуемые ошибки ядра
/DEBUG
Отладчик загружается при запуске Windows 2000/XP или Windows Server 2003 и может активизироваться в любой момент хостом отладчика, подключенным к компьютеру. Этот режим рекомендуется использовать при отладке регулярно возникающих проблем
/DEBUGPORT= COMx
Указывает СОМ-порт для использования при отладке, где х — номер коммуникационного порта, который вы собираетесь использовать. Как и ключ /BAUDRATE, этот ключ принудительно переводит компьютер в отладочный режим
/FASTDETECT*
Этот параметр был впервые введен с появлением Windows 2000. Если на компьютере установлены ОС Windows NT 4.0, Windows 2000/XP и Windows Server 2003, то в процессе загрузки обеих операционных систем будет использоваться версия Ntdetect.com из более новой версии ОС. На этапе распознавания аппаратных средств в операционных системах, поддерживающих Plug and Play (начиная с Windows 2000), некоторые устройства распознаются драйверами Plug and Play, в то время как Windows NT 4.0, вследствие ограниченности поддержки Plug and Play, выполняет распознавание только с помощью Ntdetect. Если параметр /FASTDETECT указан, то Ntdetect не пытается распознавать такие устройства. Если нет, то Ntdetect будет выполнять энумерацию аппаратных средств в полном объеме. Таким образом, если вы имеете систему с двойной загрузкой, где на одном компьютере установлены Windows NT 4.0 и более поздние версии ОС из этого семейства, данный переключатель должен быть установлен для строк файла Boot.ini, запускающих Windows 2000/XP или Windows Server 2003, и пропущен для строк, осуществляющих запуск Windows NT 4.0
/MAXMEM
Определяет максимальный объем памяти (RAM), доступный для использования Windows. Этот параметр полезен, если вы подозреваете повреждение чипа памяти
/NODEBUG
При использовании этого параметра отладочная информация на экран не выводится
/NOGUIBOOT*
Новый параметр, появившийся в Windows 2000. Если он указан, то драйвер VGA, выполняющий вывод графической заставки в процессе загрузки системы, не инициализируется. Поскольку этот драйвер используется не только для отображения графической заставки, но и для отображения "синего экрана" (BSOD, Blue Screen of Death), то его блокировка приведет также к блокировке этой диагностической возможности
/NOSERIALMICE= [COMx,y, z, . . .]
Блокирует определение последовательной мыши на указанных СОМ-портах. Этот режим рекомендуется использовать, если вы имеете другой компонент (не мышь), подключенный к последовательному порту в процессе запуска. Если использовать параметр /NOSERIALMICE без указания СОМ-порта, то определение последовательной мыши будет блокировано для всех СОМ-портов
/SAFEBOOT*
Новый параметр, появившийся в Windows 2000. Стоит отметить, что практически никогда нет необходимости устанавливать его вручную, т. к. при нажатии клавиши <F8> загрузчик (NTLDR) автоматически использует его для выполнения загрузки в безопасном режиме (safe boot). Чтобы задать одну из опций безопасного режима загрузки, укажите двоеточие после этого параметра и задайте один из трех дополнительных переключателей: MINIMAL (опция Safe Mode), NETWORK (опция Safe Mode with Network) или DSREPAIR (опция Directory Services Repair). Как уже упоминалось ранее в этой главе, загрузка в безопасном режиме представляет собой режим загрузки, при котором Windows загружает только драйверы и сервисы, перечисленные поименно в ключах реестра Minimal и/или Network, расположенных В ключе HKLM\System\CurrentControlSet\ ControlXSafeBoot. Опция DSREPAIR применима только для контроллеров домена под управлением Windows 2000 Server или Windows Server 2003. Ее использование приводит к загрузке контроллера в режиме восстановления Active Directory; сами службы Active Directory при этом не запускаются.
Переключатель /SAFEBOOT имеет еще одну дополнительную опцию— ALTERNATESHELL. Если вы укажете эту опцию, то в качестве графической оболочки Windows будет использовать программу, которая указана в составе ключа HKLM\ SystemXCurrent ControlSet \SafeBoot \Altemate Shell как альтернативная графическая оболочка. По умолчанию применяется стандартная графическая оболочка — Explorer
/SOS
При использовании этого параметра на экране отображаются имена всех загружаемых драйверов. Данный параметр рекомендуется использовать, если Windows 2000, Windows XP или Windows Server 2003 не стартуют, и вы подозреваете отсутствие какого-либо драйвера


Редактирование файла Boot.ini


Программа установки операционных систем Windows NT, Windows 2000, Windows XP и Windows Server 2003 помещает в корневой каталог системного раздела файл Boot.ini, формат и опции которого были рассмотрены в предыдущих разделах. Как и в Windows NT 4.0, этот файл получает атрибуты "только для чтения" (Read Only), "системный" (System) и "скрытый" (Hidden). Простейший и наиболее безопасный метод изменения файла Boot.ini — использовать значок System на панели управления. Для этого в меню Start (Пуск) выберите команду Control Panel | System (Панель управления | Система), в раскрывшемся окне перейдите на вкладку Advanced (Дополнительно) и нажмите кнопку Startup and Recovery (Загрузка и восстановление). Раскроется окно Startup and Recovery (рис. 3.3).



Рис. 3.3.Окно Startup and Recovery предоставляет простейший и наиболее безопасный метод изменения файла Boot.ini

В Windows 2000 окно Startup and Recovery позволяло указать операционную систему, запускаемую по умолчанию, а также задать временной интервал, в течение которого на экране будет оставаться меню загрузки, позволяющее пользователю выбрать операционную систему, отличную от указанной по умолчанию. В дополнение к этим возможностям, Windows XP и Windows Server 2003 позволяют также задать временной интервал, в течение которого на экране будут отображаться опции отладочного меню. Наконец, особого внимания заслуживает возможность ручного редактирования файла Boot.ini. Теперь, чтобы открыть файл Boot.ini для ручного редактирования с помощью текстового редактора Notepad, достаточно нажать кнопку Edit в окне Startup and Recovery. Удобство этой опции сложно переоценить, поскольку в Windows NT/2000 для этого требовалось предварительно снимать с файла Boot.ini атрибут защиты от записи, а затем, после сохранения внесенных изменений, восстанавливать этот атрибут.



Диагностика проблем, возникающих на этапе загрузки системы


Здесь обсуждаются действия, которые можно предпринять для выяснения причин, препятствующих успешной загрузке системы Windows Server 2003. Далее будут кратко рассмотрены ситуации, когда компьютер "зависает" или отображает сообщение об ошибке прежде, чем пользователь получает возможность зарегистрироваться в системе. Помимо этого, будут перечислены возможные причины возникновения проблем с диском и пути устранения этих неполадок.
Существует целый ряд причин, по которым компьютер не может успешно выполнить загрузку. Первый шаг в их выявлении — определение времени возникновения проблемы. Например, если на компьютерах х86 проблема возникает до появления экрана загрузчика, то причиной ее возникновения может быть как аппаратный сбой, так и повреждение главной загрузочной записи, таблицы разделов или загрузочного сектора раздела.
К таким повреждениям может привести ряд факторов. Например, на компьютерах х86 прерывание BIOS INT 13 часто используется вирусами для самоинсталляции. Windows 2000/XP и Windows Server 2003 перехватывают прерывания INT 13, но только в том случае, когда система уже загрузилась. Если компьютер загрузить с помощью системной дискеты MS-DOS, а также в том случае, когда система с двойной загрузкой загружается под управлением MS-DOS, Windows NT/2000/XP и Windows Server 2003 не могут защитить себя от такой угрозы. В Microsoft Knowledge Base есть ряд статей с рекомендациями по защите компьютера от вирусов и описанием методов восстановления системы, поврежденной вирусами.
Если проблема возникает уже после появления меню загрузчика и выбора в нем Windows Server 2003, то причина может быть в том, что файлы, необходимые для загрузки операционной системы, отсутствуют или повреждены.
В случае инсталляции новых физических устройств или новых драйверов причиной проблем с загрузкой системы могут быть изменение конфигурации системы и ее несовместимость с этими устройствами или драйверами.



Проблемы, возникающие до появления экрана загрузчика


Здесь описаны проблемы, которые могут возникнуть на этапе между включением компьютера и появлением экрана загрузчика. Их симптомы перечислены в табл. 3.4.

Таблица 3.4. Симптомы проблем, возникающих до появления экрана загрузчика

Симптом
Возможная причина
Процедура POST завершается аварийно, параметры настройки CMOS не сохраняются
Повреждена энергонезависимая память CMOS или требуется замена батареи, поддерживающей сохранение параметров CMOS
Процедура POST отображает одно из следующих сообщений:
Hard disk error. Hard disk absent/failed.
Процедура самотестирования при включении (POST) сигнализирует о неисправных или неправильно установленных устройствах.
Для устранения аппаратных неполадок рекомендуется тщательно изучить сопроводительную документацию, поставляемую в комплекте с вашим компьютером, а также выполнить проверку базовых аппаратных средств. В частности, необходимо убедиться в том, что все кабели правильно подключены, а все внутренние устройства правильно установлены. Помимо этого, убедитесь в том, что все периферийные устройства (например, клавиатура), необходимые для завершения процедуры POST, правильно подключены и работоспособны. Если речь идет о подключении жестких дисков, убедитесь в правильности установки DIP-переключателей и перемычек (jumpers)
Появление сообщений, подобных следующим:
Missing operating system.
Insert a system diskette and restart the system.
Повреждена главная загрузочная запись (MBR).
Простейшим методом восстановления поврежденной MBR является использование Recovery Console с последующим запуском команды
FIXMBR.
Эта команда использует следующий синтаксис:
Fixmbr [device_name]
Здесь device_name— диск, для которого требуется восстановить поврежденную MBR, например:
fixmbr \Device\HardDisk0
Если параметр device_name пропущен, то MBR будет переписана для диска, с которого выполняется загрузка операционной системы. Обратите внимание на то, что вам будет предложено подтвердить свое намерение в том случае, если будет обнаружена поврежденная таблица разделов
Появление сообщений, подобных следующим:
Invalid partition table.
A disk-read error occurred.
Повреждена таблица разделов.
Устранить эту проблему можно с помощью утилиты DiskProbe (она входит, например, в состав Windows XP Resource Kit) или любого другого низкоуровневого дискового редактора. Чтобы быть во всеоружии на случай возникновения подобной проблемы, рекомендуется предварительно создать резервную копию MBR и таблицы разделов с помощью утилиты DiskProbe.
Обратите внимание, что если повреждена не только таблица разделов, но и MBR, то, скорее всего, вы не сможете запустить Windows. Перед восстановлением таблицы разделов (например, с помощью DiskProbe) вам потребуется запустить Recovery Console для замены поврежденной MBR
Невозможность получить доступ к меню загрузчика и запустить Windows после попытки организовать мультизагрузочную систему
Загрузочный сектор Windows переписан загрузочным сектором другой операционной системы.
В составе Recovery Console имеется команда FIXBOOT, позволяющая выполнить замену перезаписанного загрузочного сектора
Появление сообщений, подобных следующим:
Couldn't find loader
Please insert another disk.
Загрузчик (Ntldr) отсутствует или поврежден.
Для замены одного или несколькоих поврежденных системных файлов пригодными к использованию резервными копиями следует загрузить параллельную копию операционной системы, выполнить загрузку с загрузочных дискет или воспользоваться возможностями Recovery Console
Сообщение об отсутствии или повреждении Ntoskrnl.exe, Ntdetect.com или улья реестра
SYSTEM
Один из файлов, необходимых для загрузки, отсутствует или поврежден. К числу возможных причин можно также отнести неверную установку параметров в файле Boot.ini.
Для замены одного или нескольких поврежденных системных файлов пригодными к использованию резервными копиями следует загрузить параллельную копию операционной системы, выполнить загрузку с загрузочных дискет или воспользоваться возможностями Recovery Console
Появление "синего экрана" (сообщение STOP)
Причины могут носить как аппаратный, так и программный характер


Устранение аппаратных проблем


Как правило, аппаратные проблемы проявляют себя уже на ранних этапах загрузки. Признаком таких проблем являются аварийное завершение процедуры POST, появление экрана сообщения STOP или одного из следующих симптомов:
 сразу после завершения фазы самотестирования (POST) компьютер "зависает";  экран загрузчика не появляется;  на экране появляются сообщения об ошибках следующего типа:  Missing operating system (Отсутствует операционная система);  A disk read error occurred (Ошибка чтения диска);  Insert a system diskette and restart the system (Вставьте системную дискету и перезагрузите систему);  invalid partition table (Неверная таблица разделов);  Hard Disk Error (Ошибка жесткого диска);  Hard Disk Absent/Failed (Жесткий диск отсутствует/отказал).

Вполне возможно, что в этой ситуации запустить компьютер вообще не удастся. Если все основные разделы отформатированы для применения файловой системы NTFS, использование утилит MS-DOS не поможет. Если у вас под рукой есть загрузочная дискета Windows Server 2003, изготовленная в соответствии с рекомендациями, данными ранее в этой главе, попробуйте воспользоваться этой дискетой. Если вы не можете запустить компьютер посредством загрузочной дискеты и восстановление системы с помощью процесса автоматического восстановления системы (ASR) не помогло решить проблему, попробуйте снять жесткий диск и установить его вторым диском на другом компьютере с Windows 2000/XP или Windows Server 2003. После этого вы сможете работать с этим диском, используя утилиты Windows 2000/XP или Windows Server 2003.

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

Описанные выше проблемы могут возникнуть по одной из следующих причин. 
 Отсутствие системного раздела на первом жестком диске.   Повреждена главная загрузочная запись.   Поврежден загрузочный сектор раздела.  Испортилась микросхема CMOS (или разрядилась ее батарея).   Аппаратный сбой.

Если по каким-то причинам на диске отсутствует файл Boot.ini, но какая-то система (при наличии нескольких систем) инсталлирована в каталог по умолчанию, т. е. C:\WINDOWS, загрузка этой системы все-таки произойдет.



Устранение проблем с системным разделом


Когда на компьютерах х86 выполняется загрузка с жесткого диска, системный код BIOS определяет загрузочный диск (обычно диск 0) и считывает главную загрузочную запись. Код, содержащийся в главной загрузочной записи, ищет системный раздел на жестком диске. Если он не может найти системный раздел или Windows не может стартовать из этого раздела, процесс запуска останавливается. Появление сообщения об ошибке типа "Error loading operating system" указывает, что код главной загрузочной записи нашел системный раздел, но не может запустить операционную систему.
Возможно, что на жестком диске, с которого вы пытаетесь загрузить операционную систему, вообще нет системного раздела. Кроме того, не исключена ситуация, когда в качестве системного указан другой раздел.

Системный раздел — это основной раздел на загрузочном диске (как правило, диск 0), индикатор загрузки которого (Boot Indicator) установлен в значение 0x80. Этот раздел содержит файлы, необходимые для загрузки Windows NT/2000/XP и Windows Server 2003 (такие как NTLDR, Ntdetect.com и Boot.ini).
Утилита Fdisk показывает системный раздел как активный (active partition).

В качестве системного раздела может использоваться только основной раздел. Логический диск в дополнительном разделе для этой цели использовать нельзя. Установить новый системный раздел можно с помощью оснастки Disk Management в Windows 2000, Windows XP или Windows Server 2003, программы Windows NT 4.0 Disk Administrator или посредством программы MS-DOS Fdisk. Все эти программы устанавливают поле Boot Indicator для раздела, который определяется как системный, и сбрасывают это поле для раздела, который был системным ранее.
Если загрузку операционной системы невозможно выполнить вследствие отсутствия или неправильной установки системного раздела, воспользуйтесь утилитой MS-DOS Fdisk.



Устранение проблем с главной загрузочной записью


Здесь описаны проблемы с главной загрузочной записью. Функции кода главной загрузочной записи:
 считывание таблицы разделов, расположенной в том же секторе;   определение местоположения загрузочного сектора раздела;  загрузка и выполнение кода, расположенного в загрузочном секторе раздела.

Если код главной загрузочной записи оказывается не в состоянии выполнить эти задачи, отображается одно из следующих сообщений об ошибках:
 Missing operating system (Отсутствует операционная система)   invalid partition table (Неверная таблица разделов).

Для восстановления поврежденной главной загрузочной записи можно воспользоваться консолью восстановления (Recovery Console). Recovery Console представляет собой консоль с интерфейсом командной строки, которая позволяет выполнять многие административные задачи и восстановительные операции. Запускать Recovery Console можно из программы установки Windows Server 2003 или включить ее в качестве одной из опций в меню загрузки. Более подробную информацию об установке и использовании Recovery Console можно найти в главе 23 "Восстановление системы", здесь же отметим, что в число задач, которые можно выполнить с ее помощью, входит и восстановление поврежденной главной загрузочной записи.



Устранение проблем с загрузочным сектором раздела


Существует несколько известных вирусов, способных вызывать проблемы с загрузочным сектором раздела даже тогда, когда том отформатирован для использования файловой системы NTFS. Заражение может произойти при запуске программы MS-DOS с дискеты или при запуске MS-DOS на компьютере с двойной загрузкой. Windows Server 2003, как и Windows 2000/XP, не может защититься от заражения, если она не запущена.
В ряде случаев повреждение загрузочного сектора раздела может привести к генерации следующей ошибки типа "синий экран": STOP 0х0000007B INACCESSIBLE_BOOT_DEVICE. Еще одним симптомом проблем с загрузочным сектором раздела является "зависание" компьютера в процессе загрузки без отображения каких-либо сообщений, при этом экран остается черным.
Даже при условии отсутствия очевидных грубых повреждений загрузочный сектор раздела может работать неправильно. Убедиться в этом можно следующим образом. Попробуйте переименовать файл NTLDR и запустить Windows Server 2003 с этого жесткого диска (сделать это можно, загрузив систему с загрузочной дискеты, изготовленной в соответствии с инструкциями, приведенными ранее в этой главе).
Если загрузочный сектор раздела в норме, а причина неудачи — поврежденный файл загрузчика NTLDR, то в основном разделе NTFS вы увидите следующее сообщение об ошибке: Couldn't find NTLDR
В основном разделе FAT вы увидите сообщение об ошибке: A kernel file is missing from the disk
Если, заменив имя NTLDR, вы таких сообщений об ошибках не получите, это будет говорить о том, что причина кроется в повреждении загрузочного сектора раздела. Не забудьте переименовать файл загрузчика обратно в NTLDR, чтобы загрузочный сектор раздела мог его найти.
Как правило, файл NTLDR по умолчанию имеет атрибуты Hidden, System и Read Only. Поскольку запустить Windows 2000/XP или Windows Server 2003 при испорченном загрузочном секторе в загрузочном разделе невозможно, можно запустить MS-DOS с загрузочной дискеты MS-DOS. Загрузив MS-DOS, можно изменить атрибуты файла (только на диске с FAT!), введя следующую команду: attrib -s -h -r ntldr



Аппаратные проблемы


Если устройство не инициализируется во время самотестирования при загрузке (POST), то возможны проблемы с доступом к этому устройству. Если устройство было добавлено или модифицировано при предыдущем запуске системы, то проблема может быть вызвана новой конфигурацией системы.
Если вы вносили изменения в конфигурацию дисковой подсистемы, необходимо обратить внимание на следующее:
 правильность установки терминаторов на SCSI-шлейфах;  BIOS активизирована только на первом контроллере SCSI (если вообще активизирована);  отсутствие конфликтов по IRQ.

Если вы не вносили никаких изменений, проверьте следующее:
 правильность установки карт контроллеров;  правильность подключения всех кабелей;  подачу питания на все диски.



Недоступно загрузочное устройство: STOP 0х0000007В


Сообщение STOP указывает, что Windows Server 2003 не может получить доступ к загрузочному сектору раздела или может, но не находит там необходимую информацию. Чаще всего причиной возникновения такой ошибки является заражение вирусами.
Испорченный загрузочный сектор раздела также может вызвать ошибку STOP, но это зависит от того, какая из его областей повреждена. Эта проблема похожа на заражение вирусом, однако в данном случае причиной повреждения может являться дефектный диск или контроллер, а в ряде случаев — ошибка в программном обеспечении, которое своими неправильными действиями нанесло повреждение загрузочному сектору раздела.

Дополнительные источники информации


Авторы считают своим долгом отослать заинтересованных читателей к источникам информации, где они могут получить исчерпывающие ответы на все интересующие их вопросы. Вот список этих источников.
 Глава 23 "Восстановление системы" полностью посвящена подготовке и проведению восстановительных процедур.  Глава 24 "Работа с системным реестром" содержит обзорную информацию о реестре Windows Server 2003 и его использовании в целях диагностики и устранения неполадок в работе.  Встроенная справочная система Windows Server 2003 дает сведения по диагностике неполадок и их устранению.  Microsoft Knowledge Base содержит большой объем информации, подготовленной сертифицированными специалистами по поддержке продуктов Microsoft. База данных Knowledge Base доступна из следующих источников:  Компакт-диски MSDN (Microsoft Developer Network);  Компакт-диски TechNet;  http://support.microsoft.com.

 http://msdn.microsoft.com/windowserver2003 — масса полезной информации для разработчиков.  http://www.microsoft.com/ddk/debugging/ — ссылки на дополнительные источники с информацией по отладке.