Интернет

Этапы загрузки системы

Базовое администрирование UNIX 1

Управление службами 1

Процесс init 3

Различия загрузки UNIX-подобных систем 3

Системы, наследующие System V 3

Системы, наследующие BSD 4

Системы со смешанной схемой загрузки 4

Конфигурация запуска init 4

Системные службы 5

Запуск и остановка служб 5

Примеры служб 6

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

Управление службами Загрузка операционной системы. Этапы загрузки системы

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

Рассмотрим загрузку операционной системы UNIX как следующую последовательность этапов (Рисунок 6.1, «Этапы загрузки ОС UNIX»):

Рисунок 6.1. Этапы загрузки ОС UNIX

досистемный загрузчик

Как правило, сразу после включения питания программа ПЗУ BIOS проводит тестирование оборудования, затем запускается досистемный загрузчик.

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

загрузчик первого уровня

Загрузчик первого уровня занимает обычно не более одного сектора в самом начале диска – в его загрузочном секторе (Master Boot Record).

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

загрузчик второго уровня

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

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

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

инициализация ядра операционной системы

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

Этот этап специфичен для различных операционных систем. В UNIX-подобных системах при этом обычно выводится информация о загрузке ядра отладочного характера.

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

На следующем шаге ядро определяет состав и архитектуру всего аппаратного наполнения компьютера: тип и параметры шин передачи данных и устройств управления ими (контроллеров), список внешних устройств, доступных по шинам, настройки этих устройств – диапазон портов ввода-вывода, адрес ПЗУ, занимаемое аппаратное прерывание, номер канала прямого доступа к памяти и т.п..

Ядро на основании переданного ему параметра выбирает корневой раздел – файловую систему, содержащую будущий каталог /и его подкаталоги (для системной начальной загрузки важены каталоги/etc,/bin, и/sbin). Корневой разделмонтируется в качестве/. После этого ядро запускает свой первый процесс –init (по умолчанию,/sbin/init).

процесс init

С этого момента операционная система обеспечивает полноценную функциональность всем исполняющимся процессам. В UNIX первым запускаемым процессом является init, о котором сказано в следующем разделе.

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

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

Начальные загрузчики должны соответствовать специфическим ограничениям, особенно это касается объёма. Например, на IBM PC загрузчик первого уровня должен помещаться в первых 446 байт главной загрузочной записи , оставив место для 64 байт таблицы разделов и 2 байта для сигнатуры AA55, необходимой для того, чтобы BIOS выявил сам начальный загрузчик.

История

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

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

0: записать в регистр P число 8 1: проверить что устройство считывания с перфолент может начинать считывание 2: если не может, перейти к п. 1 3: прочитать байт с устройства считывания с перфолент и записать его в аккумулятор 4: если перфолента закончилась, перейти к п. 8 5: записать значение, хранимое в аккумуляторе, в оперативную память по адресу, хранящемуся в регистре P 6: увеличить значение регистра P на единицу 7: перейти к п. 1

Данный пример основан на начальном загрузчике одного из миникомпьютеров , выпущенного в 1970-х годах фирмой Nicolet Instrument Corporation.

0: записать в регистр P число 106 1: проверить что устройство считывания с перфолент может начинать считывание 2: если не может, перейти к п. 1 3: прочитать байт с устройства считывания с перфолент и записать его в аккумулятор 4: если перфолента закончилась, перейти к п. 8 5: записать значение, хранимое в аккумуляторе, в оперативную память по адресу, хранящемуся в регистре P 6: уменьшить значение регистра P на единицу 7: перейти к п. 1

Длина загрузчика второго уровня была такой, что последний байт загрузчика изменял команду, расположенную по адресу 6. Таким образом, после выполнения пункта 5 стартовал загрузчик второго уровня. Загрузчик второго уровня ожидал заправки в устройство считывания перфолент длиной перфоленты, содержащей операционную систему. Различием между загрузчиком первого уровня и загрузчиком второго уровня были проверки на ошибки считывания с перфоленты, которые часто встречались в то время, и, в частности, на используемых в данном случае телетайпах ASR-33.

Некоторые операционные системы, наиболее характерными их которых являются старые (до 1995 года) операционные системы компьютеров Apple Computer, настолько тесно связаны с аппаратным обеспечением компьютеров, что на данных компьютерах невозможно загрузить какую либо другую операционную систему. В данных случаях обычно разрабатывается начальный загрузчик, который работает как загрузчик стандартной ОС , а затем передает управление альтернативной операционной системе. Apple использовала данный способ для запуска A/UX версию Unix , а затем он использовался различными бесплатными операционными системами.

Устройства, инициализируемые BIOS

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

Загрузочная последовательность стандартного IBM-совместимого персонального компьютера

Загружается персональный компьютер

Ссылки

Wikimedia Foundation . 2010 .

Смотреть что такое "Загрузка операционной системы" в других словарях:

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

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

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

    Это форма распространения системного программного обеспечения. Наличие дистрибутивов вызвано тем, что форма программного обеспечения, используемая для его распространения, почти никогда не совпадает с формой программного обеспечения работающей… … Википедия

    Доверенная загрузка функция персонального компьютера для воспрепятствования несанкционированному запуску пользователя, загрузке операционной системы (ОС) и получению возможности доступа к конфиденциальной информации. Обеспечение… … Википедия

    Эту статью следует викифицировать. Пожалуйста, оформите её согласно правилам оформления статей … Википедия

    Windows XP стартует в интернет телефон автомате В информатике начальной загрузкой называется сложный и многошаговый процесс запуска компьютера. Загрузочная последовательность это последовательность действий, которые должен выполнить компьютер для … Википедия

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

Начальная загрузка операционной системы

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

При включении компьютера он тестирует свои устройства и пытается выполнить загрузку ОС - программы, осуществляющей управление компьютером.

Этот процесс называется начальной загрузкой. Она выполняется автоматически при включении электропитания компьютера.

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

В компьютере находится постоянное запоминающее устройство (ПЗУ), содержащее программы тестирования компьютера и первого этапа загрузки операционной системы, которые называются BIOS (базовая система ввода/вывода). ПЗУ расположено на системной плате и питается от батарейки, поэтому записанные в нем программы, не стираются при выключении компьютера.

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

На этом этапе процессор обращается к диску и ищет в определенном месте (в 1 секторе диска) наличие очень небольшой программы-загрузчикаMaster Boot. Если диск системный, то Master Boot оказывается на месте, считывается в память, и ему передается управление. В свою очередь Master Boot ищет на диске основной загрузчик Boot Sector, загружает его в память и передает ему управление. Далее основной загрузчик ищет остальные модули операционной системы и загружает их в оперативную память.

В случае если в дисковод вставлен несистемный диск или диск вообще отсутствует, то на экране монитора появляется сообщение: Not sуstem disk, и компьютер «зависает».

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

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

Вопросы для самоконтроля 1. Для чего необходима операционная система? 2. Какие компоненты входят в состав операционной системы? 3. Что называется файлом, как задается его имя? 4. Какие могут быть расширения текстовых файлов? 5. Чем отличается быстрое и полное форматирование диска? 6. Чем различаются одноуровневая и иерархическая файловые структуры? 7. Какие операции с файлами возможно? 8. Каковы основные этапы загрузки операционной системы?
Настройка интерфейса Windows Вопросы для изучения: 1. Рабочий стол Windows. 1.1. Значки и ярлыки объектов. 1.2. Окна. 1.3. Панель задач. 1.4. Панель индикации. 2. Структура окна папки. 2.1. Строка заголовка. 2.2. Кнопки управления размерами окна. 2.3. Системный значок. 2.4. Строка меню. 2.5. Панель инструментов. 2.6. Адресная строка. 2.7. Рабочее поле. 2.8. Строка состояния.

Операционные системы семейства Windows – наиболее универсальные. Ими можно пользоваться для работы с офисными программами, для потребительской работы в Интернете, в учебных и развлекательных целях. Как и все операционные

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

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

Загрузчик в ПЗУ

Сразу после включения оперативная память компьютера классической архитектуры девственно чиста. Для того чтобы начать работать, процессору необходима хоть какая-то программа. Эта программа автоматически загружается в память из постоянного запоминающего устройства , ПЗУ (или ROM, read-only memory), в которое она вписана раз и навсегда в неизменном виде 1Современные компьютеры используют программируемые ПЗУ , содержимое которых можно изменять, однако такое изменение всегда считается ситуацией нештатной: например, запись новой версии содержимого ПЗУ , в которой исправлены ошибки (upgrade). . В специализированных компьютерах (например, в дешевых игровых приставках) все, что нужно пользователю, записывается именно на

Обычно в компьютерах общего назначения программа из ПЗУ пользователю ничем полезна не бывает: она невелика, да и делает всегда одно и то же. Слегка изменить поведение программы из ПЗУ можно, оперируя данными, записанными в энергонезависимую память (иногда ее называют CMOS, иногда - NVRAM ). Объем энергонезависимой памяти очень невелик, а данные из нее сохраняются после выключения компьютера за счет автономного электропитания (как правило, от батарейки вроде часовой).

Что должна уметь эта начальная программа? Распознавать основные устройства, на которых может быть записана другая - нужная пользователю - программа, уметь загружать эту программу в память и передавать ей выполнение, а также поддерживать интерфейс, позволяющий менять настройки в NVRAM . Собственно, это даже не одна программа, а множество подпрограмм , занимающихся взаимодействием с разнообразными устройствами ввода-вывода - как с теми, на которых могут храниться программы (жесткие и гибкие диски, магнитные ленты и даже сетевые карты), так и теми, посредством которых можно общаться с пользователем (последовательные порты передачи данных - если есть возможность подключить консольный терминал, системная клавиатура и видеокарта - для простых персональных рабочих станций). Этот набор подпрограмм в ПЗУ обычно называется BIOS (basic input-output system).

BIOS . Сокращение от "Basic Input-Output System", набор подпрограмм в ПЗУ , предназначенных для простейшего низкоуровневого доступа к внешним устройствам компьютера. В современных ОС используется только в процессе начальной загрузки.

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

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

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

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

Карта размещения . Представление области с необходимыми данными (например, вторичным загрузчиком или ядром системы) в виде списка секторов диска, которые она занимает.

В случае IBM-совместимого компьютера размер загрузочного сектора составляет всего 512 байтов , из которых далеко не все приходятся на программную область. Загрузочный сектор IBM PC, называемый MBR ( master boot record ), содержит также таблицу разбиения диска , структура которой описана в лекции 11. Понятно, что программа такого размера не может похвастаться разнообразием функций. Стандартный для многих систем загрузочный сектор может только считать таблицу разбиения диска , определить так называемый загрузочный раздел ( active partition ) и загрузить программу, расположенную в начале этого раздела . Для каждого типа диска может быть своя программная часть MBR , что позволяет считывать данные из любого места диска, сообразуясь с его типом и геометрией. Однако считывать можно все же не более одного сектора: неизвестно, для чего используются установленной на этом разделе операционной системой второй и последующие сектора. Выходит, что стандартная программная часть MBR - это некий предзагрузчик , который считывает и запускает настоящий первичный загрузчик из первого сектора загрузочного раздела .

Существуют версии предзагрузчика , предоставляющие пользователю возможность самостоятельно выбрать , с какого из разделов выполнять загрузку 2Например, BOOTACTV из пакета pfdisk или стандартный для FreeBSD предзагрузчик boot0 , которые, в силу их досистемности , можно применять где угодно. . Это позволяет для каждой из установленных операционных систем хранить собственный первичный загрузчик в начале раздела и свободно выбирать среди них. В стандартной схеме загрузки Linux используется иной подход: простой первичный загрузчик записывается прямо в MBR , а функция выбора передается вторичному загрузчику .

Первичный загрузчик . Первая стадия загрузки компьютера: программа, размер и возможности которой зависят от аппаратных требований и функций BIOS . Основная задача - загрузить вторичный загрузчик .

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

В задачу операционной системы . Как правило, ядро системы записывается в файл с определенным именем. Но как вторичному загрузчику прочитать файл с ядром , если в Linux эта операция и есть функция ядра ? Эта задача может быть решена тремя способами.

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

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

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

В данной статье я поэтапно опишу процесс загрузки операционных систем Windows XP, Vista и Seven. Хотя этот вопрос рассматривается в сети достаточно часто, не затронуть его я не могу. Подобная информация бывает очень полезна при диагностировании неисправности и восстановления работоспособности “умершей” ОСи.

Сегодня мы рассмотрим:

  • Старт BIOS;
  • Загрузку Windows XP;
  • Загрузку Windows Vista/7.

Загрузка BIOS

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

При включении компьютера BIOS проверяет “железо” и если есть проблемы, то информирует нас звуковыми сигналами (набор длинных и коротких гудков). Вот таблица звуковых сигналов BIOS:

Сигналы AMI

Сигнал Возможная неисправность
Отсутствует Неисправен блок питания
Ошибка четности ОЗУ
Ошибка в первых 64 кБ ОЗУ
Неисправность системного таймера
Неисправен CPU
Неисправен контроллер клавиатуры
Неисправна системная плата
Неисправна память видеокарты
Ошибка контрольной суммы BIOS
10к Невозможна запись в CMOS
11к Неисправен кэш на системной плате
1д+2к Неисправна видеокарта
1д+3к Неисправна видеокарта
1д+8к Не подключен монитор

Сигналы AWARD

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

После проверки BIOS считывает настройки из CMOS и в соответствии с мини стартует загрузчик с указанного носителя (CD, HDD, Flash карта). Если загрузка производится с жёсткого диска, то система считывает первые 512 байт Master Boot Record (MBR) и передаёт ему управление.

Если MBR не найден, то загрузка останавливается. Восстановить MBR можно с помощью консоли восстановления Windows (Recovery Console) командой fixmbr.

Процесс загрузки Windows XP

Загрузкой Windows управляет NTLDR, который состоит из двух частей - первый StartUp переводит процессор в защищённый режим и стартует загрузчик ОС. Загрузчик содержит в себе основные функции для работы с дисками отформатированными в FAT*, NTFS и CDFS системы. Загрузчик считывает содержимое boot.ini и, в соответствии с его содержимым (количество ОС, диски на котором установленны и т.п.), продолжает загрузку. Если Windows была переведена в состояние гибернации, то NTLDR загружает в память компьютера файл hiberfil.sys и передаёт управление в ядро Windows. Если вы завершили работу компьютера простым выключением/перезагрузкой, то NTLDR загружает DOS’овский файл NTDETECT.COM, который строит список аппаратного обеспечения и загружает саму операционную систему Windows.

Если файл NTLDR удалён/перемещён/повреждён, то система не загрузится и выведет сообщение “NTLDR is missing. Press CTRL+ALT+DEL to restart“. Решить эту проблему можно в консоли восстановления Windows (Recovery Console) командой fixboot или скопировав NTLDR с рабочей системы в корень диска.

Перед загрузкой ядра, NTLDR выводит на экран опции запуска (Если была нажата клавиша F8, или работа системы была завершена аварийно). После выбора параметров запуска, стартует ядро системы - ntoskrnl.exe (мы видим анимацию из белых прямоугольников на чёрном экране). Далее загружается тип абстрактного уровня аппаратного обеспечения - HALL.DLL. Это нужно, чтобы ядро могло абстрагироваться от железа, оба файла находятся в директории System32. Далее загружается библиотека расширения ядра отладчика аппаратного обеспечения kdcom.dll и bootvid.dll, который загружает логотип Windows и индикатор статуса загрузки).

Одним из самых ответственных моментов является загрузка системного реестра config\system, очень часто система не может прочитать файл system и загрузка становится невозможна или начинается .

Процесс загрузки Windows Vista/7

Процесс загрузки Windows Vista и Windows 7 (Seven) начинает отличатся от процесса загрузки предыдущих версий ОС уже после чтения MBR. Установщик Windows создаёт небольшой загрузочный раздел, в котором и находяться всё, что нужно для запуска ОС. MBR передаёт загрузку PBR (Partition Boot Record), а затем стартует BOOTMGR (Windows Boot Manager). BOOTMGR пришёл на смену NTLDR и руководит загрузкой операционной системы. BOOTMGR читает параметры загрузки из Boot Configuration Database (BCD, Базы данных загрузочной конфигурации, пришла на смену boot.ini) и загружает Winload.exe (OS loader boot application, загрузчик ОС). Winload.exe загружает ядро операционной системы, далее процесс загрузки похож на старт Windows XP.

Для редактирования Boot Configuration Database (BCD) можно использовать утилиту Bcdedit.exe запустив её из Windows Recovery Environment (WinRE). Там же можно задействовать утилиту Bootrec.exe для исправления ошибок.