Начальная загрузка компьютера

Начальная загрузка компьютера

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

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

Содержание

Начальная загрузка

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

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

Решением данного парадокса является использование специальной маленькой компьютерной программы, называемой начальным загрузчиком, или BIOS. Эта программа не обладает всей функциональностью операционной системы, но ее достаточно для того, чтобы загрузить другую программу, которая будет загружать операционную систему. Часто используется многоуровневая загрузка, в которой несколько небольших программ вызывают друг друга до тех пор, пока одна из них не загрузит операционную систему. Говорят, что загрузка похожа на процесс вытаскивания себя из болота за ногу, или за косу.

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

Начальные загрузчики должны соответсвовать специфическим ограничениям, особенно это касается объема. Например, на 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 года) операционные системы компьютеров Macintosh производимых Apple Computer, наскотолько тесно связаны с аппаратным обеспечением компьютеров, что на данных компьютерах невозможно загрузить какую либо другую операционную систему. В данных случаях обычно разрабатывается начальный загрузчик который работает как загрузчик стандартной ОС а затем передает управление альтернативной операционной системе. Apple использовала данный способ для запуска A/UX версию Unix, а затем он использовался различными бесплатными операционными системами.

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

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

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

После включения персонального компьютера его процессор начинает работу. Первая выполняемая команда расположена по адресу FFFF0h и принадлежит пространству адресов BIOS. Как правило, данная команда просто передает управление программе инициализации BIOS. Программа инициализации BIOS с помощью программы POST проверяет, что устройства компьютера работают корректно и инициализирует их. Затем BIOS опрашивает устройства перечисляемые в заранее созданном списке пока не найдет загрузочное устройство. Если такое устройство найдено не будет, будет выведено сообщение об ошибке а процесс загрузки будет остановлен. Если BIOS обнаружит загрузочное устройство, он считает с него начальный загрузчик и передаст ему управление. В случае жесткого диска, начальный загрузчик называется главной загрузочной записью (MBR) и часто не зависит от операционной системы. Обычно он ищет активный разделы жесткого диска загружает загрузочный сектор данного раздела и передает ему управление. Этот загрузочный сектор, как правило, зависит от операционной системы. Он должен загрузить в память ядро операционной системы и передать ему управление. Если активного раздела не существует, или загрузочный сектор активного раздела некорректен, MBR может загрузить резервный начальный загрузчик и передать управление ему. Резервный начальный загрузчик должен выбрать раздел (зачастую с помощью пользователя), загрузить его загрузочный сектор и передать ему управление.

Другие виды загрузочных последовательностей

Некоторые процессоры имеют другие режимы загрузки. Например большинство цифровых сигнальных процессоров могут загружиться в следующих режимах: <далее непонятно, надо разбираться>

  • Serial mode boot
  • Parallel mode boot
  • HPI boot
  • Warm boot or soft reboot (as opposed to hard reboot) refers to an abridged start up which does not require that power be removed and reapplied.



См. также

 
Начальная страница  » 
А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ы Э Ю Я
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
0 1 2 3 4 5 6 7 8 9 Home