Hva skjer egentlig når en Windows-datamaskin lukker seg?
Mens de fleste av oss sannsynligvis gir liten tanke på alt som skjer hver gang vi lukker datamaskinene våre ned, hva skjer faktisk under "hetten" under avsluttingsprosessen? Dagens SuperUser Q & A-post har svar på en nysgjerrig leser spørsmål.
Dagens Spørsmål & Svar-sesjon kommer til oss med høflighet av SuperUser-en underavdeling av Stack Exchange, en fellesskapsdrevet gruppering av Q & A-nettsteder.
Spørsmålet
SuperUser leser RACING121 vil vite hva som faktisk skjer når en Windows-datamaskin slår seg av:
Når jeg klikker på nedleggerknappen på Windows-systemet, gir det meg en annen skjerm som sier Slår av:
Hva skjer faktisk i dette stadiet?
Hvis jeg husker riktig, ville det i Windows XP si noe sånn Lagre innstillinger før du slår av. Men hvilke innstillinger er det for å faktisk spare her? For eksempel, hvis du har brukt et tema eller fullført noen annen handling, har den allerede blitt "lagret" når du klikket Søke om eller ok.
Hvis det avmonterer harddisken, ville det sikkert være det samme som å tvinge en nedleggelse ved å trekke støpselet, til høyre?
Hva skjer faktisk når en Windows-datamaskin går gjennom avslutningsprosessen?
Svaret
SuperUser-bidragsytere Keltari og zzarzzur har svaret for oss. Først opp, Keltari:
Det skjer mange ting i løpet av nedleggingsprosessen. Her er bare noen få eksempler:
- Kontrollerer om eventuelle brukerprogrammer ikke er stengt ennå (som et ikke-lagret dokument) og spør brukeren om nødvendig
- Stoppe bakgrunnstjenester
- Venter på avslutningssignalet fra tjenester og applikasjoner som er åpne eller kjører
- Spyler hurtigbufferen til disken
- Skrive loggfiler
- Alle brukere er logget ut
- Avslutter skallet
- Begynn å installere Windows-oppdateringer og fortell at systemet skal fullføre oppdateringsprosessen ved neste oppstart av systemet hvis det er nødvendig
- Send ACPI-avstengingssignalet (dette er det som slår av maskinen)
Etterfulgt av svaret fra zzarzzur:
Systemregistret er (kanskje?) Skrevet til disken. Tilbake da jeg brukte Windows XP, la jeg merke til at hvis du gjorde noen endringer i registret, og deretter trakk kraften, ville endringene ikke bli lagret. Jeg er ikke helt sikker på dette, bare peker på det.
Her er et utdrag fra et dokument som Microsoft utgitt:
- System-avslutning av systemet. Denne fasen inkluderer forhåndsavbrudd varsel og nedleggelse underfaser.
- Pre-shutdown notifikasjon. Windows lukker serielt alle tjenester som er registrert for å motta forhåndsavbrudd. Bestilte tjenester - tjenester som har satt opp avbestillingsordningen for avhengige tjenester - slås av før ikke-bestilte tjenester.
- Nedleggelsesvarsling. Alle tjenester som registreres for å motta nedleggelsesvarsler, slås av parallelt. Hvis alle tjenestene ikke har gått ut etter 20 sekunder (i Windows Vista) eller 12 sekunder (i Windows 7-klientoperativsystemer), fortsetter systemet avslutningen. Prosesser og tjenester som ikke slås av i tide, går igjen når systemet slår seg av.
- Kjernen avslutning. Resten av systemet, for eksempel alle enheter og drivere, slås av under kjerneavstengningsfasen.
I utgangspunktet, hva du venter på, er hver enkelt tjeneste å rydde opp og ut av. Hver tjeneste blir gitt 12 sekunder for å avslutte før den blir drept.
Halvparten av nedleggelsestiden er dedikert til å slå ned systemtjenestene. Hvis du er veldig interessert i å se hvilken tid som er dedikert til hva som helst under en avslutning, inneholder Windows et verktøy for å spore avstengningstid.
- xbootmgr -trace shutdown-nummerRuns 3-resultPath% systemdrive% \ traces -postBootDelay 180 -traceFlags base
Og for å få mening av den genererte filen (pass på å kjøre inn % Systemdrive% \ spor)
- xperf -i trace.etl -o summary.xml-en nedleggelse
kilder
Windows på / av overgang ytelsesanalyse dokument [Microsoft]
Windows On / Off Transitions Solutions Guide Document [Microsoft]
Har du noe å legge til forklaringen? Lyder av i kommentarene. Vil du lese flere svar fra andre tech-savvy Stack Exchange-brukere? Sjekk ut hele diskusjonstråden her.