Абетка адміну: процес завантаження Windows. Процес завантаження Windows або що заховано під стартовим логотипом

Абетка адміну: процес завантаження Windows. Процес завантаження Windows або що заховано під стартовим логотипом

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

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

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

    Системні файли IO.SYS та MSDOS.SYS;

    Драйвери пристроїв.

    командний процесор MS DOS (файл COMMAND.COM);

    Зовнішні команди MS DOS.

Крім того, MS-DOS, як і всі інші операційні системи для IBM PC, використовує вбудоване програмне забезпечення комп'ютера. Базовою Системою Введення-Виведення (BIOS).

Розглянемо зазначені програмні модулі у порядку, у якому вони завантажуються в оперативну пам'ять після включення ПК.

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

    самотестування комп'ютера під час його включення (програма POST);

    ініціалізацію, тобто. настоянку комп'ютерного устаткування (визначається конфігурація комп'ютера, встановлюються необхідні значення деяких регістрів);

    виконання обслуговуючих функцій та обробку апаратних переривань;

    завантаження операційної системи записаної на магнітному диску (програма BOOT).

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

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

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

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

Системний файлMSDOS.SYS- модуль обробки переривань. В основному він обслуговує файлову систему та розпоряджається розподілом оперативної пам'яті.

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

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

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

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

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

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

Після виконання файлу AUTOEXEC.BAT процес завантаження ОС закінчується. Командний процесор видає запрошення, що показує, що MS-DOS готова прийому команд. Запрошення зазвичай має вигляд А:\>або, наприклад, З:\>,якщо завантаження здійснювалося з жорсткого диска.

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


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

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

Отже, маємо у разі комп'ютер із встановленими версіями Windows 7 і 8.1. Коли комп'ютер увімкнено, бачимо вікно завантажувача з переліком систем для вибору.

Щоразу під час завантаження комп'ютера потрапити у потрібну систему можна, зробивши відповідний вибір. В іншому випадку після певного часу – а за умовчанням це 30 секунд– автоматично буде завантажено Windows, стоїть у списку першої.У нашому випадку це Windows 7оскільки вона встановлена ​​на комп'ютер останньої, і саме її завантажувач, як бачимо, зустрічає нас після запуску комп'ютера.

Що ж, змінимо це. Налаштуємо автоматичне завантаження системи – Windows 8.1. Для цього, природно, необхідно увійти до неї.

Нам потрібен розділ налаштувань, і Windows 8.1 в нього можна потрапити за допомогою контекстного меню на кнопці.

У віконці системи вибираємо Додаткові параметри.

Потрапити до розділу налаштувань у Windows 7 можна також за допомогою контекстного меню, але викликаного на значку «Комп'ютер»у провіднику. Серед команд необхідно вибрати.

У Windows 7 також вибираємо Додаткові параметри.

Подальші кроки обох системах ідентичні.

У вікні властивостей системи, що з'явилося, у вкладці «Додатково»тиснемо кнопку параметрів в останньому розділі.

Тепер можна розпочати редагування завантаження кількох систем. Змінюємо завантажену за замовчуванням Windows з числа варіантів у списку, що випадає. У нашому випадку встановлену Windows 7 змінюємо на Windows 8.1.

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

Якщо переважно робота проводиться лише в одній системі, немає сенсу залишати півхвилини очікування її автоматичного завантаження. Іншу операційну систему можна не позбавляти можливості запуску, але скоротити встановлений час для вибору варіантів завантаження. У відображенні списку систем, що завантажуються, в нашому випадку встановимо 5-секунднеочікування перед автоматичним завантаженням ОС Windows 8.1. Цього часу вистачить з лишком, щоб зробити вибір, якщо раптом колись знадобиться увійти до Windows 7.

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

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

Після внесення змін тиснемо «Ок»внизу цього вікна, а також унизу вікна властивостей системи.

Все – список завантаження операційних систем відредаговано.

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

Неіснуючу операційну систему краще взагалі видалити з варіантів завантаження, щоб вона не затягувала процес запуску основної Windows.

В основній системі викликаємо команду. У Windows 8.1 швидкий доступ до неї реалізований у контекстному меню на кнопці.

Нам потрібен розділ конфігурації системи. Вводимо в поле команди значення:

Тиснемо «Ок».

У Windows 7 запустити вікно конфігурації системи можна простіше - прописавши ключовий запит у поле пошуку меню .

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

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

Внесені зміни зберігаємо кнопкою . Після натискання «Ок»система запропонує перезавантажити.

Після перезапуску комп'ютера можемо спостерігати негайне автозавантаження системи.

Призначення, опис, встановлення та налаштування відомого завантажувача GRUB http://www.сайт/linux/zagruzchik-grub http://www.сайт/@@site-logo/logo.png

Призначення, опис, встановлення та налаштування відомого завантажувача GRUB

Що таке завантажувач?

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

Існує декілька завантажувачів, включаючи завантажувач операційних систем GRUB (універсальний завантажувач), Boot manager, LILO (завантажувач ОС Linux), NTLDR (завантажувач Windows NT систем) та інші. Я вирішив описати GNU GRUB та як його використовувати.

Що таке завантажувач операційних систем GRUB?

Завантажувач операційних систем GRUB – це дуже потужний завантажувач, який може завантажувати різноманітні операційні системи, такі як Windows, DOS, Linux, GNU Hurd, BSD та інші. В даний час LILO є найпопулярнішим завантажувачем, який використовується майже всіма з мультизавантажувальними системами. Але якщо ви використовуєте LILO, то не повинні забувати перезапускати LILO кожного разу, коли ви змінюєте конфігурацію або інсталюєте нове ядро. Також LILO не такий гнучкий як GRUB. це друге ім'я гнучкості. Його остання версія - 0.5.96.1. Ця версія підтримує такі файлові системи, як ext2 (використовується ОС Linux), FAT16 і FAT32 (використовуються Win9x і WinME), FFS (швидка файлова система, що використовується *BSD UNIX), ReiserFS (журнальована файлова система, розроблена для ОС Linux і інтегрована в ядро Linux 2.4.1) та minix (стара файлова система, розроблена для ОС MINIX, яка використовується також у ранніх версіях ОС Linux). З GRUB Ви можете “бачити” вміст файлової системи без завантаження операційної системи. Наприклад, якщо Ви хочете подивитися дату та час, записані у файлі, але не маєте часу для завантаження операційної системи, то можете використовувати командний рядок GRUB (“grub>”) та написати:

grub> cat (partition number)/home/god/filename.txt

Ви отримаєте повний вміст файлу, включаючи дату та час.

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

Зараз я поясню три основні кроки для використання GRUB: компіляція, інсталяція та конфігурація.

Крок 1: Компіляція та інсталяція програмного пакета завантажувача GRUB

Завантажте вихідні тексти

GRUB з ftp://alpha.gnu.org/pub/gnu/grub

Розпакуйте архів командою

"tar -xvzf filename.tar.gz". У моєму випадку ім'я файлу було grub-0.5.96.1.tar.gz і я зробив:

# tar -xvzf grub-0.5.96.1.tar.gz

Ця команда витягла з архіву файли та папки до папки з ім'ям

"grub-0.5.96.1". Тепер робіть таке:

# ./configure

Якщо Ви бажаєте змінити деякі налаштування компіляції

Наприклад, додати або видалити підтримку індивідуальних файлових систем, мережевих карток, наберіть:

# ./configure --help

Ця команда виведе на екран усі можливі опції

Тепер використовуйте –enable та –disable префікси для додавання або видалення підтримки деяких пристроїв тощо. ПРИМІТКА: GRUB підтримує мережеве завантаження.)

Для початку процесу компіляції наберіть:

# make

Для встановлення всіх файлів наберіть:

# make install

Ви встановили програмний пакет GRUB, тепер можна розпочинати встановлення завантажувача GRUB у завантажувальний сектор.

Хорошою ідеєю є зберігати всі файли завантажувача, які стосуються завантаження директорії /boot/grub. Для того, щоб зробити це, дотримуйтесь наступного прикладу: За замовчуванням всі файли завантажувача інстальовані в /use/share/i386-pc або /use/local/share/grub/i386-pc залежно від того, як визначено змінні середовища. Створіть каталог /boot/grub. Потім скопіюйте такі файли до папки:

Я опишу ці файли пізніше. Також скопіюйте програму GRUB (яка може знаходитися в каталозі /usr/sbin або /use/local/sbin) до папки /boot/grub.

Перед тим, як інсталювати GRUB, Ви повинні знати, як GRUB сприймає жорсткий диск та інформацію про розділи. Перш за все, відлік починається з 0, а не з 1. У Linux перший жорсткий диск, прикріплений до основного контролера, називається hda, а в GRUB він називається hd0. Подібно до цього, дисковод у GRUB називається “fd0”. Отже, перший, другий і третій розділ першому жорсткому диску (hda1, hda2, hda3) називаються “hd0,0”, “hd0,1” і “hd0,2” в GRUB. ПРИМІТКА: кома – це невід'ємна частина назви розділу жорсткого диска в GRUB.

Для опису двох полів (диск та номер диска, номер розділу диска) використовуйте круглі дужки. Наприклад: (hd0,0) (hd0,1) (hd0,2) тощо. (hd0,0) – це перший розділ першого диска. Подібно (hd1,5) – це шостий розділ другого диска, а (hd2,0) – перший розділ третього диска.

Крок 2: Інсталяція завантажувача операційних систем GRUB

Інсталяцію безпосередньо завантажувача можна розділити на три етапи

: Інсталяція "stage1" у MBR Настроювання адреси або розташування, "stage2". Налаштування меню завантаження або набору опцій для вибору операційної системи для завантаження.

Почніть інсталяцію з наступних команд:

# ./grub

Ця команда опитує пристрої та виводить повідомлення. Це може тривати багато часу.

end_request: I/O error, dev 02:00 (floppy), sector 0

GRUB version 0.5.96.1 (640K lower / 3072K upper memory)

ПРИМІТКА: GRUB має мінімальну оболонку, схожу на bash. Для першого слова TAB виводить усі можливі завершення команди. В інших випадках TAB виводить можливі завершення назв пристроїв, імен файлів. Ви можете бути вражені цією можливістю. Щось на кшталт цього може статися:

grub> install (hd0,4)/boot/grub/stage1 (hd0) (hd0,4)/boot/grub/stage2 p (hd0,4)/boot/grub/menu.conf

Тепер давайте розглянемо цю команду детальніше:

вбудована команда, що змушує GRUB інсталювати (hd0,4)/boot/grub/grub/stage1 to (hd0), MBR.

(hd0,4)/boot/grub/stage2

вказує, де розташований stage2 образ. з наступними опціями: (hd0,4)/boot/grub/menu.conf

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

Ми можемо підсумовувати команди:

Тепер Ви маєте елементарну інсталяцію.

Інсталяція на дискету:

Для встановлення GRUB на дискету Ви повинні знати команду “dd” і як вона працює. Для завантаження GRUB дискети Ви повинні записати файли stage1 і stage2 на перші сектори дискети.

Інсталяція stage1 на дискету

Вставте форматовану дискету та наберіть:

# dd if=stage1 of=/dev/fd0 bs=512 count=1

Знову розглянемо команду докладніше:

у нашому випадку stage1

наприклад, дисковод (може бути відмінним від наведеного у прикладі пристрою на вашому комп'ютері)

bs=bytes to read and write

У нашому випадку

count=how багато часу для виконання цієї операції

кількість копій.

Інсталяція stage2 на дискету

[root@heaven /boot/grub ]# dd if=stage2 of=/dev/fd0 bs=512 seek=1

Тут все, як і для stage1, за винятком нового параметра, званого seek. Цей параметр змушує пропустити одне "bs" значення. Наприклад, вище описаної команді bs – це 512 байт, тоді seek=1 означатиме пропуск перших 512 байт на дискеті і продовження запису з 513-го байта. Це збереже результат першої команди, записані дані не будуть пошкоджені переписуванням.

Тепер у Вас є найпростіша інсталяція завантажувача GRUB на дискеті.

Крок 3: Конфігурація завантажувача операційних систем GRUB

У цій секції ми розглянемо, як завантажувати різні операційні системи та скласти menu.conf – конфігураційний файл меню.

Почнемо з процедури завантаження, що підтримується GRUB. Завантаження може бути виконане двома шляхами:

1) Передача управління ядру ОC

2) Передача керування іншому завантажувачу: Вказати кореневий пристрій або кореневу файлову систему. Вказати GRUB місце знаходження ядра системи та параметри. Перезавантажити комп'ютер та спробувати це.

У мене ядро ​​Linux знаходиться в каталозі /boot під назвою bzImage, а коренева файлова система - /dev/hda5 або (hd0,4) у GRUB. Отже, моя процедура завантаження виглядає так: [ Вказує кореневий розділ]

2. kernel /boot/bzImage root=/dev/hda5 Вказує ядро]

[ Вказує ядро]

3. boot Починає завантаження Linux]

[ Починає завантаження Linux]

Завантажувальна процедура другого методу передбачає наявність іншого завантажувача, наприклад LILO або NTLDR, встановленого в один із розділів жорсткого диска: Вказати кореневий розділ, але не монтувати його. Активувати розділ 3.

Вказати перший сектор пристрою, якому буде передано керування. Перезавантажити комп'ютер та спробувати це.

Наведу приклад з Windows, проінстальованої в /dev/hda1 або (hd0,0). процедура завантаження Windows така: [+1 вказує перший сектор поточного основного розділу]

4. boot передає контроль]

[ передає контроль]

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

Всі записи меню начитаються з "title TITLENAME" без ком. Ви можете привласнити TITLENAME будь-що.

Щоб створити меню завантаження Linux: Встановіть title. Встановіть кореневий розділ. Встановіть ядро ​​та параметри. Завантажтеся.

Для створення працюючого меню:

title Debian GNU/Linux 2.2 kernel 2.4.1

kernel /boot/bzImage.2.4.1

(Символ (#) на початку рядка позначає коментар.)

Щоб створити меню для

Windows або DOS:

rootnoverify (hd0,0)

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

Існує легкий шлях інсталяції двох екземплярів ОС на Ваш комп'ютер шляхом приховування одного з розділів жорсткого диска в момент завантаження та використання іншого. При цьому Ви можете захистити розділ паролем, тому ніхто не зможе його використовувати помилково. Нижче наведено приклад, як створити кілька екземплярів ОС Windows, hda1 та hda2 або (hd0,0) та (hd0,1), використовуючи команди lock, password, hide та unhide.

Для Windows "My Entry":

rootnoverify (hd0,0)

Для ефективного використання команди lock Ви повинні вказати команду password на початку файлу конфігурації. Синтаксис команди password наступний: password secret ("secret" – це пароль). Ви можете ввести пароль у будь-який час, натиснувши клавішу p.

Для Windows "Family Entry":

title Family Entry

rootnoverify (hd0,1)

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

Існує ще один цікавий трюк із використанням команди

password. Для приховування елементів у списку конфігураційного файлу за замовчуванням Ви можете завантажити власний список, використовуючи таку команду:

/boot/grub/secret-list.conf

У цій команді "secret" – це пароль, а /boot/grub/secret-list.conf – це файл паролів. Перед тим, як це робити, Ви повинні встановити кореневий розділ і повний шлях. Наприклад:

Ще однією важливою командою є команда "map", яку Ви можете використовувати, коли у Вас є два жорсткі диски та операційна система, яка не може завантажуватися з другого диска, наприклад Windows. Можна відобразити hd0 як hd1 і hd1 як hd0. Інакше кажучи, можна віртуально переставляти жорсткі диски. Приклад:

grub> map (hd0) (hd1)

grub> map (hd1) (hd0)

Для завантаження ОС FreeBSD:

title FreeBSD 4.0

kernel /boot/loader

Тут ми передаємо управління завантажувачу ОС FreeBSD. Ви бачите, що кореневий розділ (hd0,4,a) включає три аргументи, тому що FreeBSD віртуально ділить існуючий розділ жорсткого диска. Ми передаємо керування кореневим підрозділом розділу жорсткого диска “a”. Якщо FreeBSD повністю займає диск вашої системи, тоді кореневий підрозділ називатиметься (hd0,a). Отже, ми передаємо управління завантажувачу FreeBSD, що набагато краще, ніж передати управління безпосередньо ядру цієї ОС з низки причин.

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

Різні команди GRUB:

xx – це позначка для завантаження за замовчуванням.

yy – це тайм-аут, після якого GRUB почне завантаження за замовчуванням.

zz – це мітка для завантаження, яку GRUB завантажуватиме, якщо після таймууту не вдасться завантажити мітку за замовчуванням.

Використовується для забарвлення меню. Синтаксис такий: color normal current_selection. Обидва поля можуть мати два значення, такі як пріоритетний та фоновий кольори. Наприклад:

color green/black або light-gray/blue

Ви також можете використати відповідні номери.

Пам'ятайте: всі значення починаються з 0, отже, 0 – перший елемент.

Операції із документом

Давним-давно, коли я був маленьким працював в інститутській лабораторії на великому комп'ютері СМ-3 (щось подібне до знаменитої PDP-11), bootstrapping (завантаження) ЕОМ виглядала так. У фотозчитувач заправлялася коротенька паперова перфострічка з пробитою на ній програмою початкового завантаження, запускався процес зчитування, а далі... як пощастить.

Справа в тому, що паперова стрічка поступово зношувалась, починала погано читатися, і ЕОМ могла з першого разу «не завестися». У цьому випадку процес треба було повторювати, часом кілька разів, до кінця. Коли стрічка остаточно виходила з ладу і машина не хотіла «оживати», доводилося тимчасово вводити програму початкового завантаження вручну за допомогою розташованих на передній панелі перемикачів. Тут, головне, було не поспішати і не робити помилок.

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

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

Увімкнення комп'ютера, POST, BootMonitor

Початковий етап завантаження операційної системи після включення комп'ютера починається в BIOS (Basic Input/Output System - базова система вводу-виводу). У налаштуваннях BIOS ми вказуємо завантажувальний пристрій або ряд завантажувальних пристроїв у порядку їхнього пріоритету. Можливі різні варіанти завантаження та їх комбінації: із жорсткого диска, CD/DVD – диска, USB-flash та інші.

Відразу після проходження POST (Power-On Self-Test — самотестування після включення) BIOS комп'ютера почне по черзі перебирати зазначені завантажувальні пристрої доти, доки на одному з них не знайде відповідний спеціальний запис, в якому міститься інформація про подальші дії.

Завантажувач 1-го рівня. Master Boot Record

Master Boot Record - головний завантажувальний запис, розташований у перших фізичних секторах завантажувальних пристроїв зберігання. Вона містить таблицю розділів (Partition Table) та виконуваний код.

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

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

Завантажувач 2-го рівня. Partition Boot Sector

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

Початковий етап завантаження ОС. Менеджер завантаження ОС

Спочатку Linux завантажувачем був LILO (Linux Loader). В силу недоліків, що були в ньому, головним з яких була нездатність розуміти використовувані в Linux файлові системи, пізніше почав використовуватися завантажувач GRUB (GRand Unified Bootloader) в якому недоліки LILO були виправлені.

Якщо йдеться про версії Windows до Vista, наприклад, Windows XP, то буде завантажено Ntldr. Він, у свою чергу, зчитує інформацію з текстового файлу Boot.ini, в якому записано інформацію про встановлені операційні системи.

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

Завершальним етапом завантаження операційної системи є завантаження ядра ОС і передачі йому управління.

Кілька років тому в моїй практиці був такий кумедний випадок.

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

Приблизно через тиждень мій підопічний зателефонував мені і мало не плачу повідомив, що все зникло і комп'ютер більше не працює. Добре, що замикатися він не став і чесно розповів, як було діло. А справа була така. Товариш поліз дослідити вміст свого комп'ютера і знайшов у корені диска С: кілька підозрілих і «непотрібних», на його погляд, файлів. Він вирішив звільнити місце і файли ці просто видалив. Думаю, що всі вже здогадалися, що це були boot.ini, ntldr, ntdetect та ін. Виправити ситуацію складнощі не уявляло, хіба що довелося ще раз їхати до нього.

До речі, для того, щоб отримати проблеми із завантаженням Windows XP, можна було і нічого не прати, а злегка «підправити», наприклад, boot.ini.

Мабуть Microsoft якось дізналася про цей випадок і в наступній версії своєї ОС вирішила приховати файли завантажувача краще.

Особливості завантаження операційних систем Windows Vista / 7 / 8

У Windows Vista або Windows 7/8 диспетчер завантаження називається Bootmgr. Він читає список встановлених операційних систем не з простого текстового файлу, яким є boot.ini, а із системного сховища BCD (Boot Configuration Data), доступ до якого здійснюється за допомогою спеціальної утиліти bcdedit.exe.

Але це ще не все. Відкриємо "Керування комп'ютером" -> "Керування дисками" >

Процес стандартної інсталяції операційної системи Windows Vista/7/8 створює на початку диска додатковий розділ «Зарезервовано системою». Йому не надається буква диска, завдяки чому, якщо не зробити додаткових кроків, і сам розділ і його вміст будуть приховані від користувача. Цей основний розділ має статус «Системний» та «Активний» і, отже, видалити його також не можна.

У Windows 7 розмір такого розділу становить 100 МБ, у тому числі зайнято близько 30 МБ, у Windows 8 – вже 350 МБ, причому зайнято їх 105 МБ. Така різниця пояснюється тим, що Windows 8 на цей розділ перенесена папка “Recovery”.

Подивимося вміст розділу "Зарезервовано системою". Для цього призначимо йому букву диска, наприклад, "W" в "Керування дисками". Додатково відкриємо "Панель управління" -> "Параметри папок" і на вкладці "Вид" знімемо галку з "Приховувати захищені системні файли" і поставимо позначку на "Показувати приховані файли, папки та диски".

Якщо в системі встановлено файловий менеджер FAR Manager, то для перегляду можна скористатися ним і не налаштовувати видимість прихованих файлів.

Так виглядає вміст розділу «Зарезервовано системою» у Windows 8 >

Як і очікувалося, в корені розділу бачимо завантажувач Bootmgr.

А так виглядає частина вмісту папки "Boot" >

У папці ми знаходимо базу сховища даних конфігурації завантаження BCD і супутні папки з мовними файлами і файлами шрифтів.

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

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

Головним завданням завантажувача 3-го рівня, у ролі якого виступає, залежно від типу ОС, Bootmgr, Ntldr або GRUB, є читання із завантажувального диска та завантаження ядра операційної системи. Крім того, у разі множинного завантаження, коли на комп'ютері встановлено кілька операційних систем, завантажувач 3-го рівня дозволяє вибирати потрібну при кожному запуску комп'ютера.

Класичною помилкою, якій Microsoft присвятила, є інсталяція Windows XP після Windows Vista/7/8. Інсталятор Windows XP позначає свій розділ як активний, після чого, під час завантаження, MBR передає управління PBS цього розділу а він, у свою чергу, - Ntldr. Завантажувач Windows XP нічого не знає про пізніші версії операційних систем Windows і їх завантаження стає неможливим. Лікується досить легко, але недосвідченого користувача така ситуація може поставити в глухий кут.

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

9 коментарів

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

  1. Підкажіть будь ласка як саме лікувати?
    «Завантажувач Windows XP нічого не знає про пізніші версії операційних систем Windows і їх завантаження стає неможливим. Лікується досить легко, але недосвідченого користувача така ситуація може поставити в глухий кут.»

    Поставив ХР після Vista на ноутбук — у результаті запуск системи доходить до початку завантаження ХР і все по новій перезавантажується, а якщо відключити (на час завантаження ОС) адаптер живлення, то все завантажується нормально. Якщо завантажувати в безпечному режимі, адаптер не потрібно вимикати. Що це може бити і як із цим боротися?

    Будь ласка, відпишіть. ЗАЗДЕЛЕГІДЬ ДЯКУЮ. ПРОБАЧИТЕ ЗА «ЛАМАННЯ» УКРАЇНСЬКУ.

    • Щодо впливу адаптера живлення на завантаження ХР нічого не скажу — конкретних ідей немає. Щодо відновлення завантаження Vista, якщо це актуально, то в кінці посту є посилання на статтю супорта Microsoft (919529), присвячену безпосередньо цій темі. Для відновлення буде потрібно інсталяційний диск Vista. У командному рядку з правами адміністратора потрібно виконати:
      Х:bootbootect.exe /nt60 all
      де X: літера оптичного приводу.
      А ось завантаження XP потрібно буде додавати вручну за допомогою редактора. Набір команд буде таким:
      Bcdedit /create (ntldr) /d "Microsoft Windows XP"
      якщо дана команда завершиться невдачею, то:
      Bcdedit /set (ntldr) опис "Microsoft Windows XP"
      далі:
      bcdedit /set (ntldr) device partition=X:
      Х: - літера диска розділу, на якому знаходяться файли завантажувача XP, та шлях до нього:
      bcdedit /set (ntldr) path \ntldr
      bcdedit /displayorder (ntldr) /addlast

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

    • Юрію! Боюся, що тих відомостей, які Ви повідомили, явно недостатньо для якихось рекомендацій. Яка Windows та про які етапи йдеться? Уточніть.

    Доброго здоров'я, Олександре.
    Як зрозуміти, запобігти, а якщо повториться — правильно вийти з такої ситуації.
    Ноутбук. Встановлено Windows-7. Після включення і введення пароля видав "missing operating system" - тобто "відсутня операційна система". Вимкнення з повторним включенням дали той самий результат. Запуститися вдалося лише вийнявши і згодом вставивши акумулятор.
    Напередодні, щоправда, мало місце некоректне виключення: попередньо не було відключено флешку та модем. Раніше така забудькуватість теж траплялася, але такого ефекту не було.
    Буду вдячний за доступну старому «чайнику» відповідь (мені років на десять більше, ніж пану в забавному випадку, але познайомився з КОМП приблизно в тому ж віці).

    • Володимире, привіт. З наступаючими святами та всіх благ.
      У цій ситуації Ви зробили все правильно - скинули «залиплий» глюк.
      Як співається у пісеньці: «Одна дощка – ще не дощ. Одна сніжинка ще не сніг». Можливо, що нічого подібного більше не станеться. Ось якщо із запуском розпочнуться регулярні проблеми, тоді треба буде розбиратися. А взагалі, Windows 7 і вище досить стійкі до позаштатних вимкнень.
      Що робити? Ви самі відповіли на своє запитання – намагатися штатно відключати пристрої. І якщо є можливість підключити USB зовнішній диск, то я обов'язково зробив би (насправді роблю досить регулярно) бекап системи, наприклад за допомогою .

Іноді після неправильної установки (або переустановки або якщо встановлено дві системи) Windows при завантаженні з'являється меню з вибором завантаження ОСі.

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

Вибір операційної системи у Windows XP
- Клацаємо ПКМ по значку "Мій комп'ютер" та в меню вибираємо пункт "Властивості"
- - У вікні "Властивості системи", що відкрилося, переходимо на вкладку "Додатково"
- - - У розділі "Завантаження та відновлення" натискаємо кнопку "Параметри"


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

Вибір операційної системи у Windows 7
- Натискаємо ПКМ на значку "Мій комп'ютер" та в меню вибираємо пункт "Властивості"
- - У вікні "Система" знаходимо зліва посилання "Додаткові параметри системи" і натискаємо на неї
- - - У вікні "Властивості системи", що відкрилося, переходимо на вкладку "Додатково"
- - - - У розділі "Завантаження та відновлення" натискаємо кнопку "Параметри"


Далі все як описано вище для XP.

У кожному з цих випадків необхідно перезавантажитися.

А що робити, якщо Ви не хочете видаляти ці системи чи змінювати параметри, а хочете щось більше?
Тоді Вам потрібно буде редагувати файл boot.ini.
Цей файл відповідає за вибір ОСей під час завантаження. Він знаходиться в корені диска і є прихованим. Якщо встановлено одну систему, його немає. Його можна редагувати як у тому самому вікні, що вище натиснувши кнопку Виправлення, так і в корені диска, відкривши через стандартний блокнот.

Ось приклад стандартного файлу boot.ini з вибором завантаження двох операційних систем:



timeout=30



multi(0)disk(0)rdisk(0)partition(2)WINNT=”Windows 7” /fastdetect


де:
  • timeout - час очікування, поки користувач вибере варіант завантаження (задається в секундах).
  • default – ОС за замовчуванням. Тобто та ОС, яка буде обрана після часу «timeout», якщо користувач не зробить ніякого вибору.
  • multi(0) – порядковий номер адаптера, з якого здійснюється завантаження. (multi(*) або scsi(*) або signature(*)).
  • disk(0) - зазвичай дорівнює 0 (у разі використання multi(*)).
  • rdisk(n) – порядковий номер жорсткого диска, з якого здійснюється завантаження. Від 0 до 3
  • partition(n) - порядковий номер розділу жорсткого диска, із якого завантажується ОС. Нумерація починається з першого.

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

    multi(0)disk(0)rdisk(0)partition(1)WINDOWS="Windows XP Professional" /fastdetect


    або ж просто перейменувати Windows XP Professional на Моя улюблена вінда.

    Файл boot.ini стандартний для Windows XP під час завантаження однієї системи. Те саме можна віднести і до Windows 7, 8, Vista. Лише назва інші.


    timeout=30
    default=multi(0)disk(0)rdisk(0)partition(1)WINDOWS

    multi(0)disk(0)rdisk(0)partition(1)WINDOWS="Microsoft Windows XP Professional" /fastdetect

    Ну і наостанок інструкція MIcrosoft.

  •  

     

    Це цікаво: