Восстановление загрузчика windows xp с флешки. Ремонтируем загрузчик с помощью консоли восстановления в Windows XP

Скажите, как правильно произвести восстановление загрузчика Windows XP , у меня было установлено две операционные системы и менеджер загрузки Acronis OS Selector. Одну систему и Acronis я удалил, теперь у меня проблемы, сначала в начальной фазе загрузки появлялась надпись Bootmgr is missing, применил команды Fixmbr и FixBOOT в консоли восстановления, теперь выходит другая ошибка NTLDR is missing. Убил два дня на изучение этой консоли, но Win XP так и не грузится, что я неправильно сделал? DRIVE.

Восстановление загрузчика Windows XP

Вы дорогой DRIVE, были в двух шагах от победы, немного вам не хватило терпения, ну да не беда, в следующий раз всё получится. Очень важно знать, что ошибка Bootmgr is missing, говорит о повреждении главной загрузочной записи или таблицы разделов жёсткого диска, которая находится в первом секторе винчестера, вы кстати успешно начали восстановление загрузчика Windows XP и решили половину проблем, а именно перезаписали главную загрузочную запись в командой Fixmbr и записали новый загрузочный сектор командой FixBOOT, поэтому стала появляться другая ошибка и дело оставалось за малым, нужно было скопировать в корневую директорию раздела с операционной системой (в основном диск С) три файла boot.ini, NTDETECT.COM, ntldr. Давайте начнём всё с самого начала и добьёмся всё-таки .

  1. Рассматриваем возможные причины повреждения загрузчика Windows XP, проверяем настройки BIOS в пункте Boot Device Priority.
  2. Применение команд Fixmbr и FixBOOT в консоли восстановления.
  3. Копирование файлов boot.ini, NTDETECT.COM, ntldr с установочного диска Windows XP в консоли восстановления и успешная загрузка.
  4. Если после прочтения статьи вы так и не сможете восстановить загрузку Windows XP, тогда читаем другую нашу статью " "

После включения компьютера друзья, происходит его самотестирование, далее управление передаётся в главную загрузочную запись жёсткого диска, в ней находится таблица разделов винчестера и небольшая программа загрузчик, которая считывает в этой таблице информацию с какого винчестера (если их несколько) и какого раздела жёсткого диска производить загрузку ОС. В дальнейшем происходит загрузка ядра операционной системы в оперативную память и собственно запуск Windows XP. Так же нужно знать, что в загрузке операционной системы участвуют ещё и группа файлов, находящаяся в корневой директории диска С, а именно boot.ini, NTDETECT.COM, ntldr. Наличие всего вышеперечисленного, исключает наличие ошибки Bootmgr is missing при загрузке XP и обеспечивает успешный запуск системы.

Кстати не всегда при подобных проблемах нужно проводить восстановление загрузчика Win dows XP , давайте рассмотрим некоторые причины возникновения этой ошибки, с которыми сталкивался лично я. Первое самое простое, при наличии нескольких жёстких дисков в системе, нарушились настройки Bios, а именно например в AMI Bios, во вкладке BOOT, пункт Boot Device Priority, далее Hard Disk Drives, в качестве винчестера с которого нужно производить загрузку выставлен совсем не тот, который нужен. Устранение данной неисправности и причины её возникновения хорошо описаны в нашей статье .

Использование в главной загрузочной записи программ сторонних разработчиков, так называемых менеджеров загрузки, например Acronis OS Selector, применяется в основном при наличии на компьютере нескольких операционных систем, менеджер выводит в начале загрузки удобное меню выбора ОС. Пользоваться такими программами нужно очень осторожно, при некорректном удалении с компьютера самой программы Acronis OS Seletor, очень большой шанс заняться восстановлением загрузчика Windows XP . Тоже самое относится к загрузчику GRUB, позволяющему использовать на одном компьютере Linux и Windows XP, при удалении GRUB, вы оставите свой компьютер один на один с непонятной ему загрузочной записью и он не долго думая покажет вам Bootmgr is missing. Исправлять ситуацию в этом случае будем в консоли восстановления Windows XP, первое введём команду FIXMBR и перепишем главную загрузочную запись, второй командой FIXBOOT запишем новый загрузочный сектор.
Но и это ещё не всё, после исправления загрузочной записи, а так же записи нового загрузочного сектора в консоли, ситуация с выводом ошибки может остаться неизменной и могут быть уже другие ошибки, к примеру: NTLDR is missing. В этом случае нужно ещё раз убедится в наличии файлов загрузочного сектора, напрямую участвующих в загрузке Windows XP: , NTDETECT.COM , ntldr , в корневой директории диска (С:), в принципе для загрузки Windows XP вполне хватит трёх данных файлов.
Проще всего использовать Live CD, произвести с него загрузку, далее зайти в корневую директорию диска С и убедится в наличии данных файлов, если их там нет, значит нужно скопировать их с любой работоспособной XP и закинуть их себе, предварительно проверив и в случае необходимости отредактировав файл boot.ini , простой текстовый файл, в котором прописан путь к системным файлам Windows XP, сделать это нужно обязательно, а то получите другую ошибку, можете почитать .
Но мне нравится другой способ: восстановление загрузчика Windows XP с помощью консоли восстановления. Если у вас есть дистрибутив XP, давайте им воспользуемся и скопируем три наших файла boot.ini, NTDETECT.COM, NTLDR в корневую директорию диска С . Уверяю вас это очень просто, да и не нужно редактировать файл boot.ini, консоль всё сделает сама.
Загружаемся с установочного диска Windows XP, выбираем восстановить R. Если у нас одна операционная система ставим цифру 1 .

Если был пароль вводим его, если нет нажимаем Enter .

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

Подтверждаем запись новой MBR, ставим Y


Вводим команду FIXBOOT , и соглашаемся записать новый загрузочный сектор.

Копируем файлы ntldr , NTDETECT.COM, boot.ini с дистрибутива в корень системного диска С .
Вводим команду МАР и смотрим букву нашего дисковода, в моём случае (D:)

Вводим букву дисковода D: и нажимаем Enter.

Переходим в папку i386, которая находится на установочном диске Windows XP, из неё скопируем наш файл NTLDR в корень диска С .
Вводим команду cd i386 и Enter

Копируем файл NTLDR в корень нашего системного диска с операционной системой командой

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

1. Partition Table Doctor — уникальная программа для восстановления повреждённых партиций дисков. Повреждение может произойти в результате неожиданной потери электроэнергии, или атаки вируса, в результате чего диск перестаёт показывать какую-либо иноформацию (ведёт себя так, словно он только что с завода).

Программа автоматически проверяет и восстанавливает главную загрузочную запись (MBR) , таблицу размещения файлов и загрузочный сектор раздела. Поддерживаются следующие файловые системы: FAT16, FAT32, NTFS/NTFS5, EXT2, EXT3, SWAP.

Программа может создать аварийную дискету (Ctrl+D внутри программы). В комплекте — загрузочный образ в формате IMA для записи аварийного CD. В Nero 6 это делается следующим образом: запускаем Nero, в меню нового проекта выбираем CD-ROM (Загр.), переключаемся на Файл образа и через «Просмотр» находим «PTD Boot.ima». Теперь можно нажать «Новый» и напихать в эту компиляцию чего угодно. Записанный диск будет загрузочным, т.е. если ваш комп загрузить от CD-привода, то появится DOS-версия Partition Table Doctor 3.5.

2. DiskPatch — это профессиональная утилита восстановления данных, основанная на DOS, которая восстанавливает данные, восстанавливая поврежденную структуру дисков, такие как таблицы разделов, «на месте».

DiskPatch разработан для решения большинства проблем, которые не дают вам получить доступ к вашим данным; поврежденные MBR (Мастер Загрузки Записей), поврежденные таблицы разделов, неожиданно удаленные разделы, поврежденные секторы загрузки, и «плохие» секторы.

Повреждение MBR, таблиц разделов и частей загружаемых секторов в большинстве случаев ведут к массовым потерям данных; ситуации, когда вы не можете получить доступ к разделу или целому жесткому диску. Вы можете исправить эти проблемы самостоятельно, используя DiskPatch!

DiskPatch автоматически восстанавливает поврежденные, испорченные или потерянные таблицы разделов и загружаемые сектора . Быстро. Просто. Безопасно.

Для того чтобы восстановление при последующих авариях было проще, DiskPatch позволяет создать резервные копии важных дисковых структур, такие как MBR, таблицы разделов и загружаемые сектора.

3. С помощью загрузочного диска SonyaPE , в который входит программа по восстановлению загрузчика MBR fix

4. MBR Editor — Программа для редактирования Главной загрузочной записи (MBR) диска.
Возможности:
– просмотр и редактирование Таблицы разделов диска;
– просмотр и редактирование Загрузочных секторов (Boot Sector)
разделов;
– сохранение/загрузка всей BMR на/с диск(а);
– сохранение/загрузка Загрузчика (Boot Loader) на/с диск(а);
– восстановление загрузчика с шаблонов (Windows XP Professional SP2,
Windows 98 SE, MS-DOS 6.22);

Но иногда программы не помогают и приходится , что является самым надежный средством.

Переустановка операционной системы часто означает, что необходимо произвести вашего компьютера. Но тем не менее по причине вирусов и аппаратных сбоев в любой момент может потребоваться процесс восстановления загрузчика Windows XP. Вы можете переустановить загрузчик системы без или потери файлов. Некоторые из основных причин его сбоя - вирусы, аппаратный сбой или ошибки при проведении XP. Неисправный загрузчик - ваша единственная проблема? Ниже представлена инструкция, как восстановить загрузчик Windows XP без переустановки всей операционной системы.

Этот загрузчик называют главной загрузочной записью, а также MBR. Он контролирует запуск жесткого диска и позволяет компьютеру выполнять включение его ОС. Загрузчик предлагает множество полезных функций и улучшений. Также он имеет мощную систему для управления устройством. К сожалению, некоторые изменения в вашем компьютере или вирус могут повредить, изменить или удалить его. Это может повлиять на функционирование ПК. В результате он либо окажется не в состоянии загрузиться вообще, либо запустится с проблемами загрузки некоторых частей ОС. Процесс восстановления загрузчика Windows XP может быть произведен с помощью установочного компакт-диска операционной системы или восстановления диска.

Восстановить загрузчик Windows XP можно посредством выполнения следующих пунктов:

    Включите компьютер и установите запуск с установочного диска.

    Сделайте запуск консоли восстановления.

Прежде всего, следует вставить установочный диск Windows XP либо диск для в оптический привод и перезагрузить компьютер. Теперь чтобы загрузить установленную версию Windows, ПК будет запускаться с компакт-диска. Следует нажать необходимую клавишу при появлении запроса, а затем нужно ждать настройки программы для загрузки.

Запуск консоли восстановления

На экране должна появиться надпись, что программа установки вас приветствует. Нажмите клавишу «R». Это повлечет запуск для того чтобы попытаться заново установить Windows XP на компьютер. Если требуется пароль администратора в настройках Windows XP, необходимо ввести его. Потом выберите Затем дождитесь появления командной строки и введите команду Fixmbr. Нажмите на клавишу «Y», когда будет предложено, что утилита «FixMbr» намеревается переписать поврежденный загрузчик новой копией. После этого процедура восстановления загрузчика Windows XP будет завершена.

Советы по завершению процесса

Удалите из привода загрузочный диск и выберите «Выход» в командной строке. Эта команда может привести к перезагрузке ПК. Это позволит компьютеру загрузить новый файл загрузчика, и тогда можно продолжать запуск Windows XP в обычном режиме. Также рекомендуется установить антивирусное программное обеспечение для удаления вирусов и защитить файлы загрузчика, чтобы повторная процедура восстановления загрузчика Windows XP в ближайшее время не понадобилась.

Загрузка Windows XP – это сложный и многоэтапный процесс, начинающийся с момента включения компьютера и заканчивающаяся уже после появления на экране рабочего стола. За эти несколько минут выполняется множество скрытых от глаз пользователя операций, каждая из которых длится от долей секунды до нескольких секунд. Сам процесс старта системы можно сравнить с эстафетой, где каждый из участников проходит свою часть пути и решает свои, строго определенные задачи, после чего передает “эстафетную палочку” дальше. Если хотя бы один компонент-участник выпадает из этой цепочки, процесс загрузки останавливается, и на экране, как правило, отображается сообщение об ошибке.

Чтобы иметь представление о том, как проходит загрузка Windows XP, кратко разберем ее последовательность. Досистемные этапы включения компьютера (самотестирование, инициализацию и начало выполнения кода BIOS и т. д.) рассматривать не будем, а за начало старта системы условно примем момент считывания программой BIOS первого сектора жесткого диска, где находится главная загрузочная запись – MBR, содержащая загрузочный код и таблицу разделов (логических дисков). Итак:

  • BIOS считывает код MBR (Master Boot Code) и передает ему управление.
  • Загрузочный код MBR проверяет таблицу разделов и находит раздел, помеченный как активный, считывает его первый (загрузочный) сектор (Boot Sector) и передает управление записанному туда коду.
  • Код загрузочного сектора передает управление загрузчику Windows NT – файлу NTLDR (NT Loader), который находится в корневом каталоге диска, куда установлена операционная система.
  • Загрузчик Windows переводит процессор в 32-разрядный безопасный режим работы, проверяет наличие файла hiberfil.sys (образ спящего режима) и если находит, загружает его. Если такого образа нет, NTLDR считывает файл конфигурации загрузки Boot.INI. Если в этом файле перечислено более одной операционной системы, на экран выводится меню, чтобы пользователь самостоятельно выбрал, какую систему загружать.

  • При нажатии пользователем клавиши F8 перед стартом системы, NTLDR открывает меню дополнительных вариантов загрузки:

  • Далее загружается программа ntdetect.com для определения конфигурации аппаратных устройств компьютера.
  • Вслед за этим загружается ядро Windows XP (файл ntoskrnl.exe) и библиотека Hal.dll (Hardware Abstraction Layer), задача которой – скрыть различия в оборудовании компьютера от кода ядра.
  • После этого загрузчик NTLDR загружает драйвера, помеченные как загрузочные, и передает управление ядру (ntoskrnl.exe).
  • HAL инициализирует оборудование и подготавливает контроллер прерываний.
  • Далее включается в работу система ввода-вывода и загружаются остальные драйвера, которым назначен тип запуска “авто”.
  • Ядро загружает подсистему управления сеансами Windows – файл Smss.exe, который создает пользовательское окружение и продолжает загрузку – запускает графическую подсистему (драйвер win32k.sys), клиентсерверную подсистему (Csrss.exe) и программу входа пользователя (Winlogon.exe и Lsass.exe).
  • После логина пользователя запускается Userinit.exe, запускающий оболочку системы (проводник Explorer.exe) и сетевые подключения. На экране, тем временем, появляется рабочий стол.

Почему Windows XP не загружается?

Причиной, по которой Windows XP не загружается, может быть любой сбой в “эстафете” процесса загрузки, например, отсутствие или повреждение одного или нескольких компонентов. Это может быть загрузочный код в первом разделе жесткого диска или активного раздела, сам загрузчик NTLDR, файлы, ответственные за запуск Windows, а также системный реестр, где содержится информация о том, что и в какой последовательности запускать.

К нарушению загрузки чаще всего приводит:

  • неквалифицированная установка нескольких операционных систем на жесткий диск, когда вместо создания конфигурации с двойной загрузкой, загрузочный код позже установленной системы затирает код ранее установленной;
  • вирусное заражение, преимущественно – блокираторы-вымогатели, которые могут модифицировать параметры запуска важных для загрузки файлов в системном реестре, сами файлы и загрузочные сектора на диске.
  • дефекты поверхности жесткого диска, приводящие к повреждениям и потере данных на нем;
  • перебои в электропитании компьютера во время операций чтения записи файлов, ответственных за загрузку (если во время запуска или завершения работы Windows произошло неожиданное выключение, вероятность того, что система больше не загрузится, довольно существенна).

Восстановление загрузки Windows XP

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

Повреждение MBR (главной загрузочной записи)

Проявляется тем, что загрузка компьютера прерывается сразу же после старта – после вывода на монитор сведений о производителе компьютера экран остается черным. Иногда выводится сообщение об ошибке, например:

  • Invalid Partition Table – повреждение таблицы разделов;
  • Missing Operating System – не найдена операционная система;
  • Error Loading Operating System – ошибка загрузки операционной системы.

Решение

  • Загрузите с установочного диска с дистрибутивом Windows XP консоль восстановления (Recovery Console): поместите в привод установочный диск, сконфигурируйте BIOS для загрузки с CDDVD и запустите программу установки.
  • После появления на экране текста “Вас приветствует программа установки”, нажмите клавишу “R” (восстановление).

  • Запустится консоль восстановления. На экране будет отображен список установленных на компьютере копий Windows XP и вам будет предложено указать, в какую из них выполнить вход.

  • Далее введите пароль администратора (если есть). Если его нет, просто нажмите Enter, а следом – команду перезаписи загрузочного кода MBR: fixmbr , нажмите Enter и Exit для выхода из консоли и перезагрузки компьютера.

Эта команда восстанавливает только загрузчик MBR (boot code), а таблицу разделов, к сожалению, нет. Восстановление таблицы разделов требует использования сторонних утилит, например, TestDisk – одного из бесплатных и доступных для понимания инструментов.

Повреждение загрузочного сектора

По симптомам похоже на повреждение MBR, но при этом система может выдавать следующие ошибки:

  • А disk read error occurred – ошибки чтения диска;
  • NTLDR is compressed – загрузчик NTLDR заархивирован (сжат);
  • NTLDR is missing – загрузчик не найден.

Решение

  • Загрузите консоль восстановления и выполните вход в нужную вам копию Windows XP;
  • Введите команду: fixboot – загрузчик (код) активного раздела будет перезаписан. Далее – Enter и Exit.

Важно! Если в корневом каталоге вашей системы отсутствует файл NTLDR – загрузчик Windows, его придется скопировать с установочного диска или другой копии Windows XP и поместить на диск C: (если система находится на нем).

С появлением Windows Vista была создана утилита Bootsect.exe , предназначенная для перезаписи загрузочного кода разделов диска. Ее также можно использовать для восстановления загрузки Windows XP.

Утилитой Bootsect.exe можно воспользоваться, если у вас на жестком диске стоит еще одна операционная система Windows или загрузившись с Windows LiveCD (“живого” диска с операционной системой, которая работает при загрузке с DVD или флешки).

Восстановление загрузки системы с помощью Bootsect.exe выполняется следующим образом:

  • скопируйте файл Bootsect.exe (можно взять с дистрибутива Windows Vista и выше) в корневую директорию системы, загрузку которой вам требуется восстановить.
  • запустите командную строку и выполните команду: Путь_к_bootsect.exe /NT52 , например: D:bootsect.exe /NT52.

Ошибки конфигурации загрузки в файле Boot.INI

Если конфигурационный файл загрузки Windows XP содержит ошибки или отсутствует, загрузчик NTLDR не сможет найти систему. О проблемах с Boot.INI свидетельствуют следующие сообщения:

  • Check boot path and disk hardware – предложение проверить путь к загрузочному диску и сам диск;
  • Could not read from selected boot disk – прочитать данные с загрузочного диска не удалось;
  • Windows could not start because of a computer disk hardware configuration problem – из-за проблем с конфигурацией диска загрузить Windows не удалось.

Решение

  • Запустите консоль восстановления.
  • После входа в систему выполните команду: bootcfg /rebuild – каждый раздел диска будет просканирован на наличие установленной в нем копии Windows XP. При обнаружении первой же системы, пользователю будет предложено добавить информацию о ее загрузки в конфигурационный файл:

Восстановление конфигурации загрузки будет выполнено.

Повреждение системных файлов

В загрузке Windows принимает участие множество файлов – помимо тех, которые мы назвали, еще несколько десятков. Отсутствие или повреждение любого из них может привести к тому, что система не сможет стартовать, а вместо этого будет циклически перезагружаться или “радовать” пользователя синими экранами смерти (BSoD). Скриншот одной из типичных ошибок, связанных с системными файлами при загрузке, приведен ниже:

Запись “STOP C000021a {fatal system error}” – говорит о неустранимой ошибке системы, связанная с проблемами в входе выполнения Winlogon.exe или Csrss.exe. Это, вероятнее всего, говорит о том,что файлы повреждены или отсутствуют.

Решение

Для выполнить восстановление загрузки, необходимо найти аналогичные файлы и вернуть их на “законные места” – в каталог WindowsSystem32. Их копии находятся в хранилище Windows – папке WindowsSystem32DllCach или на установочном диске в папке i386. На дистрибутивном диске файлы хранятся в сжатом виде, и перед заменой их необходимо распаковывать. Это можно сделать также при помощи Recovery Console:

  • Скопируйте на флешку с установочного диска папку i386 , подключите ее к компьютеру.
  • Выполните вход в систему, загрузчик которой требуется восстановить.
  • Введите команду: expand d:i386winlogon.ex_ c:windowssystem32 – с ее помощью архивный файл winlogon.ex_ на установочном диске будет распакован в папку system32 под именем winlogon.exe. Аналогичным образом можно провести восстановление и других файлов. D: – в данном случае – буква флешки.

Повреждение куста реестра SYSTEM

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

Файлы реестра уникальны для каждой системы, поэтому их восстановление при помощи переноса с другой копии Windows невозможно – необходим свой собственный раздел. Копия реестра, созданного на момент установки системы, хранится в каталоге WindowsRepair

Решение

Восстановление поврежденного раздела также несложно выполнить через консоль.

  • Выполните вход в Windows.
  • Введите команду: rename c:windowssystem32configsystem system.old и нажмите Enter. Поврежденный куст реестра будет переименован, теперь на его место можно копировать новый.
  • Выполните вторую команду: copy c:windowsrepairsystem c:windowssystem32configsystem – будет произведено восстановление раздела. После этого вы сможете загрузить систему.

Процесс загрузки компьютера казалось бы изучен нами до мелочей: кнопка - BIOS - операционная система - логин... А ты задумывался когда-нибудь о том что же на самом деле происходит в это время внутри твоего компьютера? Можешь по шагам рассказать как работает компьютер? Уверен, что нет. Поэтому сегодня проведем короткий ликбез - расскажем о том, как же на самом деле загружается компьютер.

Эта статья рассматривает работу Windows XP, в остальных системах процесс, естественно, несколько отличается.

Включается тумблер питания.
Блок питания проводит самодиагностику. Когда все электрические параметры в норме БП посылает сигнал Power Good процессору. Время между включением питания и уходом сигнала обычно 0.1-0.5 секунд.

Таймер микропроцессора получает сигнал Power Good.
С получением этого сигнала таймер перестает посылать сигнал Reset процессору, позволяя тому включиться.

CPU начинает выполнять код ROM BIOS.
Процессор загружает ROM BIOS начиная с адреса FFFF:0000. По этому адресу прописан только переход на адрес настоящего кода BIOS ROM.

Система выполняет начальный тест железа.
Каждая ошибка, встречающаяся на этом этапе сообщается определенными звуковыми кодами (в прошлом биканьем, сейчас уже вероятно более современно - голосом), так как видео система еще не инициализирована.

BIOS ищет адаптеры, которые могут потребовать загрузки своего BIOS-а.
Самым типичным случаем в этом случае является видео карта. Загрузочная процедура сканирует память с адреса C000:0000 по C780:0000 для поиска видео ROM. Таким образом загружаются системы всех адаптеров.

ROM BIOS проверяет выключение это или перезагрузка.
Процедура два байта по адресу 0000:0472. Любое значение отличное от 1234h является свидетельством "холодного" старта.

Если это включение ROM BIOS запускает полный POST (Power On Self Test). Если это перезагрузка, то из POST процедуры исключается проверка памяти.
Процедуру POST можно разделить на три компоненты:

  • Видео тест инициализирует видео адаптер, тестирует карту и видео память, показывает конфигурацию или возникшие ошибки.
  • Идентификация BIOS-а показывает версию прошивки, производителя и дату.
  • Тест памяти проверяет чипы памяти и подсчитывает размер установленной памяти.

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

BIOS читает конфигурационную информацию из CMOS.
Небольшая область памяти (64 байт) питается от батарейки на материнской платы. Самое главное для загрузки в ней - порядок, в котором должны опрашиваться приводы, какой из них должен быть первым - дисковод, CD-ROM или винчестер.

Если первым является жесткий диск, BIOS проверяет самый первый сектор диска на наличие Master Boot Record (MBR). Для дисковода проверяется Boot Record в первом секторе.
Master Boot Record - первый сектор на цилиндре 0, 0 головке, 512 байт размером. Если она находится, то загружается в память по адресу 0000:7C00, потом проверяется на правильную сигнатуру - два последних байта должны быть 55AAh. Отсутствие MBR или этих проверочных байт останавливает процесс загрузки и выдает предупреждение. Сама MBR состоит из двух частей - системного загрузчика (partition loader или Boot loader), программы, которая получает управление при загрузке с этого жесткого диска; таблицы разделов (партиций), которая содержит информацию о логических дисках, имеющихся на жестком диске.

Правильная MBR запись записывается в память и управление передается ее коду.
Процесс установки нескольких операционных систем на один компьютер обычно заменяет оригинальный лоадер на свою программу, которая позволяет выбрать с какого диска производить остальную загрузку.

Дальше Boot Loader проверяет таблицу партиций в поисках активной. Загрузчик дальше ищет загрузочную запись (Boot Record) на самом первом секторе раздела.
В данном случае Boot Record это еще 512 байт - таблица с описанием раздела (количество байт в секторе, количество секторов в кластере и т.п.) и переход на первый файл операционной системы (IO.SYS в DOS).


Операционная система

Управление передается операционной системе. Как же она работает, как проходит процесс загрузки?

Boot Record проверяется на правильность и если код признается правильным то код загрузочного сектора исполняется как программа.
Загрузка Windows XP контролируется файлом NTLDR, находящемся в корневой директории системного раздела. NTLDR работает в четыре приема:

  1. Начальная фаза загрузки
  2. Выбор системы
  3. Определение железа
  4. Выбор конфигурации

В начальной фазе NTLDR переключает процессор в защищенный режим. Затем загружает соответствующий драйвер файловой системы для работы с файлами любой файловой системы, поддерживаемой XP.
Если кто забыл, то наша любимая ОСь может работать с FAT-16, FAT-32 и NTFS.

Если в корневой директории есть BOOT.INI, то его содержание загружается в память. Если в нем есть записи более чем об одной операционной системе, NTLDR останавливает работу - показывает меню с выбором и ожидает ввода от пользователя определенный период времени.
Если такого файла нет, то NTLDR продолжает загрузку с первой партиции первого диска, обычно это C:\.

Если в процессе выбора пользователь выбрал Windows NT, 2000 или XP, то проверяется нажатие F8 и показ соответствующего меню с опциями загрузки.
После каждой удачной загрузки XP создает копию текущей комбинации драйверов и системных настроек известную как Last Known Good Configuration. Этот коллекцию можно использовать для загрузки в случае если некое новое устройство внесло разлад в работу операционной системы.

Если выбранная операционная система XP, то NTLDR находит и загружает DOS-овскую программу NTDETECT.COM для определения железа, установленного в компьютере.
NTDETECT.COM строит список компонентов, который потом используется в ключе HARDWARE ветки HKEY_LOCAL_MACHINE реестра.

Если компьютер имеет более одного профиля оборудования программа останавливается с меню выбора конфигурации.

После выбора конфигурации NTLDR начинает загрузку ядра XP (NTOSKRNK.EXE).
В процессе загрузки ядра (но перед инициализацией) NTLDR остается главным в управлении компьютером. Экран очищается и внизу показывается анимация из белых прямоугольников. Кроме ядра загружается и Hardware Abstraction Layer (HAL.DLL), дабы ядро могло абстрагироваться от железа. Оба файла находятся в директории System32.

NTLDR загружает драйвера устройств, помеченные как загрузочные. Загрузив их NTLDR передает управление компьютером дальше.
Каждый драйвер имеет ключ в HKEY_LOCAL_MACHINE\SYSTEM\Services. Если значение Start равно SERVICE_BOOT_START, то устройство считается загрузочным. Для кажого такого устройства на экране печатается точка.

NTOSKRNL в процессе загрузки проходит через две фазы - так называемую фазу 0 и фазу 1. Первая фаза инициализирует лишь ту часть микроядра и исполнительные подсистемы, которая требуется для работы основных служб и продолжения загрузки. На этом этапе на экране показывается графический экран со статус баром.
XP дизейблит прерывания в процессе фазы 0 и включает их только перед фазой 1. Вызывается HAL для подготовки контроллера прерываний. Инициализируются Memory Manager, Object Manager, Security Reference Monitor и Process Manager. Фаза 1 начинается когда HAL подготавливает систему для обработки прерываний устройств. Если на компьютере установлено более одного процессор они инициализируются. Все исполнительные подсистемы реинициализируются в следующем порядке:

  1. Object Manager
  2. Executive
  3. Microkernel
  4. Security Reference Monitor
  5. Memory Manager
  6. Cache Manager
  7. I/O Manager
  8. Process Manager

Инициализация Менеджера ввода/Вывода начинает процесс загрузки всех системных драйверов. С того момента где остановился NTLDR загружаются драйвера по приоритету.
Сбой в загрузке драйвера может заставить XP перезагрузиться и попытаться восстановить Last Known Good Configuration.

Последняя задача фазы 1 инициализации ядра - запуск Session Manager Subsystem (SMSS). Подсистема ответственна за создание пользовательского окружения, обеспечивающего интерфейс NT.
SMSS работает в пользовательском режиме, но в отличии от других приложений SMSS считается доверенной частью операционной системы и "родным" приложением (использует только исполнительные функции), что позволяет ей запустить графическую подсистему и login.

SMSS загружает win32k.sys - графическую подсистему.
Драйвер переключает компьютер в графический режим, SMSS стартует все сервисы, которые должны автоматически запускаться при старте. Если все устройства и сервисы стартовали удачно процесс загрузки считается удачным и создается Last Known Good Configuration.

Процесс загрузки не считается завершенным до тех пор, пока пользователь не залогинился в систему. Процесс инициализируется файлом WINLOGON.EXE, запускаемым как сервис и поддерживается Local Security Authority (LSASS.EXE), который и показывает диалог входа в систему.
Это диалоговое окно показывается примерно тогда, когда Services Subsystem стартует сетевую службу.



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: