Багато з тих, у кого на комп'ютері встановлено дві або більше EFI-системи Windows на різних жорстких дисках, і всі вони зі своїми автономними завантажувачами, напевно стикалися з проблемою плутанини в переліку вибору пристроїв завантаження BIOS UEFI через однаково призначений всім дискам запис «Windows Boot Manager». Коли UEFI-завантаження дисків значиться саме так, а не за назвами носіїв інформації. І доводиться навмання вибирати запис, а разом з ним і диск завантаження.
Як вирішити таку проблему? Якщо функціонал самої прошивки UEFI дозволяє редагувати найменування позицій завантаження, це, відповідно, можна зробити в середовищі UEFI. Якщо ж ні, записи «Windows Boot Manager» можна перейменувати з використанням програми EasyUEFI.
Як це робиться?
***
Отже, на комп'ютері встановлено дві Windows на різних жорстких дисках. Це дві операційні системи з автономними завантажувальними EFI-розділами, їх запуск визначається пріоритетом завантаження в BIOS. Але, на жаль, в ньому маємо плутанину - обидва жорстких значаться під записом «Windows Boot Manager».
Хоча в ідеалі як мінімум один з дисків повинен відображатися як UEFI-пристрій за своєю назвою.
Як за допомогою EasyUEFI навести порядок у переліку вибору пристроїв завантаження?
Взаємодія Windows boot manager і BIOS
В цілому можна стверджувати, що функції комплексів BIOS і bootmgr взаємопов'язані і чимось схожі. Перший запускає всі компоненти комп'ютера, вводить їх у роботу і налаштовує можливість обміну командами між користувачем і комп'ютером. Другий після цього приймає управління на себе і запускає інші системні програми, яким і буде віддано управління після. Наступна схема найбільш наочно ілюструє порядок передачі керування комп'ютером операційній системі.
Порядок старту передбачає, що при ініціалізації BIOS включається системний диск (не розділ диска, а саме жорсткий диск з ОС), де розташований bootmgr, який вивантажується в оперативну пам'ять. Далі під управління Windows boot manager відбувається запуск компонентів ОС і управління переходить вже до них.
Редагувати BCD у консолі
Тепер подивимося, як можна видалити запис з BCD, не чіпаючи всі інші. Це завдання, що часто зустрічається: припустимо, ми не користуємося більше ОС розміщеною на якомусь конкретному розділі (вона може бути навіть пошкоджена), при цьому запис про неї в сховищі залишається, а значить, у завантажувальному меню залишається відповідна їй сходинка. Така ж приблизно інформація залишається і в BIOS комп'ютера. Якщо ми введемо команду: bcdedit ID, де ID - ідентифікатор віддаленої вінди, то всі ці відомості пропадуть. Ми не побачимо їх більше ні в меню, ні в БІОС, а це саме те, чого ми і добиваємося. Приклад такої команди:
Функції керування звантаженням
Під час запуску ОС виконуються такі дії:
- ініціалізація компонентів комп'ютера для роботи в складі системи;
- запис ядра ОЗ в оперативну пам'ять;
- первинне налаштування завантаженого ядра;
- передача управління ядру.
Наступного разу менеджер буде викликаний тільки при старті системи. Він буде знаходитися в режимі очікування поки комп'ютер увімкнений.
Виправляємо помилки служби «Віддалений виклик процедур (RPC)»
Структура bootmgr
Структура повністю є власністю компанії Microsoft, тому файл розібраний ентузіастами і вивчений не до кінця. Основна інформація стосується порядку використання компонентів: MBR - PBR (VBR) - BOOTMGR - winload.exe - NTOSKRNL.EXE - HAL.DLL. Спробуємо розібрати призначення цих компонентів:
- MBR - основний запис завантажувача (зразковий переклад). Це перші 512 байт носія, який зберігає в собі основну інформацію про ініціалізацію пристрою і його вміст. Ця інформація повідомляє про те, що і звідки завантажувати.
- PBR (VBR) - частковий запис завантажувача (або запис завантажувача розділу). Керування нею переходить, коли MBR дає інформацію про всі наявні на диску PBR. У свою чергу в даному записі зберігається інформація про те, який код необхідно запустити першим.
- BOOTMGR - менеджер завантаження. На нього посилається PBR під час запуску комп'ютера. З моменту, коли вступає в роботу ця утиліта починається повноцінне завантаження Windows 7, 8 або 10. Тут виконується підготовка до запуску системи. У межах цієї утиліти відбувається скидання контролера диска (передача повноважень від попередніх елементів наступним) та ініціалізації шини, яка відповідає за роботу пристроїв.
- exe - запускає драйвери в межах ОС. Це у свою чергу дозволяє Windows отримати контроль над комп'ютером.
- EXE - ядро операційної системи. Цей елемент відповідає за повноцінний запуск Windows.
- DLL - бібліотека абстрагування, яка дозволяє іншим компонентам вільно взаємодіяти з реальними елементами комп'ютера.
Що за файл ntoskrnl.exe - чому викликає помилки і як їх усунути
А ось сам Bootmgr вивчений ще не остаточно. Умовно він ділиться на наступні блоки:
- 16-ти бітний сегмент. Є тільки теорії, тому що інтерпретація коду ускладнена. Даний фрагмент коду відповідає за попередню підготовку процесора до старту завантаження.
- PE-образ. Ентузіасти втрачаються в здогадках про його призначення. Найбільш правдоподібно виглядає теорія про те, що це пустушка, яка буде заповнена пізніше необхідними даними.
- Запакований звантажувач. Виходячи з теорії про попередній розділ випливає, що після запису образу буде використовуватися файл bootmgr.exe завдання якого обробити попередню «болванку», заповнюючи її необхідною інформацією.
Складність процедури дизасемблювання коду і його подальшого читання уповільнює вивчення менеджера завантаження. І ні краплі не спрощує для користувача виправлення його помилок.
Післямова
Тепер користувач точно знає, що це таке «WBM», а також за які процеси в комп'ютері він відповідає.
Різних способів усунення проблем, що виникли через збій завантажувача, налічується на сьогоднішній момент велика безліч. Необхідно зазначити, що найдієвіші з них наведені в цій інструкції.
Якщо описані методики не допомогли вирішити проблему із завантаженням системи, то слід перевірити справність найжорсткішого диска.
При негативних результатах тестування вінчестеру, тобто коли не було виявлено його дефектів і пошкоджень, залишається лише інсталювати Windows з «чистого аркуша».
Поширені помилки
Менеджеру завантаження характерні наступні помилки:
Bootmgr is missing
Ця помилка вказує на відсутність маніфесту на диску. Виникати вона може в різних ситуаціях:
- файл пошкоджено;
- неправильно налаштований порядок використання файлів;
- жорсткий диск вимкнено.
Вирішення даних проблем можливе через встановлення правильного порядку завантаження в BIOS. Якщо файл пошкоджено, у наступному пункті буде вказано рішення.
Bootmgr is compressed
При старті компонента виникла помилка. Ця подія може бути результатом поврі "