Коли ви активуєте свій комп’ютер, він ініціює процедуру, відому як “завантаження”, термін, що бере свій початок від слова “bootstrap”. Незалежно від того, чи використовуєте ви персональний комп’ютер під управлінням Windows, Mac або Linux, ось що відбувається у його глибинах.
Активація апаратного забезпечення
Натискаючи кнопку живлення, ви подаєте енергію до всіх ключових компонентів вашого комп’ютера – материнської плати, центрального процесора, накопичувачів, графічного процесора та іншого обладнання.
Елемент, що забезпечує електроживлення, називається “блоком живлення”. У стандартному настільному комп’ютері він має вигляд коробки, зазвичай розташованої в одному з кутів корпусу (на зображенні вище він позначений жовтим), куди під’єднується шнур живлення.
Процесор завантажує UEFI або BIOS
Після того, як процесор отримує живлення, він активується і починає пошук невеликої програми, яка, як правило, зберігається у спеціальному чіпі на материнській платі.
У минулому, комп’ютери завантажували програму під назвою BIOS (базова система вводу-виводу). Сьогодні, натомість, процесор ініціює мікропрограму UEFI (уніфікований розширюваний інтерфейс мікропрограми), яка є більш сучасним аналогом BIOS. Цікаво, що деякі виробники комп’ютерів продовжують називати UEFI “BIOS”, створюючи певну плутанину.
Тестування та ініціалізація обладнання UEFI або BIOS
Прошивка BIOS або UEFI завантажує конфігураційні налаштування з певного місця на материнській платі. Традиційно, ці налаштування зберігалися в пам’яті CMOS, яка підтримувалася батареєю. Якщо ви змінюєте будь-які параметри в налаштуваннях BIOS або UEFI, ці зміни зберігаються саме тут.
Процесор запускає UEFI або BIOS, які перевіряють і ініціалізують апаратне забезпечення вашої системи, включаючи сам процесор. Якщо, наприклад, у комп’ютері відсутня оперативна пам’ять, він видасть звуковий сигнал і виведе повідомлення про помилку, зупиняючи процес завантаження. Цей процес відомий як POST (самотестування під час ввімкнення).
Під час цієї процедури на екрані може відображатися логотип виробника комп’ютера, і часто з цього місця можна отримати доступ до екрана налаштувань BIOS або UEFI, натиснувши відповідну клавішу. Однак, багато сучасних комп’ютерів виконують цей процес дуже швидко, пропускаючи відображення логотипу та вимагаючи доступу до налаштувань UEFI через меню параметрів завантаження Windows.
UEFI може виконувати набагато більше, ніж проста ініціалізація апаратного забезпечення; це, по суті, мініатюрна операційна система. Наприклад, процесори Intel оснащені механізмом управління Intel, який пропонує різні функції, включаючи технологію Intel Active Management, що дозволяє віддалено керувати бізнес-комп’ютерами.
Передача керування завантажувальному пристрою
Після завершення тестування та ініціалізації обладнання, UEFI або BIOS передають керування процесом завантаження вашого комп’ютера завантажувачу операційної системи.
UEFI або BIOS шукають “завантажувальний пристрій”, з якого завантажується операційна система. Зазвичай це жорсткий диск або твердотільний накопичувач вашого комп’ютера, але це також може бути компакт-диск, DVD-диск, USB-накопичувач або мережеве розташування. Завантажувальний пристрій можна налаштувати в розділі налаштувань UEFI або BIOS. Якщо у вас є кілька завантажувальних пристроїв, UEFI або BIOS спробують передати їм процес запуску в тому порядку, в якому вони вказані. Так, наприклад, якщо у вашому оптичному приводі є завантажувальний DVD, система може спробувати запуститися з нього, перш ніж спробувати запуститися з жорсткого диска.
Традиційно, BIOS звертався до MBR (основного завантажувального запису), спеціального завантажувального сектора на початку диска. MBR містить код, який завантажує решту операційної системи, відомий як “завантажувач”. BIOS запускає завантажувач, який, у свою чергу, починає завантажувати реальну операційну систему – наприклад, Windows або Linux.
Комп’ютери з UEFI можуть використовувати цей старий спосіб завантаження MBR, але зазвичай замість цього використовується виконуваний файл EFI. Їх не потрібно зберігати на початку диска; натомість вони зберігаються в системному розділі EFI.
У будь-якому випадку принцип залишається той самий – BIOS або UEFI перевіряють запам’ятовуючий пристрій у вашій системі, щоб знайти невелику програму або в MBR, або в системному розділі EFI, і запускають її. Якщо завантажувальний пристрій відсутній, процес завантаження зазнає невдачі, і на екрані з’явиться повідомлення про помилку.
На сучасних комп’ютерах прошивка UEFI зазвичай налаштована на “безпечне завантаження”. Це гарантує, що операційна система, що запускається, не була скомпрометована і не буде завантажувати шкідливе програмне забезпечення низького рівня. Якщо безпечне завантаження ввімкнено, UEFI перевіряє, чи правильно підписаний завантажувач перед його запуском.
Завантаження повної операційної системи
Завантажувач – це невелика програма, відповідальна за завантаження решти операційної системи. Windows використовує завантажувач під назвою Windows Boot Manager (Bootmgr.exe), більшість систем Linux використовують GRUB, а Mac – boot.efi.
У разі виникнення проблем із завантажувачем, наприклад, якщо його файли пошкоджені на диску, з’явиться повідомлення про помилку, і процес завантаження зупиниться.
Завантажувач – це лише одна невелика програма, і вона не обробляє процес завантаження повністю. У Windows диспетчер завантаження Windows знаходить і запускає завантажувач ОС Windows. Завантажувач ОС завантажує необхідні драйвери обладнання, необхідні для запуску ядра – основної частини операційної системи Windows, – а потім запускає ядро. Потім ядро завантажує системний реєстр у пам’ять, а також завантажує додаткові драйвери обладнання, позначені як “BOOT_START”, що означає, що їх потрібно завантажити під час запуску. Далі ядро Windows запускає процес менеджера сеансів (Smss.exe), який ініціює системний сеанс і завантажує інші драйвери. Цей процес триває, і Windows завантажує фонові служби та екран вітання для входу в систему.
У Linux завантажувач GRUB завантажує ядро Linux, яке, своєю чергою, ініціює систему ініціалізації – systemd у більшості сучасних дистрибутивів Linux. Система ініціалізації відповідає за запуск служб та інших користувацьких процесів, які готують систему до моменту входу користувача.
Ця складна послідовність дій дозволяє коректно завантажити систему, виконуючи всі процеси в потрібному порядку.
Так звані “програми запуску” завантажуються вже після входу користувача у свій обліковий запис, а не під час завантаження системи. Проте, деякі фонові служби (у Windows) або демони (у Linux і macOS) запускаються у фоновому режимі після завантаження системи.
Процес вимкнення комп’ютера також досить складний. Ось, що відбувається, коли ви вимикаєте комп’ютер з Windows або виходите з нього.
Авторство зображень: Суван Венлор/Shutterstock.com, DR-зображення/Shutterstock.com