Які основні етапи завантаження комп'ютера? Склад та завантаження операційної системи (на прикладі ос ms-dos)

Що означають слова "мій комп'ютер не запускається"?

Кожен мережевий адміністратор постійно стикається з ситуацією, коли користувачі, які скаржаться на неполадки, вимовляють туманну фразу, яка може зіпсувати настрій: «Комп'ютер не запускається!» Зазвичай користувачі повідомляють, що щось непередбачене сталося в процесі завантаження - або під час самотестування комп'ютера (POST), або під час процедур початкового завантаження Windows. Для діагностики та усунення подібних проблем адміністратор повинен розуміти, що відбувається у процесі завантаження.

Термін «збій у процесі завантаження» стосується і апаратних проблем, і проблем операційної системи. Під час комп'ютерів з MS-DOS POST займав більше часу, ніж завантаження операційної системи, і апаратура була джерелом більшості проблем при початковому завантаженні. За останні роки апаратне забезпечення стало надійнішим, а завдяки розвиненим функціям BIOS можливості моніторингу, діагностики та управління обладнанням стали значно ширшими. Тому в ситуації збою під час завантаження користувачі швидше за все стикаються саме з проблемою операційної системи. Давайте послідовно вивчимо процес початкового завантаження, спостерігаючи, що відбувається на кожному етапі, і усвідомимо сенс кожного повідомлення про помилку, що з'являється. Для зручності будемо припускати, що використовуються Windows 2000 або новіші версії.

Увімкнення живлення

Чи не скаржиться користувач, що нічого не відбувається, коли він натискає кнопку живлення? Якщо так, спочатку перевірте кабель.

Ось старий адміністраторський трюк на випадок, якщо проходить справу з вимкненим з розетки комп'ютером при розмові з користувачем по телефону. Користувачі часто не перевіряють, чи їх комп'ютер у розетку, а коли ви вказуєте їм на таку можливість, обурюються. Користувач може вигукнути: «Звичайно, він включений!», але слід перевірити, чи це правда. Попросіть користувача вийняти вилку з розетки та вставити її знову, посилаючись на необхідність «перевірити полярність». Постарайтеся не хихикати. Просто неймовірно, як часто користувачі відповідають: "О, спрацювало!"

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

Перевірка обладнання та BIOS

Якщо користувач бачить повідомлення про помилку в процесі POST або якщо комп'ютер просто зависає, перш ніж запускається операційна система, то проблема в обладнанні або в BIOS. Система виводить на екран повідомлення про помилки обладнання та BIOS та подає характерні звукові сигнали. Деякі помилки BIOS виводяться у вигляді чисел і коли всі виробники BIOS використовували одні й самі числа (ті, що вигадали в IBM), але тепер усе змінилося. Тепер, щоб інтерпретувати номер помилки, адміністратору потрібна документація разом із комп'ютером. Також можна пошукати її на веб-сайті виробника BIOS. Однак, швидше за все, на екрані з'явиться текст, а не числа, наприклад Hard drive controller failure ("Помилка контролера жорсткого диска") або кумедне повідомлення Keyboard error, press F1 to continue ("Помилка клавіатури, натисніть F1 для продовження").

Можливо, з'явиться повідомлення про помилку, яка стосується проблем із пам'яттю. Колись пам'ять мала додатковий компонент, що називався «чіп парності», і частиною тесту BIOS була перевірка на парність. Компоненти пам'яті більше не містять чіп парності, оскільки тепер немає необхідності: виробники пам'яті так просунулися шляхом вдосконалення своїх продуктів, що помилки пам'яті стали вкрай рідкісні. Проте після додавання до комп'ютера пам'яті під час наступного завантаження може з'явитися повідомлення про помилку пам'яті. Повідомлення містить приблизно такий текст: Mismatched memory information (Невідповідність параметрів пам'яті). Насправді, це повідомлення є підтвердженням того, що система бачить встановлену пам'ять, але виявила, що вона не відповідає загальній кількості, записаній у CMOS.

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

Якщо після додавання до комп'ютера пам'яті система видала повідомлення про помилку, в якому не йдеться про різночитання в підрахунку обсягу пам'яті, то проблема виявилася серйознішою. Система не розпізнає нової пам'яті. Ця ситуація майже завжди викликана неакуратними діями під час встановлення пам'яті, такими як використання невірного слота. У той же час мені доводилося бачити, як проблема викликалася встановленням пам'яті неправильного типу (наприклад, встановленням плат пам'яті DRAM у старий комп'ютер з Enhanced Data Output, EDO), коли материнська плата не була призначена для встановлення пам'яті змішаного типу, SIMM та DIMM, або коли материнська плата не сприймала змішування плат пам'яті з різними швидкостями. Деякі материнські плати при додаванні пам'яті потребують зміни положення двопозиційних перемикачів і перемичок, хоча такі вимоги стають менш поширеними. Щоб уникнути подібних проблем, завжди перед додаванням пам'яті перевіряйте документацію материнської плати.

Якщо під час POST виявляється помилка жорсткого диска, значить, робота має бути чимала. Взагалі-то я виявила, що в половині випадків проблема опиняється в контролері, а не в самому диску, і заміна контролера дозволяє диску нормально виконувати завантаження із збереженням всіх даних неушкодженими (все геніальне просто!). Якщо контролер жорсткого диска початкової комплектації виходить з ладу, не потрібно одразу бігти за новою материнською платою. Достатньо купити новий контролер. Замість пошуку вбудованої мікросхеми прочитайте в документації до материнської плати, що потрібно зробити, щоб BIOS бачив нову плату.

Якщо проблема справді в диску, завдання не обмежується лише заміною контролера. Крім заміни диска доведеться перевстановити операційну систему та програми, а також виконати відновлення даних з резервної копії, яка, звичайно, датована вчорашнім днем, чи не так?

Управління передається запису Master Boot Record

Далі комп'ютер починає завантаження операційної системи. Під час інсталяції програма завантаження Windows поміщає дані на перший сектор головного розділу комп'ютера (завантажувальний сектор). Ці дані - не що інше, як Master Boot Record, MBR (головний завантажувальний запис), що містить команди, що виконуються. Програма установки також копіює два файли, що ініціюють початковий етап завантаження Windows, - Ntldr і Ntdetect - в кореневий каталог завантажувального диска. Крім того, Windows Setup копіює boot.ini, файл, що містить параметри завантаження, в кореневий каталог завантажувального диска.

Крім команд, що виконуються, MBR містить таблицю, що визначає розташування головних розділів диска. При інсталяції Windows необов'язково робити так, щоб системний розділ і завантажувальний розділ збігалися, хоча це поширений підхід. Завантажувальні файли Windows розташовані в системному розділі, а файли операційної системи – у завантажувальному (логіка іменування відстала від життя).

Системний розділ містить файли прив'язки до апаратних компонентів, які потрібні для завантаження Windows, включаючи MBR. Цей розділ має бути головним розділом та відзначається як активний. Це завжди диск 0, оскільки саме цей диск звертається BIOS, щоб передати процес завантаження файлу MBR. Завантажувальний розділ містить файли операційної системи (папка \%systemroot%) та файли підтримки операційної системи (\%systemroot%System).

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

Запуск Ntldr

Код завантажувального сектора зчитує Ntldr на згадку, щоб запустити процес початкового завантаження операційної системи. Ntldr зберігає доступний тільки для читання код NTFS і FAT. Він починає працювати в реальному режимі, і перша завдання, що виконується, полягає в переключенні системи в деяку форму захищеного режиму. Докладніше про ці режими розказано у врізанні «Реальний режим проти захищеного». Цей початковий варіант захищеного режиму не може повною мірою виконувати апаратно-залежні перетворення, які забезпечують захист обладнання, - ця функція стає доступною, коли операційна система завантажиться повністю.

Тепер вся фізична пам'ять доступна операційній системі, і комп'ютер працює як 32-розрядна машина. Ntldr уможливлює завантаження сторінок і створює таблиці сторінок. Потім Ntldr зчитує boot.ini з кореневого каталогу і якщо на машині багатоваріантне завантаження або якщо виконано налаштування boot.ini на відображення меню, на екрані з'являється меню вибору варіантів завантаження. Якщо Ntldr відсутня чи пошкоджено, система видасть повідомлення про помилку Ntldr is missing. Натисніть Ctrl-Alt-Del до restart.

Не варто даремно витрачати час, виконуючи запропоновану дію: після чергового циклу система повернеться до того ж повідомлення. Потрібно замінити Ntldr. Якщо створено завантажувальний флоппі-диск, можна використовувати його для копіювання Ntldr у кореневий каталог основного завантажувального диска (зазвичай C). Якщо Ntldr немає, слід просто скопіювати його. Якщо файл є на жорсткому диску, він може бути пошкоджений. Для того, щоб замінити його, спочатку потрібно змінити його атрибут "тільки для читання". Якщо завантажувального флоппі-диска під рукою немає, доведеться запустити програму Setup із компакт-диска Windows і вибрати Repair.

Запуск Ntdetect

Ntldr запускає Ntdetect, який запитує BIOS системи про дані конфігурації пристроїв. Система надсилає інформацію, яку Ntdetect збирає до реєстру і поміщає до підрозділів HKEY_LOCAL_MACHINEHARDWARE DESCRIPTION.

Якщо виникне проблема з Ntdetect (втрата або пошкодження), можливо, система не видасть ніякого повідомлення про помилку. Зазвичай у разі процес завантаження просто зупиняється. Єдиним дієвим засобом у разі втрати або пошкодження файлу Ntdetect є його заміна. Необхідно скористатися для завантаження завантажувальним флоппі-диском, потім скопіювати Ntdetect з цього флоппі-диска до кореневого каталогу жорсткого диска. Або запустіть Setup з компакт-диска Windows і виберіть Repair.

Запуск Ntoskrnl та завантаження HAL

Після того, як Ntdetect закінчить виконання підпрограм перевірки обладнання, він передає процес завантаження назад файлу Ntldr, який запускає ntoskrnl.exe і завантажує.dll-файл Hardware Abstraction Layer (HAL). (Обидва файли розташовані в папці \%systemroot%system32.) Ntoskrnl - це головний файл ядра Windows та виконавчих підсистем. Він містить Executive, Kernel, Cache Manager, Memory Manager, Scheduler, Security Reference Monitor та інші. Саме Ntoskrnl приводить у дію Windows. Для роботи Ntoskrnl необхідний файл hal.dll, який містить код, що дозволяє обладнанню взаємодіяти з операційною системою.

На екрані може з'явитися повідомлення про помилку, що говорить про наявність проблеми з Ntoskrnl, але це повідомлення фіктивно і з'являється тому, що посилання на папку в boot.ini не збігається з ім'ям папки, в яку були встановлені системні файли Windows.

Як правило, це означає, що хтось перейменував папку \%systemroot% або створив нову папку та перемістив до неї файли Windows. У такому випадку потрібно перемістити файли назад у те місце, яке вказано у boot.ini. Якщо boot.ini. був кимось відредагований, слід виправити помилку.

Завантаження драйверів та служб

Тепер Ntldr завантажує низькорівневі системні служби та драйвери пристроїв, але служби не ініціалізуються – це відбувається пізніше. На цьому фаза початкового завантаження завершується та починається процес основного завантаження (load sequence або kernel phase).

При завантаженні системних служб і драйверів пристроїв Ntldr слід виконувати певний порядок. Під час інсталяції Windows драйвери та системні служби копіюються на комп'ютер, а інформація про них записується до реєстру. Дані в реєстрі є шістнадцятковим записом, що закінчується числом у круглих дужках. Це число визначає порядок, у якому Ntldr завантажує драйвери і системні служби. Для прикладу слід відкрити реєстр і перейти до розділу HKEY_LOCAL_MACHINESYSTEM CurrentControlSetServices. На екрані з'явиться довгий список служб та драйверів. Виберіть будь-який підрозділ і подивіться дані типу REG_DWORD під ім'ям Start.

  • (0) означає, що служба завантажується під час фази основного завантаження.
  • (1) означає, що служба завантажується під час фази ініціалізації (наведена наступна фаза).
  • (2) означає, що служба завантажується під час фази завантаження, призначеної для служб.
  • (3) означає, що служба увімкнена, але не ініціалізується (запуск служби здійснюється вручну через оснастку Services консолі Microsoft Management Console (MMC)).
  • (4) означає, що службу вимкнено.

Завантаження операційної системи

Ntoskrnl починає завантаження операційної системи. Ініціалізується ядро ​​Windows і завантажуються та ініціалізуються підсистеми. Ці дії формують базові елементи, необхідні завершення завантаження операційної системи. Завантажувальні драйвери, які модуль Ntldr завантажив раніше, тепер ініціалізуються, після чого ініціалізуються драйвери і служби, що залишилися. Коли ініціалізуються драйвери першого рівня, може виникнути проблема у вигляді помилки STOP або Blue Screen of Death. Це майже завжди буває в процесі першого завантаження після оновлення будь-якого драйвера. Під час ініціалізації драйвера файлом Ntoskrnl операційна система відкидає його.

Для вирішення проблеми необхідно перезавантажити комп'ютер, натиснути F8 для відображення меню додаткових можливостей (Advanced Options) та вибрати варіант завантаження останньої успішної конфігурації (Last Known Good Configuration), що відповідає попередній версії драйвера.

Тепер ядро ​​Windows та виконуючі модулі працездатні. Програма Session Manager Subsystem (smss.exe) налаштовує середовище користувача. Система виконує звірку з реєстром, для того щоб мати можливість почати завантаження драйверів, що залишилися, і програмного забезпечення, які необхідно додати. Ядро операційної системи також завантажує файли kernel32.dll, gdi32.dll та user32.dll, які забезпечують програмне забезпечення користувача доступом до Win32 API.

Реєстрація комп'ютера в домені

Коли завантаження ядра та ініціалізація драйверів ще не закінчилися, комп'ютер реєструється в домені. Використовуючи обліковий запис комп'ютера (унікальне ім'я з власним паролем), комп'ютер відкриває захищений канал до контролера домену (DC). Все це відбувається, перш ніж на екрані з'являється діалогове вікно для реєстрації користувача в системі.

Облікові записи комп'ютера використовуються між клієнтськими комп'ютерами (включаючи автономні сервери) та контролерами доменів. У межах одного домену той самий процес відбувається за участю декількох DC. Тому важливим є порядок, у якому включаються комп'ютери після штатного відключення. Захищений канал використовується комп'ютерами для обміну інформацією, необхідною для автентифікації та авторизації. Облікові записи комп'ютера підвищують безпеку мережі, гарантуючи, що комп'ютер, що намагається надіслати важливу інформацію, дійсно є членом домену.

В якості додаткового заходу безпеки комп'ютери (як і користувачі мережі з посиленою настройкою системи безпеки) повинні періодично змінювати паролі. За промовчанням інтервал зміни пароля становить 30 днів. Коли настає час змінювати пароль, комп'ютер генерує новий пароль і надсилає його захищеним каналом (доступ до якого він отримав, використовуючи попередній пароль) на найближчий DC. Для доступу до захищеного каналу комп'ютер повинен використовувати новий пароль.

DC негайно оновлює базу даних і реплікує зміну пароля комп'ютера на інші DC домену. Паролі облікових записів комп'ютера містять відмітку про подію першорядної важливості (Announce Immediately), тому вони не чекають наступної реплікації DC за розкладом. Іноді ці події можуть спричинити помітне зниження продуктивності. Якщо у багатьох або всіх комп'ютерів домену термін дії паролів закінчується в той самий день, робота, яку повинні будуть виконати контролери домену, відразу ж загальмує інші важливі завдання DC, такі як автентифікація користувачів або виконання запланованих реплікацій. Ситуація може ускладнитися ще й у тому випадку, якщо DC надає інші послуги, такі як послуги сервера DNS. Можна змінити спосіб обслуговування паролів комп'ютера для домену, для організаційної одиниці (OU) та для індивідуального комп'ютера, хоча прагнення підвищити продуктивність шляхом налаштування комп'ютерів по одному неефективно. У наступній статті я планую розповісти про способи зміни процедури реєстрації комп'ютера в домені.

Завантаження служб реєстрації користувача

Підсистема Win32 запускає winlogon.exe, яка виводить на екран діалогове вікно реєстрації користувача та завантажує процес Local Security Authority (lsass.exe). Починається процес реєстрації, і користувач має ввести ім'я та пароль у діалоговому вікні Windows Log On To. Якщо користувач вказує правильні ім'я та пароль, система завершує процес реєстрації, і користувач може розпочинати роботу. У цей момент завантаження Windows закінчено, а поточні параметри завантаження зберігаються в так званій останній успішній конфігурації (Last Known Good Configuration). Потрібно пам'ятати, що успішна реєстрація користувача необхідна для збереження Last Known Good Configuration.

Справді, збої під час завантаження заважають усім – і користувачам, і адміністраторам. Однак, якщо досконало розібратися в процесі завантаження, проблеми стають менш жахливими і адміністраторам вдається легко вирішити їх.

Реальний режим проти захищеного

Тим, хто працює з комп'ютерами з часів DOS, легко зрозуміти різницю між реальним і захищеним режимом. Але для тих, чиє знайомство з комп'ютером відбулося після поширення Windows, вона може бути не такою очевидною.

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

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

Кеті Івенс ( [email protected]) – редактор Windows & .NET Magazine. Є співавтором понад 40 книг на комп'ютерну тематику, включаючи «Windows 2000: The Complete Reference»

Ви увімкнули комп'ютер, з'являється текстовий екран завантаження на якому швидко миготять цифри та літери. Зазвичай комп'ютер працює нормально, і Ви не звертаєте увагу на них. Але це важлива частина роботи комп'ютера, в процесі якої працюють мікропрограми, вбудовані в BIOS. Але ось трапилося щось незрозуміле і все зупинилося, на екран виводиться код помилки, а іноді взагалі нічого не виводиться - блимає курсор і все завмерло в незрозумілому сні.

Як це працює

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

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

Послідовність основних блоків функцій BIOS в PC-сумісних комп'ютерах:

1. - POST - самотестування при включенні живлення процесора, пам'яті, набору мікросхем системної логіки, відеоадаптера, контролера дисків, клавіатури, миші та інших контролерів та пристроїв;

2. - Setup BIOS (програма встановлення параметрів BIOS) – конфігурування параметрів системи. Вона може бути запущена під час виконання процедури POST під час натискання певної комбінації клавіш. Якщо вона не була викликана користувачем, завантажуються установки встановлені та збережені в постійній пам'яті під час останнього конфігурування Setup BIOS.

3. - Завантажувач операційної системи - підпрограма, що виконує пошук діючого основного завантажувального сектора на дисковому пристрої.

4. - BIOS - набір драйверів, призначених для взаємодії операційної системи та апаратного забезпечення під час завантаження системи.

У процесі завантаження BIOS здійснюється, крім перерахованого, підключення, відключення, встановлення режиму роботи контролерів пристроїв системної плати відповідно до налаштувань, записаних у постійну пам'ять.

Навіщо це потрібно?

Це потрібно для:

  • перевірки справності та тому готовності до роботи апаратного забезпечення системної плати;
  • перевірки готовності роботи зовнішнього апаратного забезпечення, у тому числі його параметрів та справності, а також відповідність його необхідному мінімуму, який дозволить керувати комп'ютером до та після завантаження;
  • перевірки можливості завантаження операційної системи

У процесі його виконання перевіряється наявність завантажувальних пристроїв, які повинні бути проініціалізовані до завантаження операційної системи.

До них відносяться:

  • пристрої введення (клавіатура, миша),
  • базовий пристрій виведення (дисплей),
  • пристрій, з якого буде здійснено завантаження ОС - дисковод, жорсткий диск, CD-ROM, флеш-диск, SCSI-пристрій, мережна карта (при завантаженні по мережі)

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

У разі жорсткого диска початковий завантажувач називається головним завантажувальним записом (MBR) і часто не залежить від операційної системи. Зазвичай він шукає активний розділ жорсткого диска, завантажує сектор завантаження даного розділу і передає йому управління. Цей завантажувальний сектор зазвичай залежить від операційної системи. Він повинен завантажити в пам'ять ядро ​​операційної системи та передати йому керування.

Якщо активного розділу немає, або завантажувальний сектор активного розділу некоректний, MBR може завантажити резервний початковий завантажувач і передати керування йому. Початковий резервний завантажувач повинен вибрати розділ (часто за допомогою користувача), завантажити його завантажувальний сектор і передати йому управління.

Послідовність завантаження стандартного IBM-сумісного персонального комп'ютера

Після включення персонального комп'ютера його процесор ще починає роботу.

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

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

Перша команда, що виконується, розташована за адресою FFFF0h і належить простору адрес BIOS. Ця команда просто передає керування програмою ініціалізації BIOS і виконує наступну команду (мікропрограму BIOS).

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

Таким чином, його робота - послідовно читати та виконувати команди з пам'яті.

Системна пам'ять налаштована так, що перша команда, яку вважає процесор після скидання, перебуватиме в мікросхемі BIOS.

Послідовно вибираючи команди з BIOS, процесор почне виконувати процедуру самотестування, або POST.

Процедура POST

Процедура самотестування POST складається з кількох етапів.

  • Початкова ініціалізація основних системних компонентів;
  • Детектування оперативної пам'яті, копіювання коду BIOS на оперативну пам'ять та перевірка контрольних сум BIOS;
  • Початкове налаштування чіпсету;
  • Пошук та ініціалізація відеоадаптера. Сучасні відеоадаптери мають власну BIOS, яку системна BIOS намагається виявити у спеціально відведеному сегменті адрес. Під час ініціалізації відеоадаптера на екрані з'являється перше зображення, сформоване за допомогою BIOS відео адаптера;
  • Перевірка контрольної суми CMOS та стану батарейки. Якщо контрольна сума CMOS є помилковою, будуть завантажені значення за промовчанням;
  • Тестування процесора та оперативної пам'яті. Результати тестування зазвичай виводяться на екран;
  • Підключення клавіатури, тестування портів введення/виведення та інших пристроїв.
  • Ініціалізація дискових накопичувачів. Відомості про виявлені пристрої зазвичай виводяться на екран;
  • Розподіл ресурсів між пристроями та виведення таблиці з виявленими пристроями та призначеними для них ресурсами;
  • Пошук та ініціалізація пристроїв, що мають власну BIOS;
  • Виклик програмного переривання BIOS INT 19h, який шукає сектор завантаження на пристроях, зазначених у списку завантаження.

Залежно від конкретної версії BIOS порядок процедури POST може кілька разів відрізнятися, але наведені вище основні етапи виконуються під час завантаження будь-якого комп'ютера.

Що таке коди POST?

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

Якщо бути дуже точним, у багатьох сучасних чіпсетах перед передачею команд процесору системним контролером попередньо конфігурується «розумна» системна шина. Але це не змінює суті справи.

Основне завдання BIOS на даному етапі – перевірка справності та ініціалізація основних апаратних компонентів комп'ютера. Спочатку конфігуруються внутрішні регістри чіпсету та процесора, перевіряється цілісність коду BIOS. Потім відбувається визначення типу та розміру оперативної пам'яті, пошук та ініціалізація відеокарти (інтегрованої у чіпсет чи зовнішню). Потім конфігуруються порти вводу-виводу, контролер дисководу, IDE/SATA-контролер і підключені до нього накопичувачі. І, нарешті, здійснюється пошук та ініціалізація інтегрованих на материнську плату додаткових контролерів та встановлених карт розширення. Усього виходить близько ста проміжних кроків, після чого управління передається завантажувачу BOOTStrap, що відповідає за старт операційної системи.

Кожен із кроків POST-тестів має свій унікальний номер, який називають POST-кодом. Перед початком виконання чергової процедури її POST-код записується в спеціальний порт, який називається Manufacturing Test Port. При успішній ініціалізації пристрою Manufacturing Test Port записується POST-код наступної процедури і так далі, до повного проходження всіх тестів. Якщо конфігурувати пристрій не вдалося, подальше виконання тестів POST припиняється, а в Manufacturing Test Port залишається POST-код процедури, що викликала збій. Прочитавши його, можна однозначно ідентифікувати проблемний пристрій.

Майте на увазі, що після перезавантаження комп'ютера засобами операційної системи («м'яка» або «гаряча» перезавантаження) або при виході з енергозберігаючого режиму зазвичай виконуються не всі кроки з тестування та конфігурування апаратних компонентів, а лише необхідний мінімум – так швидше. При пошуку несправності необхідно завжди виконувати "жорстку" ("холодну") перезавантаження - клавішею RESET або вимкненням живлення комп'ютера. Тільки так гарантується, що всі етапи ініціалізації будуть виконані у повному обсязі.

Award BIOS 6.0: варіант повного завантаження

Дану таблицю можна використовувати не тільки як список POST-кодів, але і як послідовність дій, які виконуються під час увімкнення комп'ютера. Вона містить коди POST, які відображаються при повній процедурі POST.

POST-код Опис процедури
CF Визначається тип процесора та тестується читання/запис CMOS
C0 Попередньо ініціалізується чіпсет та L1-, L2-кеш, програмується контролер переривань, DMA, таймер
C1 Детектується тип та обсяг оперативної пам'яті
C3 Код BIOS розпаковується в тимчасову область оперативної пам'яті
Перевіряються контрольні суми BIOS
C5 Код BIOS копіюється в тіньову пам'ять і керування передається модулю Boot Block
01 Модуль XGROUP розпаковується за фізичною адресою 1000:0000h
02 Ініціалізація процесора. Встановлюються регістри CR та MSR
03 Визначаються ресурси введення/виводу (Super I/O)
05 Очищається екран та прапор стану CMOS
06 Перевіряється співпроцесор
07 Визначається та тестується контролер клавіатури
08 Визначається інтерфейс клавіатури
09 Ініціалізація контролера Serial ATA
0A Визначається клавіатура та миша, які підключені до портів PS/2
0B Встановлюються ресурси звукового контролера AC97
OE Тестується сегмент пам'яті F000h
10 Визначається тип flash-пам'яті
12 Тестується CMOS
14 Встановлюються значення для регістрів чипсета
16 Спочатку ініціалізується тактовий генератор
18 Визначається тип процесора, його параметри та обсяги кешу L1 та L2
1B Ініціалізується таблиця векторів переривань
Перевіряються контрольні суми CMOS та напруга живлення акумулятора
1D Визначається система керування живленням Power Management
1F Завантажується матриця клавіатури (для ноутбуків)
21 Ініціалізується система Hardware Power Management (для ноутбуків)
23 Тестується математичний співпроцесор, дисковод, ініціалізація чіпсету
24 Оновлено мікрокод процесора. Створюється мапа розподілу ресурсів пристроїв Plug and Play
25 Початкова ініціалізація PCI: перераховуються пристрої, пошук адаптера VGA, запис VGA BIOS за адресою C000:0
26 Встановлюється тактова частота CMOS Setup. Вимикається синхронізація DIMM та PCI, що не використовуються. Ініціалізується система моніторингу (H/W Monitor)
27 Дозволяється переривання INT 09h. Знову ініціалізується контролер клавіатури
29 Програмуються регістри MTRR, ініціалізується APIC. Програмується контролер IDE. Вимірюється частота процесора. Викликається розширення BIOS відеосистеми
2B Пошук BIOS відеоадаптера
2D Відображається заставка Award, інформація про тип процесора та його швидкість
33 Скидається клавіатура
35 Тестується перший канал DMA
37 Тестується другий канал DMA
39 Тестуються сторінкові регістри DMA
3C Налаштовується контролер 8254 (таймер)
3E Перевірка контролера переривань 8259
43 Перевіряється контролер переривань
47 Тестуються шини ISA/EISA
49 Обчислюється обсяг оперативної пам'яті. Налаштовуються регістри для процесора AMD K5
4E Програмуються регістри MTRR для процесорів Syrix. Ініціалізуються кеш L2 та APIC
50 Визначається шина USB
52 Тестується ОЗП із відображенням результатів. Очищується розширена пам'ять
53 Якщо очищено CMOS, то скидається пароль на вхід до системи
55 Відображається кількість процесорів (для багатопроцесорних платформ)
57 Відображається логотип EPA. Початкова ініціалізація пристроїв ISA PnP
59 Визначається система захисту від вірусів
5B Виведення підказки для запуску оновлення BIOS з дискети
5D Запускається контролер Super I/O та інтегрований аудіоконтроллер
60 Вхід у CMOS Setup, якщо було натиснуто клавішу Delete
65 Ініціалізується миша PS/2
69 Включається кеш L2
6B Налаштовуються регістри чіпсету згідно з BIOS Setup
6D Призначаються ресурси для пристроїв ISA PnP та COM-порти для інтегрованих пристроїв
6F Ініціалізується та налаштовується контролер гнучких дисків
75 Детектуються та встановлюються IDE-пристрої: жорсткі диски, CD/DVD, LS-120, ZIP та ін.
76 Виводиться інформація про виявлені пристрої IDE
77 Ініціалізуються послідовні та паралельні порти
7A Скидається та готується до роботи математичний співпроцесор
7C Визначається захист від несанкціонованого запису на жорсткі диски
7F За наявності помилок виводиться повідомлення та очікується натискання клавіш Delete та F1
82 Виділяється пам'ять для керування живленням та заносяться зміни до таблиці ESCD. Забирається заставка з логотипом EPA. Запрошується пароль, якщо потрібний
83 Всі дані зберігаються з тимчасового стеку в CMOS
84 Виведення на екран повідомлення Initializing Plug and Play Cards
85 Завершується ініціалізація USB
87 Створюються таблиці SYSID у сфері DMI
89 Встановлюються таблиці ACPI. Призначаються переривання для PCI-пристроїв
8B Викликається BIOS додаткових ISA- або PCI-контролерів, за винятком відеоадаптера
8D Встановлюються параметри контролю парності ОЗУ CMOS Setup. Ініціалізується APM
8F IRQ 12 дозволяється для гарячого підключення миші PS/2
94 Завершення ініціалізації чіпсету. Відображення таблиці розподілу ресурсів. Увімкнення кешу L2. Встановлення режиму переходу на літній/зимовий час
95 Встановлюється частота автоповтору клавіатури та стану Num Lock
96 Для багатопроцесорних систем налаштовуються регістри (для процесорів Cyrix). Створюється таблиця ESCD. Встановлюється таймер DOS Time за показаннями годинника RTC CMOS. Зберігаються розділи завантажувальних пристроїв для використання вбудованим антивірусом. Динамік повідомляє про закінчення POST. Створюється таблиця MSIRQ FF Виконується переривання BIOS INT 19h. Пошук завантажувача у першому секторі завантажувального пристрою

Невиконання або збій виконання будь-якого кроку в послідовності тестів призводить до зупинки тестування та видачі POST - коду, що відповідає даному кроку збою.

POST - коди інших виробників можна знайти на сайтах виробника Вашої системної плати або виробника DIOS або Internet .

Читання POST-кодів

У майстернях або у фахівців, що займаються ремонтом, контроль виконання мікропрограм BIOS здійснюється за допомогою спеціальної карти розширення. Вона вставляється у вільний слот (більшість сучасних моделей розрахована на шину PCI) і в міру завантаження відображає на своєму індикаторі код процедури, що виконується в даний момент.

Прикладом може бути Post карта PCI BM9222.

Однак POST-карта це не поширений засіб. Скоріше це інструмент професійного ремонтника комп'ютерів. Усвідомлюючи цей факт, виробники материнських плат стали оснащувати моделі, розраховані на ентузіастів, що експериментують з налаштуваннями та розгоном комп'ютера, вбудованими індикаторами POST-кодів.

Прикладом може бути системна плата ECS H67H2-M або моделі X58 Extreme3, P55 Deluxe3 та 890GX Extreme3.

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

Остання можливість дізнатися про збій, що виявився при тестуванні Звукові сигнали повідомлень про помилки.

Звукові сигнали та повідомлення про помилки

Незважаючи на те, що POST-коди є найпотужнішим інструментом виявлення апаратних проблем при старті комп'ютера, BIOS надає й інші засоби діагностики. Якщо у вашому розпорядженні немає POST-карти, а материнська плата не вміє індикувати POST-коди, можна орієнтуватися на звукові сигнали та повідомлення про помилки.

Але для цього необхідно, щоб у корпусі ПК мав системний динамік і він був підключений до системної плати.

Звукові сигнали особливо цінні на початковому етапі, коли відеокарта ще не проініціалізована і, як наслідок, не в змозі відобразити щось на екрані. Унікальна комбінація довгих та коротких сигналів вкаже на проблемний компонент.

На пізніших етапах простіше зорієнтуватися за повідомленням про помилку, що виводиться BIOS у разі апаратної проблеми. У деяких версіях BIOS це повідомлення супроводжується особливим звуковим сигналом, у деяких - замінює його. Але в будь-якому випадку інформації зазвичай достатньо, щоб виявити компонент, що збиває.

Слід зауважити, що звукові сигнали та повідомлення про помилки фактично є наочним варіантом відображення певних POST-кодів, а аж ніяк не додатковим засобом діагностики. Якщо у вашому розпорядженні є POST-карта, або материнська плата здатна відображати POST-коди, треба орієнтуватися саме на коди - вони дають набагато більш точну та детальну картину. Порівняйте хоча б кількість POST-кодів (близько ста) та кількість різних повідомлень про помилки або звукові сигнали (кілька десятків).

Послідовність звукових сигналів Опис помилки
1 короткий Успішний POST
2 коротких Виявлено незначні помилки. На екрані монітора з'являється пропозиція увійти до програми CMOS Setup Utility та виправити ситуацію. Перевірте надійність кріплення шлейфів у роз'ємах жорсткого диска та материнської плати.
3 довгих Помилка контролера клавіатури
1 короткий, 1 довгий Помилка оперативної пам'яті (RAM)
1 довгий, 2 короткі Помилка відеокарти
1 довгий, 3 короткі Помилка під час ініціалізації клавіатури або Помилка відеокарти
1 довгий, 9 коротких Помилка під час читання з ПЗУ
Короткий, що повторюється Проблеми з блоком живлення
Довгий, що повторюється Проблеми з ОЗУ
Висока-низька частота, що повторюється Проблеми з CPU
Безперервний Проблеми з блоком живлення
Процедура Setup

Вхід у BIOS Setup

Вхід у BIOS Setup можливий лише при включенні комп'ютера та при успішному виконанні початкового тестування POST (чути один короткий сигнал із системного динаміка).

Для цього необхідно натиснути певну клавішу або клавіші.

Зазвичай, на екранній заставці під час тестування відображається напис типу «Press DEL to enter Setup» - це означає, що для входу в BIOS Setup необхідно натиснути клавішу DEL. Дізнатися, за якою кнопкою закріплений вхід у BIOS, можна з інструкції до материнської плати. Якщо інструкції немає, а екранна заставка не відображає підказки, можна випробувати найвідоміші варіанти комбінацій:

Delete
Esc
Ctrl+Shift+S або Ctrl+Alt+S
Ctrl+Alt+Esc
Ctrl+Alt+Delete

Безпечна робота з BIOS Setup

Робота з BIOS Setup пов'язана з певним ризиком, оскільки при неправильній або необережній зміні параметра система може не функціонувати нестабільно або не функціонувати взагалі. Є кілька простих порад, які дозволяють звести можливий ризик до мінімуму:

  • Експериментувати з налаштуваннями BIOS Setup найкраще на новому не заповненому інформацією комп'ютері;
  • Намагайтеся взагалі не експериментувати з BIOS на комп'ютерах, що обробляють або зберігають важливу чи об'ємну інформацію. Перед налаштуванням системи за допомогою BIOS подбайте про резервне копіювання важливих даних. Головне в таких комп'ютерах – стабільність. Комп'ютер, що підвівся, розігнаний через кілька годин обробки відео - це втрата часу, електроенергії та результату роботи. Нерозігнаний впорається з цим завданням набагато ефективніше і збереже ваші нерви;
  • Перш ніж змінити важливі параметри, завжди фіксуйте виставлене та змінене значення. Це дозволить вам у разі нестабільної роботи системи повернути її до робочого стану;
  • Не змінюйте значення невідомих параметрів. Уточніть їхнє значення або в інструкції до материнської плати, або в мережі Internet на ресурсі розробника плати;
  • Не редагуйте кілька важливих не пов'язаних між собою параметрів. p align="justify"> При нестабільній роботі системи набагато складніше визначити, який параметр викликав нестабільну роботу;
  • Не розганяйте комп'ютер без відповідного вивчення роботи системи та підготовки, що розганяється;
  • Не використовуйте розділ Hard Disk Utility, який призначений для низькорівневого форматування застарілих моделей жорстких дисків та зустрічається у старих версіях BIOS, тому що це не так. може вивести з ладу сучасний жорсткий диск;
  • Якщо після виставлення параметрів та виходу з BIOS комп'ютер перестає запускатися взагалі, повернути систему в робочий стан можна кількома способами:
    • Якщо після перезавантаження комп'ютера можна увійти в BIOS Setup, потрібно встановити попередні відредаговані параметри. Деякі версії BIOS самі здійснюють відкат змін за останню сесію.
    • Якщо зроблені зміни невідомі, краще скористатися параметрами за замовчуванням, використовуючи команду Load Fail-Safe Defaults. Після цього доведеться налаштовувати систему оптимальну роботу.
    • Якщо комп'ютер зовсім не запускається через неправильні налаштування BIOS, то в такому випадку необхідно обнулити вміст CMOS. При цьому всі значення, включаючи дату/час, будуть змінені. Для цього скинути неправильні установки, для цього просто перемістити перемичку Flash Recovery (IBM) або джампер Clearing CMOS в положення "очищення CMOS". У разі потрібно просто замкнути перемичкою на кілька хвилин контакти відповідного джампера.
    • У разі невдалих результатів налаштування Setup BIOS необхідно після скидання невдалої конфігурації за допомогою джампера в процедурі Setup BIOS продублювати повернення завантаження значень BIOS uk.Wikipedia.org<< на главную>>
  • Основні поняття завантажувального процесу операційних систем Windows XP та 7
  • Метод подвійного та багатоваріантного завантаження Windows.
  • Обмеження завантаження операційної системи Windows та інші можливі варіанти.
  • Як працюють завантажувачі (менеджери завантаження) сторонніх виробників.

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

У цьому посібнику буде лише найнеобхідніша інформація. Я думаю, що немає потреби глибоко вникати в процес завантаження. Достатньо знати основні технічні моменти, щоб зробити правильний вибір під час встановлення або зміни конфігурації, завантаження операційної системи Windows.

Даний нижче матеріал може комусь здатися занадто спрощеним, але це лише те, що дійсно необхідно для розуміння процесу. Процес завантаження операційної системи - це послідовний запуск і виконання однієї "програмки", яка потім запускає другу, третю тощо. Як правило, для завантаження необхідний запуск 4 або 5 програм, остання з яких фактично запускає операційну систему Windows.

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

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

У послідовному запуску програм немає нічого секретного чи магічного, ці програми як і будь-які інші лише закодовані одиниці та нулі, які вказують комп'ютеру, що необхідно робити. Деякі з програм мають дивні імена, які стали майже легендами, їх назви вимовляються часто з почуттям поваги і здивування. Вони викликають повагу навіть серед деяких загартованих комп'ютерних фахівців. Я не хочу наражати на сумніви, чиї чи переконання, але це правда.

Послідовність завантаження операційної системи

Перша програма вже вбудована в материнську плату вашого персонального комп'ютера, точніше, в маленьку мікросхему (чіп), яка знаходиться завжди в тому самому місці. Під час увімкнення комп'ютера вона запускається та виконує закладену в неї програму. Ця перша програма називається Біос(BIOS). Виконавши свою роботу, вона запускає таку програму. БІОС дуже "розумна" і завжди намагається визначити наступну для запуску програму, для цього перевіряються місця її можливого перебування.

Як правило, все знаходиться автоматично, тому робити нічого не потрібно. Іноді виникає необхідність вказати програмі потрібний параметр для пошуку необхідного пристрою - флоппі дисководу, жорсткого диска і т.д.

Для продовження завантаження операційної системи з жорсткого диска потрібна друга програма, яка знаходиться на жорсткому диску. Для простоти пошуку другої програми її завжди розміщують в тому самому місці, і БІОС завжди починає перегляд саме з нього.

Запуск другої програми завжди починається з перших байтів першого сектора. Називається ця програма MBR(Головний завантажувальний запис). Вона містить у собі програму початкового завантаження та таблицю розділів ( Partition Table) жорсткого диска - ось це подвійне призначення багатьох вводить в оману. Найпоширеніша назва завантажувальної частини MBR це Програма початкового завантаження ( IPL). Так само як і Біос, програма IPL універсальна для всіх операційних систем, так що не треба турбуватися, підтримує вона, Windows або Linux. Перебуваючи на жорсткому диску, її завдання лише запустити таку програму. Програма IPL від компанії Майкрософт має невеликий розмір і обмежені можливості, її мета і основне завдання визначити і запустити наступну програму в ланцюзі.

Переглядаючи таблицю розділів, і помітивши "прапор активності, що розвивається", програма розуміє, що знайшла свою мету. Якщо розділ відзначений прапором активності, то програма початкового завантаження (IPL) йде до першим байтам першого сектора і запускає наступну програму в ланцюзі завантаження. При зміні (переміщенні) прапора активності з одного розділу на інший програма початкового завантаження почне перегляд і завантаження з іншого розділу.

При зміні прапора активності ніяких фізичних дій із розділом немає, вноситься лише невелика поправка до таблиці розділів. Розділ із встановленим прапором називають Активним розділом, щоб змінити активність розділів жорсткого диска, треба просто перемістити вказівник (прапор технічною мовою) на потрібний розділ.

Третя програма в ланцюжку програм, що послідовно запускають, знаходиться на самому початку розділу. Вона називається PBR(Запис Завантаження Розділу) або іноді її називають VBR(Том Записи Завантажень). Коли PBR зробить свою роботу, вона запускає наступну за нею програму. PBR дуже специфічна, і на відміну від BIOS та IPL, їй потрібно знати, точну назву та місцезнаходження файлу. Назва файлу в залежності від операційної системи буде різною, тому в процесі встановлення операційної системи PBR запише необхідні дані, щоб легко можна було знайти потрібний файл. Для операційних систем від Windows NT до Vista це буде файл під назвою ntldr, який завжди знаходиться у кореневому каталозі розділу. Розташування файлу ntldr завжди у кореневому каталозі поруч із папками Windows і Program Files, а чи не всередині папки чи директорії.

Для операційних систем від Windows NT до Vista запуск файлу ntldr буде четвертою та останньою програмою в ланцюзі завантаження. Файл, насправді, є завантажувачем Windows, яка запускається з папки system32.

На цьому малюнку відображено послідовність завантаження. Головний завантажувальний запис (MBR) показаний як окрема секція на початку жорсткого диска. Для цього на жорсткому диску спеціально зарезервовано маленький розділ, який не пов'язаний з іншими розділами. Запис завантаження розділу (PBR) показано як окрему секцію, хоча насправді це частина розділу. Операційна система Windows резервує перші 16 секторів свого розділу виключно для використання завантажувального запису розділу.

Послідовність завантаження старої операційної системи Windows NT та Vista майже не відрізняється, але в останній операційній системі ntldr було змінено. У старій Windows NT файл ntldr був і завантажувачем і менеджером завантажень, але в Windows Vista ці дві функції були розділені на дві різні програми.

Функцію менеджера завантаження, в обов'язок якої входить пошук активної операційної системи, тепер виконує — файл bootmng. Завантажувач, який фактично запускає операційну систему, виконує файл winload.exe. Файл bootimg знаходиться в кореневому розділі встановленої операційної системи, а файл winload.exe розміщений усередині папки system32 системної папки Windows. Всі ці зміни додають ще один крок у ланцюжок завантаження операційної системи, тому Viste вона становить п'ять кроків.

Операційна система Windows 7 має величезні можливості, які дозволяють створити додатковий розділ для керування завантаженням і файлами BCD та bootmng. Компанія Майкрософт повідомляє, що зміна в завантаженні нової операційної системи Windows 7, можливо, надалі стане постійною.

Далі буде…

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

Диск, на якому знаходяться файли ОС і з якого здійснюється її завантаження, називається системним.
Програми можуть виконуватися лише якщо вони знаходяться в оперативній пам'яті, тому файли ОС необхідно завантажити в оперативну пам'ять.
Після включення комп'ютера здійснюється завантаження ОС із системного диска на оперативну пам'ять. Завантаження має виконуватися відповідно до програми завантаження – завантажувача ОС.
Поетапно завантаження ОС можна наступним чином:
У комп'ютері знаходиться ПЗУ, що містить програми тестування комп'ютера та першого етапу завантаження ОС, які називаються BIOS (Basic Input/Output System – базова система вводу-виводу). Після увімкнення комп'ютера ці програми починають виконуватися. Причому, інформація про хід цього процесу висвічується на екрані дисплея. Спочатку проводиться тестування та налаштування апаратних засобів, потім починається завантаження ОС. На цьому етапі процесор звертається до диска та шукає в 1 секторі диска наявність невеликої програми-завантажувача MasterBoot.

Master Boot шукає на диску основний завантажувач BootСектор, завантажує його на згадку і передає йому управління. Bootsector(Сектор початкового завантаження) – частина диска, що зарезервована для програми самозавантаження ОС. У цьому секторі зазвичай міститься коротка програма машинною мовою, яка завантажує ОС.
Далі основний завантажувач шукає решту модулів операційної системи та завантажує їх в оперативну пам'ять.
Після закінчення завантаження ОС керування передається командному процесору. У разі використання інтерфейсу командного рядка на екрані з'являється запрошення системи, інакше завантажується графічний інтерфейс.
Залежно від виду ОС процес її завантаження буде відрізнятися. До складу ОС обов'язково входять файли, які відповідають за процес завантаження. Розглянемо «роботу» файлів у процесі завантаження Windows XP.

  1. Початкова фаза завантаження.
  2. Вибір системи.
  3. Визначення "заліза".
  4. Вибір конфігурації.

У початковій фазі NTLDR перемикає процесор у захищений режим. Потім завантажує відповідний драйвер файлової системи для роботи з файлами будь-якої файлової системи, що підтримується XP (FAT-16, FAT-32 та NTFS).

Якщо кореневої директорії є BOOT.INI, його зміст завантажується на згадку. Якщо в ньому є записи про більш ніж одну операційну систему, NTLDR зупиняє роботу — показує меню з вибором і очікує введення від користувача певний період часу.

Якщо такого файлу немає, то NTLDR продовжує завантаження з першого розділу першого диску, зазвичай це C:\.
Якщо в процесі вибору користувач вибрав Windows NT, 2000 або XP, то перевіряється натискання F8 та показ відповідного меню з опціями завантаження.
Після кожного вдалого завантаження XP створює копію поточної комбінації драйверів та системних налаштувань відому як Last Known Good Configuration. Цю колекцію можна використовувати для завантаження у разі якщо якийсь новий пристрій внесло розлад у роботу операційної системи.

Якщо вибрана операційна система XP, то NTLDR знаходить і завантажує DOS програму NTDETECT.COM визначення «заліза», встановленого у комп'ютері. NTDETECT.COM будує список компонентів, який потім використовується у ключі HARDWARE гілки HKEY_LOCAL_MACHINE реєстру.

Якщо комп'ютер має більше одного профілю обладнання, програма зупиняється з меню вибору конфігурації. Після вибору конфігурації NTLDR починає завантаження ядра XP (NTOSKRNL.EXE). У процесі завантаження ядра (але перед ініціалізацією) NTLDR залишається основним у керуванні комп'ютером. Екран очищається і внизу з'являється анімація з білих прямокутників. Крім ядра завантажується і шар Hardware Abstraction Layer (HAL.DLL), щоб ядро ​​могло абстрагуватися від «заліза». Обидва файли знаходяться в директорії System32.

NTLDR завантажує драйвера пристроїв, позначені як завантажувальні. Завантаживши їх, NTLDR передає керування комп'ютером далі. Кожен драйвер має ключ у HKEY_LOCAL_MACHINE\SYSTEM\Services. Якщо значення Start дорівнює SERVICE_BOOT_START, пристрій вважається завантажувальним. Для кожного пристрою на екрані друкується точка.

NTOSKRNL у процесі завантаження проходить через дві фази - так звану фазу 0 і фазу 1. Перша фаза ініціалізує лише ту частину мікроядра та виконавчі підсистеми, яка потрібна для роботи основних служб та продовження завантаження. Фаза 1 починається, коли HAL готує систему для обробки переривань пристроїв. Якщо на комп'ютері встановлено більше одного процесора, вони ініціалізуються. Всі виконавчі підсистеми реініціалізуються в наступному порядку: Object Manager, Executive, Microkernel, Security Reference Monitor, Memory Manager, Linux, Cache Manager, LPCS, I/O Manager, Process Manager.

Ініціалізація Менеджера введення/Виведення починає процес завантаження всіх системних драйверів. З того моменту, де зупинився NTLDR, завантажуються драйвера за пріоритетом. Збій у завантаженні драйвера може змусити XP перезавантажитись і спробувати відновити Last Known Good Configuration. Остання задача фази 1 ініціалізації ядра - запуск Session Manager Subsystem (SMSS). Підсистема відповідальна створення користувача оточення, що забезпечує інтерфейс NT. SMSS працює в режимі користувача, але на відміну від інших програм SMSS вважається довіреною частиною операційної системи і «рідним» додатком (використовує тільки виконавчі функції), що дозволяє їй запустити графічну підсистему і login. SMSS завантажує win32k.sys - графічну підсистему. Драйвер перемикає комп'ютер у графічний режим, SMSS стартує всі послуги, які повинні автоматично запускатися при старті. Якщо всі пристрої та послуги стартували успішно, процес завантаження вважається успішним і створюється Last Known Good Configuration.

Процес завантаження не вважається завершеним до тих пір, поки користувач не ввійшов у систему. Процес ініціалізується файлом WINLOGON.EXE, що запускається як сервіс і підтримується Local Security Authority (LSASS.EXE), який показує діалог входу в систему. Це діалогове вікно відображається приблизно тоді, коли Services Subsystem стартує мережну службу.

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

Комп'ютер вмикається, але не запускається операційна система: причини

Серед усіх можливих ситуацій, коли виникають збої на стадії завантаження, можна назвати кілька типових випадків.

Тут є три варіанти:

  • з'являється чорний екран;
  • з'являється синій екран BSoD;
  • операційна система стартує, але може повністю завантажитися.

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

Якщо ж комп'ютер вмикається, але не запускається завантаження, і натомість на чорному екрані з'являються попередження про програмні збої або відсутні файли, причин такої поведінки системи може бути досить багато. Серед них у першу чергу можна виділити проблеми з вінчестером, пошкодження операційної системи (випадкове чи навмисне видалення системних компонентів або записів реєстру), вплив вірусів, неправильні записи завантажувального сектора, конфлікти оперативної пам'яті тощо. До речі сказати, якщо вискакує синій екран, це більшою мірою стосується «оперативи» або нещодавно встановлених драйверів пристроїв, які й викликають появу конфліктів вже не на програмному, а фізично.

Що робити, якщо не завантажується комп'ютер, і операційна система не стартує з вищевказаних причин? Залежно від ситуації, є кілька рішень. Непосвяченому користувачеві вони можуть здатися досить складними, однак у певних ситуаціях для реанімації системи можна застосувати лише їх. Тому доведеться витратити і час, і сили.

Комп'ютер вмикається, але не завантажується: що робити насамперед?

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

Як правило, практично всі сьогодні використовувані модифікації Windows зазвичай при рестарті автоматично активують запуск Якщо цього не сталося, перед стартом системи доведеться використовувати клавішу F8 для виклику додаткового меню завантаження (у Windows 10 використовується інший метод).

Комп'ютер вмикається, але чи не запускається операційна система? Засмучуватися не варто. Тут у простому варіанті можна вибрати рядок завантаження останньої працездатної конфігурації. Якщо з системними компонентами все гаразд, то система завантажиться без проблем. Якщо це не допоможе, доведеться використовувати розділ усунення несправностей, а іноді успіхом може бути навіть спроба завантаження в безпечному режимі.

Можливе вірусне зараження

На жаль, і віруси можуть спричинити появу таких ситуацій. Що робити, якщо комп'ютер не вмикається? Способи вирішення саме цієї проблеми зводяться до того, щоб використовувати потужний, який міг би провести перевірку на предмет загроз ще до старту самої ОС.

Серед всього різноманіття антивірусного програмного забезпечення окремо варто відзначити дискові утиліти, які стартують безпосередньо з оптичного носія або USB-пристрою, мають власні завантажувальні записи і навіть графічний інтерфейс на кшталт Windows. Одним із найпотужніших засобів можна назвати Kaspersky Rescue Disk. Його використання може гарантувати майже стовідсоткове виявлення вірусів, що навіть ховаються в оперативній пам'яті.

Конфлікти оперативної пам'яті

Тепер подивимося, що робити, якщо не завантажується комп'ютер, і натомість з'являється синій екран. Як уже говорилося, найчастіше це свідчить про проблеми з драйверами та оперативною пам'яттю. Драйвери поки що не чіпаємо, а подивимося саме на «оперативку».

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

Якщо ж систему вдасться хоч якось завантажити, використовуючи той самий безпечний режим, «оперативку» відразу слід перевірити утилітою Memtest86+, яка й допоможе виявити справжню причину неполадок.

Система не бачить жорсткий диск

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

Вінчестер може мати неполадки і програмного, і фізичного характеру, хоча іноді навіть не в цьому. Проблема може бути абсолютно банальною: у користувача в налаштуваннях BIOS встановлений пріоритет завантаження зі знімного пристрою, наприклад, з оптичного диска, який зараз знаходиться в дисководі, але системним не є. Його слід просто витягти та повторити завантаження.

З іншого боку, ще одна проблема того, що не запускається комп'ютер (не включається старт системи), може бути пов'язана з тим, що завантажувач та записи відповідного сектора пошкоджено. Про вирішення цієї ситуації буде сказано трохи згодом. Але в найпростішому випадку можна спробувати відновити дискові дані за допомогою Recovery-утиліт.

Іноді допомагає зміна налаштувань первинної системи введення/виведення BIOS. Тут потрібно знайти розділ, пов'язаний з налаштуванням вінчестера, та у параметрах конфігурації SATA деактивувати використання режиму AHCI.

Нарешті вінчестер може мати і суто фізичні пошкодження, і тут без втручання ззовні не обійтися.

Використання інсталяційного диска

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

По-перше, практично до будь-якого комплекту входить так звана консоль відновлення, за допомогою якої можна усунути безліч збоїв програмного характеру, а по-друге, тут можна використовувати командний рядок. Це, до речі, найдієвіший метод. Далі буде зрозуміло, як це працює.

Проблеми із завантажувачем BOOTMGR

Вважається, що найбільш поширеною проблемою, коли комп'ютер увімкнеться, але не запускається операційна система, є пошкодження завантажувача Windows (Boot Manager). У цьому випадку система таки пише, що відсутня системний розділ (вона просто не бачить вінчестер).

Виправити цю проблему можна за умови старту із завантажувального диска та переходу до командного рядка в консолі відновлення, для виклику якої слід натиснути клавішу «R». Далі потрібно спочатку використати команду перевірки диска, а потім виправити (відновити) завантажувальні записи.

Вся послідовність виглядає так:

  • chkdsk c: /f /r;
  • Bootrec.exe/FixMbr;
  • Bootrec.exe/FixBoot.

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

Можна застосовувати деякі сторонні утиліти. Найбільш підходящою програмою виглядає засіб під назвою MbrFix, що входить до складу завантажувального комплекту Hiren's Boot CD. Після її виклику, наприклад, для Windows 7 за умови, що саме ця система встановлена, причому лише на одному диску (розбиття на розділи відсутня), слід прописати таке:

  • MbrFix.exe /drive 0 fixmbr /win7.

Це позбавить користувача необхідності внесення змін до завантажувальних записів, а завантаження буде відновлено.

Проблеми з доступом до файлу NTLDR

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

Однак якщо результату досягнуто не буде, потрібно буде скопіювати оригінальний файл у корінь системного розділу. Наприклад, якщо це диск «C», а дисковод - «E», команда матиме такий вигляд:

  • E:\i386> copy ntldr C:\ (після копіювання система завантажиться без проблем).

Пошкоджений або відсутній файл HAL.dll

У випадку, коли комп'ютер увімкнено, але не вантажиться операційна система в нормальному режимі, причина може полягати в пошкодженому компоненті HAL.dll (відповідне повідомлення може бути показано на екрані).

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

  • C:\windows\system32\restore\rstrui.exe (далі натискається клавіша Enter і проводиться рестарт).

Замість підсумку

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