69768

Завантаження Windows XP

Лекция

Информатика, кибернетика и программирование

Завантаження Windows XP починають стандартним способом — із передавання керування коду завантажувального сектора активного розділу диска. Головне його завдання — визначити місцезнаходження файла ntldr у кореневому каталозі цього розділу, завантажити його...

Украинкский

2014-10-09

40 KB

0 чел.

Тема 16. Завантаження Windows XP

Завантаження Windows XP починають стандартним способом — із передавання керування коду завантажувального сектора активного розділу диска. Головне його завдання — визначити місцезнаходження файла ntldr у кореневому каталозі цього розділу, завантажити його в пам'ять і передати керування на його точку входу. Зазначимо, що код завантажувального сектора залежить від того, яка файлова система встановлена для цього розділу: для FAT виконують один варіант, для NTFS — інший.

Файл ntldr можна розглядати як завантажувач другого етапу. Він починає своє виконання у 16-бітному режимі процесора, передусім переводить процесор у захищений режим і вмикає підтримку сторінкової організації пам'яті, після цього зчитує з кореневого каталогу файл boot.ini і робить його синтаксичний розбір. Ось фрагмент файла boot.ini:

[boot loader]

timeout=30

default=multi(0)disk(0)rdisk(0)partition(l)\WINDOWS

[operating systems]

multi(0)disk(0)rdisk(0)partition(l)\WINDOWS="Windows XP"

C:\="Windows 98"

Після тегу [boot loader] задано варіант завантаження за замовчуванням і час, після закінчення якого система автоматично завантажуватиметься відповідно до цього варіанта, після [operating systems] — список можливих варіантів завантаження. Для кожного варіанта може бути задано одну із кількох адрес завантаження:

  •  розділ із кореневим каталогом WINDOWS (для завантаження Windows XP);
  •  літерне позначення тому, на якому перебуває інша ОС;
  •  ім'я файла із зазначенням тому.

У разі зазначення літерного імені розділу (як у прикладі) ntldr знаходить на диску файл bootsec.dos (у якому після встановлення Windows XP зберігають завантажувальний сектор DOS або Consumer Windows, якщо поверх нього записаний завантажувальний сектор Windows XP), перемикає процесор у реальний режим і починає виконувати код цього завантажувального сектора.

Якщо задано ім'я файла, ntldr завантажуватиме файл із таким іменем; отже, якщо у файлі зберегти завантажувальний сектор іншої ОС, наприклад, Linux, ntldr зможе завантажити і його, для цього варіант завантаження має такий вигляд:

С:\bootsec.1nx="Linux"

Далі наведемо випадок завантаження Windows XP. Зазначимо, що розділ з установкою Windows XP у boot.ini не зобов'язаний збігатися із розділом, з якого відбувається завантаження, — таких розділів може бути кілька.

Коли є один варіант завантаження, система відразу починає завантажуватися, коли їх більше — відображають меню завантаження. Після вибору варіанта із меню ntldr запускає програму ntdetect.com, що в реальному режимі визначає базову конфігурацію комп'ютера (подібно до того, як це робила функція setup() для Linux -жодна із сучасних систем не довіряє цей код BIOS). Зібрану інформацію зберігають у системі, пізніше вона буде збережена в реєстрі. Внизу екрана з'являється текстовий індикатор прогресу. У цій ситуації можна натиснути на F8 і перейти в меню додаткових можливостей завантаження (у безпечному режимі тощо).

Потім ntldr завантажує у пам'ять ntoskrnl.exe (що містить ядро і виконавчу підсистему Windows XP), bootvid.dll (відеодрайвер за замовчуванням, що відповідає за відображення інформації під час завантаження), hal.dll (рівень абстрагування від устаткування) та основні файли реєстру. Після цього він визначає із реєстру, які драйвери встановлені в режимі запуску під час завантаження (це, наприклад, драйвер жорсткого диска) і завантажує їх (без ініціалізації). Буде завантажено також драйвер кореневої файлової системи. На цьому роль ntldr у завантаженні завершується, і він викликає головну функцію в ntoskrnl.exe для продовження завантаження.

Ініціалізація ntoskrnl.exe складається із двох етапів: фаз 0 і 1. Багато підсистем виконавчої системи приймають параметр, який показує, у якій фазі ініціалізації зараз перебуває система.

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

Після завершення фази 0 переривання дозволені, і починає виконуватися системний потік. Під час виконання фази 1 керування екраном здійснює відеодрайвер bootvid.dll, що відображає завантажувальний екран і графічний індикатор прогресу на ньому (цей індикатор змінюватиметься упродовж всієї фази 1). Відбувається остаточна ініціалізація різних підсистем виконавчої системи (менеджера об'єктів, планувальника, служби безпеки, менеджера віртуальної пам'яті, менеджера кеша тощо). Під час ініціалізації підсистеми введення-виведення (яка займає до 50 % часу цієї фази) відбувається підготовка необхідних структур даних, ініціалізація драйверів із запуском під час завантаження (boot-start), завантаження та ініціалізація драйверів із системним запуском (system-start). Фаза 1 завершується запуском менеджера сесій (smss.exe).

Подальше завантаження виконують три системні процеси, розглянуті у розділі 2: менеджер сесій smss.exe, процес реєстрації у системі winlogon.exe і менеджер керування сервісами (SCM, services.exe). Основним завданням менеджера сесій є завантаження та ініціалізація всіх компонентів підсистеми Win32 (як режиму користувача, так і режиму ядра), а також остаточна ініціалізація реєстру і запуск winlogon.exe.

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

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

Контрольні питання:

1. Передавання керування коду завантажувального сектора активного розділу диска.

2. Ініціалізація ntoskrnl.exe.


 

А также другие работы, которые могут Вас заинтересовать

50216. Проблеми та шляхи розвитку міжнародного ринку інформаційних технологій 557.5 KB
  Дослідження сутності міжнародного ринку інформаційних технологій та його ролі в світовій економіці; класифікація обʼєктів ринку інформаційних технологій; аналіз розвитку міжнародного ринку інформаційних технологій; знаходження механізму регулювання світового ринку інформаційних технологій; відображення напрямків розвитку міжнародного ринку інформаційних технологій.
50217. КЕРУВАННЯ ЕНЕРГЕТИЧНИМИ ПАРАМЕТРАМИ ЛАЗЕРНОЇ ТЕХНОЛОГІЧНОЇ УСТАНОВКИ. ККД ЛАЗЕРА 702 KB
  ККД ЛАЗЕРА Ціль роботи: вивчити склад і пристрій електричної частини лазерної технологічної установки ЛТУ; ознайомитися з етапами перетворення енергії в лазерних установках і з методами виміру енергетичних параметрів лазерного випромінювання; зняти енергетичну характеристику ЛТУ залежно від параметрів схеми накачування; визначити ККД лазера при різних режимах його роботи. Устаткування й прилади Лазерна технологічна установка Квант16 ; вимірювальник енергії ИКГ1М; лазер газовий ЛГ105.1: індуктивноємнісний перетворювач...
50218. Развитие околоносовых пазух ребенка, связь со становлением зубной дуги. Причины воспалительных изменений околоносовых пазух и возможность внутричерепных осложнений 15.54 KB
  Околоносовые пазухи у новорожденных недоразвиты и формируются в процессе развития лицевых костей и роста ребенка. При рождении у ребенка имеются две околоносовые пазухи: достаточно хорошо развитая решетчатая и рудиментарная
50219. ИЗУЧЕНИЕ ЗАТУХАЮЩИХ ЭЛЕКТРОМАГНИТНЫХ КОЛЕБАНИЙ В КОЛЕБАТЕЛЬНОМ КОНТУРЕ С ПОМОЩЬЮ ОСЦИЛЛОГРАФА 242 KB
  Цель работы: Изучение с помощью электронного осциллографа электромагнитных колебаний возникающих в колебательном контуре содержащем индуктивность емкость и активное сопротивление; изучение условий возникновения затухающих колебаний в контуре; расчет основных...
50220. Взаимодействие поля постоянного магнита и проводника с током для измерения силы тока 42.5 KB
  Цель работы: экспериментальное измерение основных характеристик гальванометра магнитоэлектрической системы. Наиболее удачной является конструкция гальванометра с радиальным магнитным полем: такое поле создано в узком зазоре между цилиндрическим полюсным наконечником N и S постоянного магнита и железным сердечником цилиндрической формы. S1=1 C1 – чувствительность гальванометра.
50221. Основные достижения отечественной ветеринарии 78 KB
  Ветеринарная медицина-область научных знаний и практической деятельности, направленных на борьбу с болезнями животных, охрану людей от инфекций общих для животных и человека, выпуск доброкачественной в санитарном отношении продукции и решение ветеринарно-санитарных проблем защиты окружающей среды.
50222. ВЫНУЖДЕННЫЕ КОЛЕБАНИЯ В ПОСЛЕДОВАТЕЛЬНОМ ЭЛЕКТРИЧЕСКОМ КОНТУРЕ 323.5 KB
  Цель работы: Изучение вынужденных колебаний в последовательном контуре определение добротности контура и внутреннего сопротивления генератора синусоидальных колебаний. Основные теоретические положения к данной работе основополагающие утверждения: формулы схематические рисунки:...
50223. Визначення ширини забороненої зони напівпровідників з температурної залежності їх провідності 219.5 KB
  Цю залежність можна подати так: 1 де питома провідність власного напівпровідника при ; ширина забороненої зони напівпровідника; стала Больцмана. Тому ширину забороненої зони власного напівпровідника можна визначити із співвідношення:...
50224. Відкритий валютний ринок, його характеристика та інструменти 863 KB
  Валютний ринок – це сфера економічних відносин, щодо здійснення операцій з купівлі-продажу іноземної валюти і цінних паперів в іноземній валюті з метою отримання прибутку та хеджування, а також операцій з інвестування валютного капіталу.