|
|
|
|
|
Начальная загрузка
Большинство компьютерных систем могут исполнять только команды, находящиеся в оперативной памяти компьютера, в то время
как современные операционные системы в большинстве случаев хранятся на жёстких дисках, загрузочных CDROM-ах, USB дисках
или в локальной сети.
После включения компьютера в его оперативной памяти нет операционной системы. Само по себе, без операционной системы,
аппаратное обеспечение компьютера не может выполнять сложные действия, такие как, например, загрузку программы в память.
Таким образом мы сталкиваемся с парадоксом, который кажется неразрешимым: для того, чтобы загрузить операционную систему
в память, мы уже должны иметь операционную систему в памяти.
Решением данного парадокса является использование специальной маленькой компьютерной программы, называемой начальным
загрузчиком, или BIOS (Basic Input/Output System). Эта программа не обладает всей функциональностью операционной
системы, но её достаточно для того, чтобы загрузить другую программу, которая будет загружать операционную систему.
Часто используется многоуровневая загрузка, в которой несколько небольших программ вызывают друг друга до тех пор, пока
одна из них не загрузит операционную систему. Говорят, что загрузка похожа на процесс вытаскивания себя из болота за
ногу, или за косу.
В современных компьютерах процесс начальной загрузки начинается с выполнения процессором команд расположенных в
постоянной памяти (например на 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-устройство, сетевая карта (при загрузке по
сети; например, при помощи PXE).
Загрузочная последовательность стандартного IBM-совместимого персонального компьютера
Загружается персональный компьютер
После включения персонального компьютера его процессор начинает работу. Первая выполняемая команда расположена по адресу
FFFF0h и принадлежит пространству адресов BIOS. Как правило, данная команда просто передает управление программе
инициализации BIOS.
Программа инициализации BIOS с помощью программы POST проверяет, что устройства компьютера работают корректно и
инициализирует их.
Затем BIOS опрашивает устройства, перечисляемые в заранее созданном списке, пока не найдёт загрузочное устройство. Если
такое устройство найдено не будет, будет выведено сообщение об ошибке, а процесс загрузки будет остановлен. Если BIOS
обнаружит загрузочное устройство, он считает с него начальный загрузчик и передаст ему управление.
В случае жесткого диска, начальный загрузчик называется главной загрузочной записью (MBR) и часто не зависит от
операционной системы. Обычно он ищет активный разделы жесткого диска, загружает загрузочный сектор данного раздела и
передает ему управление. Этот загрузочный сектор, как правило, зависит от операционной системы. Он должен загрузить в
память ядро операционной системы и передать ему управление. Если активного раздела не существует, или загрузочный сектор
активного раздела некорректен, MBR может загрузить резервный начальный загрузчик и передать управление ему. Резервный
начальный загрузчик должен выбрать раздел (зачастую с помощью пользователя), загрузить его загрузочный сектор и передать
ему управление.
Другие виды загрузочных последовательностей
Некоторые процессоры имеют другие режимы загрузки. Например, большинство цифровых сигнальных процессоров могут
загрузиться в следующих режимах:
* Загрузка по серийному порту
* Загрузка по параллельному порту
* Загрузка с использованием HPI
* Загрузка после «горячей» перезагрузки (она отличается от последовательности выполняемой при начальном включении
питания)
|
|
|
|
|
|
|
|
|

| Кто он-лайн |
|
Сейчас на сайте 1 гость онлайн |
| Новое на форуме |
[29.01.2012, 06:17] Buy counterfeit uk passport,false british passports for sale,buy philippines passports,buy fake australian passport id.
Our team is a unique producer of quality fake documents.
We offer only original high-quality fake [28.01.2012, 19:33] Alprazolam Ambien drug drug levitra pharmacist prescription 508
Controlling Cholesterol levels To reduce unhealthy fats in your diet:Understand product labels upon [27.01.2012, 17:38] cheap Ativan Carisoprodol new zealand 399
Usually, a online pharmacy treatments on the web could come to be the business enterprise the area w [27.01.2012, 07:35] Buy fake portuguese passport online,false brazilian passports for sale,buy fake uk passport,british false passports for sell.
Our company has years of experience producing fake passports and other identity documents. We use hi [26.01.2012, 12:07] domki wypoczynkowe stegna
http://www.circus2010.org/ http://ultima-temporada.net/ http://securemycomputer.org/ http://sraedmon |
|
|
|
|