Spiega HDG: Swapfile.sys, Hiberfil.sys e Pagefile.sys in Windows

Nelle versioni precedenti di Windows , probabilmente ricorderai il buon vecchio file di paging. Viene utilizzato quando la memoria fisica diventa eccessivamente impegnata e contiene oggetti a cui di solito non si accede da molto tempo. Questo è pagefile.sys . Successivamente, avevamo l'opzione di ibernazione in Windows che ti consente di salvare il kernel e tutte le applicazioni sul disco rigido in modo da poter avviare il backup del computer più velocemente rispetto a un riavvio completo. Questo è hiberfile.sys .

In Windows 8/10 , le cose si complicano. Il pagefile.sys è sempre presente, ma hiberfil.sys è presente solo se hai l'avvio rapido abilitato in Windows . Cos'è l'avvio rapido? Fondamentalmente consente a Windows di eseguire uno spegnimento ibrido. Questo è il motivo per cui Windows 8/10 si avvia molto più velocemente rispetto alle versioni precedenti di Windows . Dai un'occhiata al mio post precedente che spiega cos'è un arresto ibrido in Windows 8(what a hybrid shutdown is in Windows 8) .

Per utilizzare la nuova funzionalità di spegnimento ibrido, che è attivata per impostazione predefinita, l'ibernazione deve essere abilitata in Windows . Se l'ibernazione è disabilitata, non avrai un file hiberfil.sys e non sarai nemmeno in grado di utilizzare l'opzione di avvio rapido. Puoi leggere il mio post qui sull'abilitazione dell'ibernazione in Windows(enabling hibernation in Windows) .

File di scambio di Windows 8

Ora la cosa interessante è che quando hai abilitato l'avvio rapido (il che significa che l'ibernazione è abilitata), il tuo hiberfil.sys sarà circa il 75% della tua RAM e il file di paging sarà circa il 25%. Questo perché hiberfil.sys contiene il kernel di Windows e i driver di dispositivo. Il file di paging viene utilizzato solo se tutta la RAM(RAM) è esaurita solo dal nostro sistema e viene utilizzato mentre stai effettivamente eseguendo Windows . hiberfil.sys viene utilizzato solo per il processo di avvio.

Se non hai abilitato l'ibernazione in Windows , vedrai che il file di paging ora ha le stesse dimensioni della quantità di RAM che hai.

Nello screenshot sopra, ho una macchina Windows con 1 GB di RAM e avvio rapido disabilitato. Ora che capiamo come funziona, passiamo al nuovo: swapfile.sys. Che diamine è quello? Bene, è fondamentalmente come il file di paging, ma ha scopi diversi.

Uno dei motivi principali per swapfile.sys è sospendere e riprendere le app di Windows Store . Quindi perché non utilizzare semplicemente il file di paging per farlo? Viene utilizzato perché alcuni tipi di operazioni di paging possono essere eseguiti in modo più efficiente utilizzando questo tipo speciale di file di paging.

Ecco una spiegazione più chiara. Windows supporta sia il paging che lo scambio. Il paging conterrà gli elementi a cui non si accede da molto tempo, mentre lo scambio conserva gli elementi che sono stati recentemente rimossi dalla memoria. Gli elementi nel file di paging potrebbero non essere riaccesi per molto tempo mentre gli elementi nel file di scambio potrebbero essere accessibili molto prima.

Inoltre, il paging è molto efficace su macchine di fascia alta mentre lo scambio è più efficace su tablet e PC di fascia bassa. Ogni file di paging ha requisiti diversi per la crescita dinamica, la prenotazione dello spazio, le politiche di lettura/scrittura, ecc. Se dovessi avere lo stesso file di paging, verrebbe frammentato molto rapidamente a causa delle pagine di dimensioni fisse utilizzate nel paging e dei pezzi grandi utilizzato nello scambio.

Come puoi vedere dall'alto, swapfile.sys ha una dimensione di circa 16 MB. A partire da ora, viene utilizzato per le app dello Store a causa delle loro diverse esigenze di paging rispetto ai tradizionali programmi Windows . Potrebbero esserci anche altri usi in futuro, ma Microsoft non ha specificato esattamente cosa.

Ecco cosa fanno quei tre file su un sistema Windows 8/10 . Nota che possono accadere alcune cose interessanti e fastidiose. Se hai 16 GB di RAM e stai utilizzando l'avvio rapido in Windows , significa che avrai anche un file di ibernazione da 16 GB! Se esegui Windows su un SSD , potrebbe occupare gran parte dello spazio su disco.

È possibile ridurre le dimensioni del file di ibernazione (hiberfil.sys) in Windows   senza disabilitare l'ibernazione utilizzando il comando seguente:

powercfg.exe /hibernate /size 50

powercfg

Ciò ridurrà la dimensione del file di ibernazione al 50% della RAM anziché al 100%. Nota che non puoi abbassarlo più del 50%. Tuttavia, se hai una grande quantità di RAM come 16 GB o 32 GB o più, puoi risparmiare un bel po' di spazio.

L'altra cosa è che non devi preoccuparti che il file di ibernazione diventi troppo grande come nelle versioni precedenti di Windows . In precedenza il file di ibernazione memorizzava il kernel, i driver di dispositivo e tutti i dati dell'applicazione. Ora che non ci sono dati dell'applicazione, la dimensione del file rimane abbastanza costante, quindi se hai molta RAM , probabilmente non hai bisogno di un file di ibernazione che sia comunque così grande.

Si spera(Hopefully) che questo ti dia una comprensione più chiara di come funzionano i file pagefile.sys, hiberfil.sys e swapfile.sys su Windows 8/10. Se hai domande, sentiti libero di pubblicare un commento. Divertiti!



About the author

Sono un software engineer con oltre 10 anni di esperienza nel campo dell'ingegneria Windows. Sono specializzato nello sviluppo di applicazioni basate su Windows, nonché di driver hardware e audio per il sistema operativo Windows di nuova generazione di Microsoft, Windows 11. La mia esperienza nella creazione di app per Windows mi rende una risorsa particolarmente preziosa per qualsiasi azienda che desideri sviluppare prodotti tecnologici innovativi.



Related posts