Как се стартира Windows
Разбирането на процеса на стартиране на една операционна сиситема (в случая Windows) е изключително важно при разрешаване на проблеми, свързани със зареждането й. В последно време ми се налага по-често да дебъгвам проблеми на “Джам” ОС и затова ползвам нещо като план с елементарните ми познания по въпроса. Пускам го без редакция. Предварително се извинявам за вида, в който го публикувам.
1. mbr
2. boot sector
3. boot loader (ntldr)
*преминава от 16-bit към 32-bit режим и включва paging
*ако съществува зарежда Ntbootldd.sys
-използва се, ако е от SCSI disk
*чете boot.ini
- точки за достъп до зареждащи дялове
- ако има повече от един избор се появява меню с отброяване на време
*ако се избере 64-bit ОС, превключва в 64 битов режим
*F8 за специално меню за зареждане
*Ntdetect.com осъществява BIOS хардуерно откриване
- след това записва (по-късно) в: HKLM\Hardware\Description
*SYSTEM регистрите се зареждат
- зарежда драйвери: критично важни за зареждащия процес (например драйвера за файловата система)
*Ntoskrnl.exe и неговите dll`s
*прехвърля контрола на Ntoskrnl.exe
4. ОС
*splash screen се визуализира
*2 фази на инициализация на ядрото
*зарежда стартиращите драйвери (boot-start drivers)
* чете регистрите и зарежда system-start drivers
* създава процеса за управление на сесиите [Session Manager(Smss.exe)]
??ред на зареждане на драйвеи и сервизи
-дефинирани са с уникални ключове в регистрите
-HKLM\System\CurrentControlSet\Services
type 1 -драйвер
type [друго] – сервиз
0=boot
1=system
2=auto
3=manual
4=disable
повечето plug and play драйвери са на manual
5. Мениджър на сесиите
*стартира BootExecute програмите
-Autochk.exe (проверка на диска)
-тук е мястото, където най-често се стартира malware
*започва процес на отложени премествания и преименувания на файлове (например при updates)
*отваря paging файловете
*инициализира останалите регистри
!!!=>до този момент, ако се получи срив, той няма да се отрази в dump
*зарежда Win32k.sys драйвера
- kernel mode на прозоръчната система (windowing system)
*стартира Csrss.exe процеса
- user mode на прозоръчната система
*стартира Winlogon.exe
-интерактивен процес на влизане в системата (logon)
6. Прозоръчната система
*Csrss.exe инициализира прозоръчната система
*системата преминава към GUI режим
*показва се курсора
7. Идентификация и сървър за сигурност
*Winlogon.exe стартира Lsass.exe
- Local Security Authority
- осъществява идентифициране
*старира GINA.dll
-по подразбиране е Msgina.dll
-показва logon полето
*стартира Services.exe (Servece Control Manager)
??процес на влизане в системата
-Winlogon.exe изпраща потребителското име и парола на Lsass.exe
-създава инициализиращ(и) процес(и)
-по подразбиране Userinit.exe
HKLM\Software\Microsoft\WindowsNT\CurrentVersion\WinLogon\Userinit
8. Стартиране на сервизите
*Services.exe стартира сервизите, които са auto
*повечето user mode процеси
*тук могат да се заредят и някои kernel mode драйвери (за записване на дискове софт.,антивирус.)
*продължава асинхронно зареждане
Това е. При проявен интерес, ще форматирам текста в разбираем вид. В различните версии на операционната система има леки разлики. Например след NT 6.0 (Windows Vista, 7, server 2008 и т.н.) ntldr се заменя от Windows Boot Manager (BOOTMGR) и winload.
Подобни публикации:
- Windows XP не се стартира след обновяване на McAfee
- Дебъгване на Windows
- Mozilla Firefox не стартира със старата сесия
- Linux срещу Windows – първа част
- Форсиране на gpu acceleration в Internet Explorer 9 rc
Публикувано на | December 28, 2009 | 3 Коментара
Мнения и коментари
3 Responses to “Как се стартира Windows”
Споделете мнение, напишете коментар:
September 15th, 2010 @ 21:53
Интересна статия ще ми е интересно да я видя в по-нормален вид.
May 27th, 2011 @ 19:36
Списъкът е хубав но като цяло статията не носи полезност за читателя. Липса къде какво и как може да промени или проследи потребителя в тази последователност.
May 27th, 2011 @ 21:48
По принцип не е точно списък, защото е написан в последователност (коректна)на стартиране на операционната система с елементарни подсказвания. Във вида, в който е обаче трудно се разбира. Аз съм го ползвал, когато съм бил в задънена улица на няколко пъти и ми е помагал, защото знам къде и какво търся. Отделно форматирането тук не излезе както трябва и е още по-трудно за ориентиране. Като цяло виждам, че има интерес и трафик от търсачките, затова в бъдеще със сигурност ще има допълнение или нова публикация с достатъчно информация как се променя последователността и до какво води. Мерси за градивната критика.