Корисні поради - все про фото!

За термінологією Microsoft ці завантажувальні файли (ntldr, boot.ini, ntdetect.com, ntbootdd.sys і bootsect.dos для Мультізавантажувальний систем) знаходяться в системному розділі, завантажувальний сектор якого містить системний завантажувач Windows NT.

У той же час розділ диска або диск, на якому розташовується папка Winnt і, відповідно, системні файли, необхідні для роботи ОС (в тому числі ntoskrnl.exe, ядро ​​Windows NT), цілком спокійно може не збігатися з системним розділом і тому при запуску ПК необхідно зробити так, щоб завантажувач Windows NT без зусиль знайшов системні файли. Розділ же, на якому розташовується папка Winnt, в Microsoft прийнято називати завантажувальним, пробачимо їм цю плутанину - це далеко не найважчий випадок.

Правда, оскільки Windows NT може працювати не тільки на платформі i386, слід зробити застереження, що ми розглядаємо застосовні в нашому побуті "персоналки", не торкаючись особливостей завантаження NT на інших платформах (на процесорах RISC, наприклад, програма osloader.exe виконує ті ж функції , що на PC виконуються файлами ntldr, ntdetect.com і bootsect.dos).

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

Деякі можливості щодо внесення змін до цього файл дає, правда, меню "Завантаження операційної системи" (System Startup) діалогу "Завантаження і відновлення" ( "Startup and Recovery") властивостей системи, а також з'явилася в Windows XP утиліта msconfig.exe, проте повний доступ до його параметрами можливий тільки при ручному редагуванні, або при використанні невеликої додаткової програми, що надає зрозумілий графічний інтерфейс - System Configuration Editor.
Ця програма призначена для безпечного редагування файлів конфігурації: Autoexec.bat, Config.sys, Win.ini, System.ini, Networks, Lmhosts, Hosts, Boot.ini.

У Windows XP, до речі кажучи, з'явилося і ще одне не менш цінне додатковий засіб відновлення цього файлу - команда bootcfg консолі відновлення, після виконання якої з таким ключем - bootcfg / rebuild відбувається сканування жорстких дисків у пошуках інсталяцій систем класу NT і відновлення файлу boot. ini відповідно до отриманих результатів пошуку. У старіших же системах альтернативою ручному відновленню файлу є тільки запуск програми перевстановлення системи.

Будова файлу boot.ini в найпростішому випадку, з одного операційною системою на диску ПК Intel х86, виглядає наступним чином:

[Boot loader]
timeout = 5
default = multi (0) disk (0) rdisk (0) partition (1) WINNT
[Operating systems]
multi (0) disk (0) rdisk (0) partition (1) WINNT = "Windows XP Professional" / fastdetect

При використанні двох операційних систем, наприклад, Windows Me і Windows XP, вміст файлу буде приблизно таке:

[Boot loader]
timeout = 5
default = C:
[Operating systems]
C: = "Windows Millennium Edition"
multi (0) disk (0) rdisk (0) partition (2) WINNT = "Windows XP Professional" / fastdetect


Як можна помітити, в даних прикладах розділ [boot loader] служить для завдання двох параметрів завантаження операційної системи, зокрема, параметр timeout = 5 визначає кількість секунд, протягом яких користувач має можливість вибрати або завантажується ОС, або один з пунктів завантажувального меню ( наприклад, завантажити систему в режимі захисту від збоїв).

При timeout = 0 завантажувальний меню не відображається, а при timeout = -1 це меню буде знаходитися на екрані необмежений час в очікуванні вибору користувача.

Кожен користувач може виставити цей час по своїх смаках - для мене зручній цифрою є 5 секунд. За замовчуванням ж затримка становить 30 секунд, максимум - 999.

Параметр default визначає шлях до завантажується за замовчуванням операційній системі. Шлях цей у випадку з Windows NT задається у форматі ARC (Advanced RISC Computing), про правила якого трохи нижче. Якщо ж в Мультізагрузочний системі ОС за замовчуванням є, наприклад, Windows 98 (або MS-DOS, Linux), то досить вказати default = C. де С: - диск, на якому знаходяться системні файли Windows 9x (вірніше - образ її завантажувального сектора bootsect.dos, а також io.sys, msdos.sys і т. д.).

Такий операційній системі і в наступному розділі [operating systems] буде відповідати рядок типу C: = "Windows Millennium Edition" або C: bootsect.lnx = "Linux" - тобто шлях до файлу-образу її завантажувального сектора (його назва може бути будь-яким , за вибором користувача). До речі, для створення такого файлу-образу зручно використовувати утиліту BootPart, призначену саме для розширеної роботи з завантажувачем NT.

У розділі [operating systems] знаходяться відомості про встановлені операційних системах, на підставі яких і формується завантажувальний меню. Так, в кожному рядку цього розділу прописаний ARC-шлях до завантажувального розділу Windows NT плюс ім'я папки Windows і текст, який відображається у відповідній цієї операційної системі рядку завантажувального меню, плюс деякі параметри, які використовуються при виборі даної системи.

Врахуйте, що ARC-шлях (крім імені папки і назви ОС) повинен бути записаний маленькими (малими) літерами - по крайней мере, в Windows NT 4 великі літери приводили до неможливості завантажити систему. Максимально можливе число рядків у цьому розділі - 10. отже, і операційних систем на своєму ПК ви можете мати одночасно аж 10 штук.

Якщо ви раптом втратили файл boot.ini, то найскладніше при його ручному відновленні - правильно відтворити шлях до завантажувального розділу в форматі ARC. Шлях цей може починатися або з мітки multi (), або з мітки signature (). Мітку multi () можна спостерігати в переважній більшості випадків, застосовується вона для дисків IDE, ESDI, SCSI в тих випадках, коли ОС для своєї завантаження використовує механізми системного BIOS (переривання INT13).

При такому розкладі запис шляху до завантажувального диску і до директорії завантажується операційної системи у файлі boot.ini буде виглядати наступним чином: multi (0) disk (0) rdisk (x) partition (y) імя_каталога_Windows = "Названіе_ОС, отображаемое_в_загрузочном_меню" / параметр

• multi (0) вказує порядковий номер адаптера, з якого здійснюється завантаження і завжди має значення "0" (нумерація починається з нуля, починаючи з контролера, розташованого ближче до слоту 0 на материнській платі);
• disk (0) - завжди дорівнює нулю, так як переривання INT13 не може використовуватися для ідентифікації декількох дискових контролерів (для більшості BIOS);
• rdisk (x) визначає порядковий номер жорсткого диска, з якого відбувається завантаження, нумерація починається з 0, і зазвичай x - число від 0 до 3;
• partition (y) - порядковий номер розділу жорсткого диска, з якого завантажується ОС, нумерація починається з 1 (відповідає диску С: в звичному позначенні), в першу чергу нумеруються первинні розділи, потім йдуть логічні диски. Чи не нумеруються розширені розділи MS-DOS (тип 5) і розділи типу 0 - невживані.

• signature (x) вказує унікальну сигнатуру диска (шістнадцяткове число - signature (8b467c12)), що міститься в його MBR. Сигнатура ця вписується в головний завантажувальний запис диска в процесі установки Windows. на початку її текстового етапу;
• disk (y) - ідентифікатор SCSI ID жорсткого диска;
• rdisk (z) - номер SCSI LUN (Logical Unit Number) жорсткого диска, практично завжди це 0;
• partition (w) - порядковий номер розділу жорсткого диска, з якого завантажується ОС, нумерація починається з 1, в першу чергу нумеруються первинні розділи, потім йдуть логічні диски. Чи не нумеруються розширені розділи MS-DOS (тип 5) і розділи типу 0 - невживані.

Зверніть увагу, що якщо використовується формат signature (), то в корені системного диска повинен знаходитися файл ntbootdd.sys - перейменована копія драйвера міні-порту SCSI, призначена для доступу до SCSI-адаптера при завантаженні.


За замовчуванням аж до появи Windows XP ім'ям каталога, в який встановлена ​​Windows. було "Winnt". У Windows XP (мабуть, щоб простому користувачеві, недолюблюють всілякі монструозні і важкокерована NT, зайвий раз не нагадувати родовід цієї операційної системи) від цієї традиції відмовилися, і системна папка носить ім'я Windows.

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

Цей параметр може також бути корисний, якщо до COM-портів підключені будь-які інші пристрої, щоб не бентежити ними ОС. При бажанні можна спеціально вказати порти, на яких пошук миші здійснювати заборонено: / fastdetect = COM1,2,3.

/ Baudrate. Швидкість (в бодах) передачі даних в отладочном режимі. За замовчуванням при роботі з модемом в режимі налагодження швидкість 9600, при роботі з нуль-модемним кабелем - 19 200.

Приклад: / baudrate = 115200. При використанні цього параметра автоматично активується ключ / debug.

/ Bootlog. Включає протоколювання ходу завантаження драйверів в файл% SystemRoot% ntbtlog.txt (формат тексту - Unicode). Корисний при виявленні збійного драйвера.

Microsoft ® Windows NT ® Version 5.0
Loaded driver WINNTSystem32ntoskrnl.exe
Loaded driver WINNTSystem32hal.dll
Loaded driver WINNTSystem32BOOTVID.dll
Loaded driver pci.sys
Loaded driver isapnp.sys
Loaded driver intelide.sys

/ Crashdebug. Наказує завантажувати програмний модуль відладки ядра, який активізується при помилках в ядрі ОС.

/ Debug. Наказує завантажувати програмний модуль відладки ядра, активізація якого може проводитися по команді віддаленого відладчика.

/ Debugport. Наказує завантажувати програмний модуль відладки ядра і визначає послідовний порт, який використовується для налагодження (за замовчуванням COM1).

Приклад: / debugport = COM2. При використанні цього параметра автоматично активується ключ / debug.

Якщо в системі присутній контролер FireWire, то в Windows XP допускається встановлювати параметр / debugport = 1394, в цьому випадку можна вказати і ще один перемикач - / channel = x, де x - номер каналу (від 1 до 62), використаний при настройці хоста .

/ Maxmem. Обмежує об'єм використовуваної оперативної пам'яті (в мегабайтах). Приклад: / maxmem = 16. Корисний для виявлення дефектного модуля пам'яті.

/ Nodebug. Забороняє використання режиму налагодження, скасовує дію ключів / debug, / debugport і / baudrate.

/ Break. Наказує зупинити ініціалізацію HAL в точці зупинки і чекати підключення відладчика. При використанні без ключа / debug буде відображено синій екран BSOD з кодом зупину.

/ Sos. Включає відображення назв завантажуваних драйверів при завантаженні ОС. Корисний для виявлення збійного драйвера.

/ Pae. Включає використання механізмів PAE (Physical Address Extension), навіть якщо встановлено менше 4 Гб оперативної пам'яті. При цьому завантажується ядро ​​ntkrnlpa.exe, що дозволяє системам x86 використовувати до 64 Гб оперативної пам'яті (стандартний ліміт x86 - 4 Гб). При завантаженні в режимі захисту від збоїв ігнорується. Використовується зазвичай в тестових цілях.

/ Nopae. Забороняє використання PAE на системах з пам'яттю більше 4 Гб, що підтримують PAE.

/ Nolowmem. На системах з підтримкою PAE і пам'яттю більше 4 Гб забороняє використання перших 4 Гб пам'яті. Використовується з метою тестування і вимагає наявності перемикача / pae.

/ Noguiboot. Забороняє використання VGA-драйвера на етапі завантаження системи - при цьому не буде доступний широкому графічна заставка, і при збоях НЕ будуть виводитися сині екрани BSOD, за показ яких також відповідає VGA-драйвер.

При вказівці в дужках додаткової опції alternateshell (наприклад - safeboot: minimal (alternateshell), без пробілу) замість Windows NT Explorer буде завантажена альтернативна графічна оболонка, зазначена в розділі реєстру HKEY_LOCAL_MACHINESystemCurrentControlSetSafeBootAlternateShell.

/ Year. Наказує ігнорувати рік, що видається вбудованим годинником ПК, і використовувати рік, зазначений у значенні цього параметра. Працює, починаючи з Windows NT 4.0 SP4.

/ Use8254. На системах із застарілим BIOS повідомляє ядру ОС, що на ПК встановлено таймер на основі чіпа 8254.

/ Onecpu. На мультипроцесорних системах забороняє системі використовувати більше одного процесора. Докладніше - support.microsoft.com/default.aspx?scid=kben-usQ157992.

/ Numproc. На мультипроцесорних системах обмежує число використовуваних процесорів. Наприклад, / numproc = 2 на 4-процесорному ПК забороняє системі працювати з двома з чотирьох процесорів.

/ Win95dos. У системах з потрійною завантаженням - DOS, Windows 9x і Windows NT задає завантаження завантажувального сектора DOS (файл bootsect.dos).

/ Win95. У системах з потрійною завантаженням - DOS, Windows 9x і Windows NT задає завантаження завантажувального сектора Windows 9x (файл bootsect.w40).

/ Hal = - використання альтернативної версії hal замість hal.dll.

/ Kernel = - використання альтернативної версії ядра ОС замість ntoskrnl.exe. Останнім часом модно використовувати для зміни початкове зображення-логотипу Windows. "Захистом" в ntoskrnl.exe і замінної утилітами типу Restorator.

/ Noserialmice = [COMx | COMx, y, z. ]. Відключає виявлення миші на COM-портах. При використанні без зазначення номера порту виявлення відключається для всіх COM-портів. Застосовується при наявності альтернативних пристроїв, підключених до послідовних портів під час завантаження ОС.

/ Pcilock. Забороняє Windows динамічно призначати IO- і IRQ-ресурси для PCI-обладнання та залишає конфігурацію, присутню в CMOS Setup.

/ Scsiordinal. Використовується для вказівки SCSI ID контролера у разі, якщо додавання нового пристрою SCSI в систему з вбудованим контролером SCSI може змінити SCSI ID контролера. Детальніше в статті support.microsoft.com/support/kb/articles/q103/6/25.asp.

/ Burnmemory. Обмежує об'єм використовуваної пам'яті подібно параметру / maxmem: при вказівці / burnmemory = 128 будуть відкинуті 128 мегабайт пам'яті з наявного в наявності обсягу RAM. Обсяг пам'яті вказується в мегабайтах.

/ Intaffinity. Змушує мультипроцесорний HAL (halmps.dll) встановлювати переривання таким чином, щоб тільки процесор з найбільшим номером у SMP отримував переривання.

/ Maxprocspercluster. Встановлює обмеження процесорів в кластерної системі. Чи не актуально на персональних системах.

/ Timeres = x. У мультипроцесорних системах встановлює дозвіл системного таймера. За замовчуванням дозвіл таймера 7,8 мс. Параметр x вимірюється в сотнях мілісекунд і підтримуються наступні значення:


Всі ці параметри, якщо необхідно задати відразу кілька перемикачів, прописуються послідовно один за одним через пробіл і слеш: / safeboot: minimal (alternateshell) / sos / bootlog /noguiboot.[/hide]

Схожі статті