Початкова завантаження комп’ютера

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

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

Рішенням даного феномена є використання спеціальної комп'ютерної програми. званої початковим завантажувачем. або BIOS (Basic Input / Output System). Ця програма не володіє всією функціональністю операційної системи, але її достатньо для того, щоб завантажити іншу програму, яка буде завантажувати операційну систему. Часто використовується багаторівнева завантаження, в якій кілька невеликих програм викликають один одного до тих пір, поки одна з них не завантажить операційну систему.

Початкові завантажувачі повинні відповідати специфічним обмеженням, особливо це стосується обсягу. Наприклад, на IBM PC завантажувач першого рівня повинен поміщатися в перших 446 байтах головного завантажувального запису. залишивши місце для 64 байт таблиці розділів і 2 байта для сигнатури 55AAh, необхідної для того, щоб BIOS виявив сам початковий завантажувач.

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

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

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

Пристрої, ініціалізіруемих BIOS

Початкова завантаження комп'ютера

Завантажується персональний комп'ютер

Початкова завантаження комп'ютера

Частина екрану з Ініціалізувати компонентами материнської плати і підключеними периферійними пристроями. У нижній частині екрана видно таблиця налаштованих Plug-and-Play пристроїв

Програма ініціалізації BIOS за допомогою програми POST перевіряє, що пристрої комп'ютера працюють коректно і ініціалізує їх.

Нульовий сектор завантажувального жорсткого диска містить так звану «Головну завантажувальний запис» (MBR - Master Boot Record). що містить як дані перших чотирьох записів таблиці розділів. так і інструкції процесора Intel 80x86, що забезпечують пошук по цих записів активного розділу, з якого, за допомогою однієї з функцій базової системи введення-виведення - INT 13h (англ. Int 13h) [1]. реалізованої у вигляді обробника переривання процесора, буде зчитана завантажувальний запис операційної системи. Цей завантажувальний сектор, як правило, залежить від операційної системи і повинен зробити завантаження в оперативну пам'ять ядра операційної системи з подальшою передачею на нього виконання інструкцій процесора. Якщо активного розділу не існує, або завантажувальний сектор активного розділу некоректний, MBR може завантажити резервний початковий завантажувач і передати управління йому. Резервний початковий завантажувач повинен вибрати розділ (найчастіше за допомогою користувача), завантажити його завантажувальний сектор і передати йому управління, який, в свою чергу, передає управління безпосередньо завантажувачу ОС (подальші етапи завантаження залежать від типу / версії встановленої ОС). [2]

Інші види завантажувальних послідовностей

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

  • Завантаження по послідовному порту
  • Завантаження з паралельного порту
  • Завантаження з використанням HPI (Host-Port Interface)
  • Завантаження після «гарячої» перезавантаження (вона відрізняється від послідовності виконуваної при початковому включенні харчування)
  1. ↑ База знань Microsoft
  2. ↑ Сині екрани BSoD (і інші фатальні помилки) можуть бути виведені тільки після початкового завантаження, коли управління завантаженням передається завантажувачу і ядру ОС. На етапі початкового завантаження ймовірні всілякі помилки (POST, BIOS, MBR, таблиці FAT / MFT, сектора VBS, IPL (PnP BIOS)) відображаються дуже коротко і на чорному екрані.