Indice dei Contenuti
Spegnere il sistema sembra un operazione molto semplice: ma capire e comprendere i passaggi e le operazioni che stanno dietro può aiutare a capire molte cose. Vediamo quali sono i passaggi che il sistema fa quando clicchiamo sul pulsante Arresta il sistema.
Niente più “Cold Boot” come con Windows 7
Ricordate Windows 7? Spesso, per risolvere dei problemi, bastava riavviare il sistema e, “magicamente”, tutto tornava a funzionare (o quasi).
Questo perchè? A causa del “Cold Boot“, ovvero il sistema veniva veramente spento ad ogni chiusura della sessione, obbligando il sistema a ricaricare nuovamente tutto al successivo avvio.
Certo, allungava di molto il processo di avvio o di ripresa. Da Windows 8, invece, tutto è cambiato.
Abbiamo già parlato di come spegnere veramente il sistema in Windows 10 ma ora vediamo nello specifico come avveniva lo spegnimento del sistema in Windows 7 e vediamo che differenze sono state introdotte da Windows 8 in poi.
Come avveniva lo spegnimento in Windows 7?
I passaggi che il sistema esegue quando riceve il comando di arrestare il sistema sono:
- Il primo step eseguito dal sistema è di distribuire il comando di shutdown alle applicazioni aperte le quali hanno il tempo salvare il lavoro e le impostazioni. C’è un tempo di timeout concesso dal sistema per permettere alle applicazioni di concludere il proprio lavoro
- Il secondo step è chiudere le sessioni utente attualmente attive
- Il terzo step è inviare ai servizi il comando di spegnimento, in caso di dipendenze queste vengono “chiuse” in parallelo. Se il servizio non risponde, ne viene forzata la chiusura
- Il quarto step è comunicare ai dispositivi il comando di shutdown
- Il quinto step è chiudere la sessione
- Ora Windows scarica tutti i dati della sessione nel disco, assicurandosi che vengano salvati completamente
- Per ultimo, viene inviato un segnala attraverso l’interfaccia ACPI al sistema per eseguire l’arresto vero e proprio
La differenza sostanziale con Windows 8? L’ibernazione!
Cosa cambia da Windows 8 in poi?
Come abbiamo detto, i processi di spegnimento sono pressoché i medesimi, l’unica differenza è che la sessione non viene chiusa bensì ibernata.
Questo significa che viene creata una sorta di immagine del sistema, una mini-ibernazione che salva lo stato del sistema ed il contenuto della memoria RAM in un file chiamato hiberfil.sys
Il tempo di caricamento, così, è più veloce di almeno il 70% rispetto a Windows 7, come sostiene Microsoft.
Come interagire con il file hiberfil.sys
Solitamente questo file non occupa molto spazio, Microsoft sostiene che in utilizzi normali lo spazio occupato sia in proporzione il 10-15% della memoria RAM.
Ma se vogliamo impostare manualmente una dimensione massime del file dobbiamo lanciare il seguente comando dal prompt dei comandi come amministratore:
powercfg /hibernate /size
Inserendo, dopo size, un numero corrispondente fra 0 e 100 che corrisponde alla percentuale di RAM. Inserire un valore troppo basso, però, potrebbe far fallire l’operazione di ibernazione.
Solitamente non è necessario agire sul file hyberfil.sys, è consigliato lasciare che sia Windows stesso a gestirlo autonomamente.
Approfondimento e fonte per le immagini: Delivering fast boot times in Windows 8