drivere Descărcarea în modul de siguranță - dispozitiv Windows ennee (Ch

drivere Descărcarea în modul de siguranță

Atunci când pornirea într-un mod securizat transmite nucleu Ntldr.exe (Ntoskrnl.exe), împreună cu alți parametri specificați în actuala formă de realizare Boot.ini de comandă de boot parametru linie / SAFEBOOT. adăugând la acesta unul sau mai multe rânduri, în funcție de tipul de modul securizat. Pentru modul de siguranță standard de Ntldr.exe adaugă MINIM, pentru Safe Mode cu Networking - REȚEAUA, pentru Safe Mode cu Prompt comandă - MINIM (ALTERNATESHELL), o pentru Directory Services Restore - DSREPAIR.

Windows kernel scanează parametrii de boot în căutarea pentru specificatorilor modul sigur și setează valoarea InitSafeBootMode variabile interne, în conformitate cu rezultatul căutării. Valoarea acestei variabile este de asemenea înregistrată în secțiunea HKLM \ SYSTEM \ CurrentControlSet Control \ SAFEBOOT \ Opțiunea \ OptionValue \, care permite componentelor user-mode (de exemplu, SCM) determină modul de pornire sistem. În plus, atunci când alegeți Safe Mode Cu Prompt comandă, kernel-ul atribuie valoarea 1 la parametrul UseAlternateShell în registru cheie HKLM \ SYSTEM \ CurrentControlSet Control \ SAFEBOOT \ Opțiunea \. În plus, nucleul scrie parametrii trecut la Ntldr, secțiunea HKLM \ SYSTEM \ CurrentControlSet \ Control \ SystemStartOptions.

Când managerul O încarcă driverele de dispozitiv enumerate la HKLM \ SYSTEM \ CurrentControlSet \ Services, acesta îndeplinește funcția IopLoadDriver. Un dispecer când Plug and Play detectează noul dispozitiv și vrea să se încarce dinamic driverul pentru acest dispozitiv, acesta apelează funcția IopCallDriverAddDevice. Ambele aceste funcții înainte de a descărca drivere sunt de cotitură pentru funcția IopSafeBootDriverLoad. Ultimele verificări valoarea variabilei InitSafeBootMode și determină dacă pentru a încărca driverul posibil. De exemplu, în cazul în care sistemul este pornit în modul de siguranță standard, IopSafeBootDriverLoad în căutarea unui grup de șoferi (dacă este cazul) în secțiunea minimă. Găsirea, IopSafeBootDriverLoad notifică numit funcția pe care conducătorul auto poate fi descărcat. B altfel IopSafeBootDriverLoad caută în același nume secțiune a conducătorului auto. În cazul în care este listat, driverul poate fi descărcat. În cazul în care nu IopSafeBootDriverLoad în listă sau un grup numele conducătorului auto, este interzisă pentru a descărca. Când porniți sistemul în modul de siguranță cu rețea acceptă căutări IopSafeBootDriverLoad în Rețeaua subsecțiune, iar în cazul unui sistem de boot în mod normal, IopSafeBootDriverLoad permite descărcarea de toate driverele.

Cu toate acestea sarcini Ntldr toate driverele, în care secțiunile relevante Start înregistrare în valoare este 0, care indică necesitatea încărcării lor în timpul pornirii sistemului. Deoarece Ntldr.exe nu verifică SAFEBOOT partiție (presupunând că este nevoie de nici un conducător auto cu o valoare zero a valorii Start pentru lansarea cu succes a sistemului), se încarcă toate driverele de boot, care sunt ulterior rula Ntoskrnl.