Homepage » come » I pulitori di memoria di Firefox funzionano davvero?

    I pulitori di memoria di Firefox funzionano davvero?

    Non è un segreto che Firefox possa consumare un bel po 'di memoria di sistema durante il normale utilizzo. Mentre il numero di schede che hai aperto e i componenti aggiuntivi installati certamente contribuiscono, anche un'installazione predefinita usata in modo provvisorio può segnalare un bel po 'di utilizzo della memoria.

    Ciò ha causato la comparsa di alcuni add-on di Firefox che dichiarano di liberare memoria che il browser non ha più bisogno, ma funzionano effettivamente?

    Una panoramica di due minuti su come Windows gestisce la memoria

    Prima di immergerci nell'esame di un pulitore di memoria, è importante capire un po 'come Windows gestisce la memoria. Questo sarà importante in modo che possiamo interpretare i risultati del nostro esperimento.

    Non ti preoccupare, lo copriremo ad un livello molto alto in modo da non dover essere un mega-geek da seguire.

    Come una rapida dichiarazione di non responsabilità, questo è un sommario estremamente breve delle basi della gestione della memoria di Windows. In nessun caso questo dovrebbe essere considerato autorevole o definitivo in quanto viene spiegato solo al livello applicabile all'argomento di questo articolo.

    Windows è abbastanza intelligente da sapere che la memoria fisica inutilizzata è sprecata memoria, quindi carica tutto ciò di cui ha bisogno e pensa che avrà bisogno di memoria. Tuttavia, solo ciò di cui il sistema ha effettivamente bisogno (sia Windows che le applicazioni) e viene utilizzato attivamente al momento corrente viene riportato come memoria fisica utilizzata. Il resto (quello che Windows pensa che avrà bisogno) risiede in quella che viene chiamata memoria virtuale.

    La memoria virtuale è essenzialmente i dati che non sono richiesti attivamente dal sistema operativo ma sono pronti per essere caricati nella memoria attiva in qualsiasi momento. Puoi calcolare in modo molto approssimativo la quantità di memoria virtuale che il tuo sistema ha in qualsiasi momento utilizzando questa formula:

    Memoria virtuale = (Memoria fisica totale - Memoria fisica utilizzata / attiva) + Dimensione massima file di pagina di sistema

    Quindi, supponiamo di avere un sistema con 4 GB di memoria fisica e un file di pagina massimo di 6 GB. Avvia quindi Windows e apri alcune applicazioni (Outlook, Firefox, ecc.) E Windows segnala che vengono utilizzati 2,5 GB di memoria fisica. Ciò significa che hai 1,5 GB di memoria fisica "inutilizzata" e un file di pagina da 6 GB per un totale di 7,5 GB di memoria virtuale disponibile.

    Ricorda, il sistema operativo è abbastanza intelligente da sapere che la memoria fisica inutilizzata è sprecata memoria, quindi riempirà i restanti 1,5 della memoria fisica con quello che prevede che sarà necessario in modo che possa essere consultato su richiesta quasi istantaneamente. Questo può essere qualsiasi cosa, dai dati del programma in background minimizzati alle funzioni del sistema operativo comune.

    Quindi cosa succede quando Windows esaurisce la memoria fisica da utilizzare come memoria virtuale? Scrive questi dati nel file di paging del sistema che è un enorme file (nel nostro caso da 6 GB) sul tuo disco fisso. Sebbene ciò consenta al sistema operativo di archiviare praticamente tutti i dati che è necessario conservare in memoria, scrivere e recuperare (ovvero un errore di pagina), queste informazioni da / verso il disco rigido sono di ordine di grandezza più lente dell'accesso dalla memoria fisica. Questo è il motivo per cui più memoria fisica hai, più velocemente il tuo sistema può funzionare. Meno il tuo sistema usa il suo file di pagina, più veloce sarà.

    Monitoraggio dell'uso della memoria di Firefox

    Per le nostre indagini utilizzeremo semplicemente Task Manager di Windows. Tracciamo le seguenti colonne (le descrizioni sono definite sulla pagina di Microsoft):

    • Working Set = Quantità di memoria nel working set privato più la quantità di memoria utilizzata dal processo che può essere condivisa da altri processi.
    • Peak Working Set = Quantità massima di memoria del working set utilizzata dal processo.
    • Memory (Private Working Set) = Sottoinsieme di working set che descrive in modo specifico la quantità di memoria utilizzata da un processo che non può essere condivisa da altri processi.
    • Dimensione commit = quantità di memoria virtuale che è riservata per l'utilizzo da parte di un processo.

    Utilizzeremo un'installazione immediata di Firefox 4.0.1 con solo il componente aggiuntivo Memory Fox caricato. In Firefox, avremo le seguenti schede aperte e non faremo altro che scorrere su e giù le pagine caricate.

    Dopo aver atteso qualche istante per completare il caricamento, il Task Manager di Windows riporta quanto segue per Firefox.

    Ora quando iniziamo l'add-on di Memory Fox, osserviamo il drastico calo della quantità di memoria utilizzata.

    Si noti inoltre che un nuovo processo viene avviato da questo componente aggiuntivo che gestisce le funzioni di memoria.

    Lasciando Firefox inattivo e osservando i valori del working set e della memoria, è possibile vedere che c'è una costante lotta tra Firefox che ha bisogno di memoria fisica attiva e il componente aggiuntivo per la memoria che recupera questa memoria.

    Ecco l'utilizzo della memoria riportato ogni pochi secondi mentre Firefox viene lasciato inattivo.

    Notare la caduta nei valori di Working Set e Memory. Questo è il pulitore di memoria che recupera la memoria di sistema.

    Dopo essere salito per un po ', puoi vedere un'altra goccia.

    Schiuma. Risciacquare. Ripetere.

    Inoltre, se non fai altro che passare da una scheda all'altra e scorrere su e giù le pagine caricate, puoi vedere i numeri fluttuare un po 'più drasticamente che verrà spiegato di seguito.

    Interpretazione dei risultati

    Quando lo guardi per la prima volta, penseresti, hey sta funzionando alla grande. Ma dai un'occhiata alla colonna Commit Size e puoi vedere che questo valore non cambia mai veramente. Infatti, si avvia una volta avviato l'add-on di pulizia della memoria.

    Ricorda che la colonna Commit Size riporta la quantità effettiva di memoria (fisica + virtuale) di cui Windows ha bisogno per eseguire la rispettiva applicazione. Nel nostro esempio, il ~ 120 MB è riservato e attivo sul sistema specifico per Firefox e risiede nella memoria fisica inutilizzata e / o nel file di paging del sistema. Ricorda inoltre che se è necessario utilizzare il file di pagina, l'impatto sulle prestazioni è notevole perché la memoria virtuale deve essere scritta e letta dal disco rigido che è significativamente più lento della memoria fisica.

    Quindi essenzialmente il pulitore di memoria sta spostando la memoria fisica attiva nella memoria virtuale (perché la memoria deve essere reclamata da qualche parte). Quando ciò accade, Firefox non ha più la memoria di cui ha bisogno per funzionare attivamente, quindi deve chiedere a Windows di spostare i rispettivi dati necessari dalla memoria virtuale alla memoria fisica. E intorno e intorno andiamo ...

    Nella migliore delle ipotesi, questo processo non fa nulla di utile e nel peggiore dei casi provoca una quantità massiccia di errori di pagina non necessari perché, ancora una volta, se Windows deve mettere in gioco il file della pagina, si verifica un notevole calo delle prestazioni. Questo può essere in particolare il caso di sistemi che non hanno molta memoria fisica (dove praticamente tutta la memoria virtuale è conservata in un file di paging), il che è ironico perché questi sono i sistemi per cui un dispositivo di pulizia della memoria è stato "progettato".

    La morale di tutta questa storia è abbastanza semplice, i pulitori di memoria non fanno altro che spostarsi sui numeri. Qualsiasi sistema operativo saprà come gestire la memoria in modo appropriato, quindi lascia che facciano le loro cose.

    Gestione dell'uso della memoria di Firefox

    Dato che abbiamo dimostrato che i componenti aggiuntivi per la pulizia della memoria non fanno davvero nulla di utile, cosa puoi fare per la grande quantità di memoria che utilizza Firefox? Ecco alcuni suggerimenti:

    • Rimuovere i componenti aggiuntivi non necessari (soprattutto quelli per la pulizia della memoria).
    • Mantieni il numero di schede aperte al minimo.
    • Chiude periodicamente Firefox e lo riavvia.
    • Aggiungi più memoria al tuo sistema.
    • Non preoccuparti per questo.

    Memory Fox Next Add-on per Firefox