Nije tajna da Firefox može konzumirati prilično malo memorije sustava tijekom normalne uporabe. Iako se broj otvorenih kartica i instaliranih dodataka svakako pridonose, čak i konzervativno korištena vanjska strana instalacije u okviru može prikazivati prilično malo memorije.
To je uzrokovalo nekoliko dodataka za Firefox koje zahtijevaju oslobađanje memorije koju preglednik više ne treba, ali oni zapravo rade?
Prije nego što zaronimo u ispitivanje čistača memorije, važno je malo razumjeti način na koji Windows upravlja memorijom. Ovo će biti važno kako bismo mogli interpretirati rezultate našeg eksperimenta.
Ne brinite, ovo ćemo pokriti na vrlo visokoj razini, tako da ne morate biti mega-geek koji ćete slijediti.
Kao brz odricanje od odgovornosti, ovo je izuzetno kratak sažetak vrlo osnova za upravljanje memorijom sustava Windows. Ni na koji način ne bi smjelo smatrati autoritativnim ili konačnim jer je objašnjeno samo na razinu koja se primjenjuje na predmet ovog članka.
Windows je dovoljno pametan da zna da je neiskorištena fizička memorija izgubljena u memoriji, tako da učitava sve što mu treba i misli da će trebati u memoriju. Međutim, samo ono što vaš sustav zapravo treba (oba sustava Windows i aplikacije) i koji aktivno koristi u trenutačno vrijeme, prijavljuje se kao fizička memorija. Ostalo (ono što Windows smatra potrebnim) nalazi se u onom što se zove virtualna memorija.
Virtualna memorija bitno je podatak koji OS ne zahtijeva aktivno, ali je spreman za učitavanje u aktivnu memoriju u bilo kojem trenutku. Možete vrlo grubo izračunati količinu virtualne memorije vašeg sustava u bilo kojem trenutku pomoću ove formule:
Virtualna memorija = (ukupna fizička memorija - korištena / aktivna fizička memorija) + Maksimalna veličina datoteke sustava
Dakle, pretpostavimo da imate sustav sa 4 GB fizičke memorije i 6 GB maksimalne datoteke stranice. Nakon toga pokrenete sustav Windows i otvorite nekoliko programa (Outlook, Firefox itd.) I Windows izvještava da se koristi 2,5 GB fizičke memorije. To znači da imate 1,5 GB "neiskorištene" fizičke memorije i 6 GB datoteke za ukupno 7,5 GB dostupne virtualne memorije.
Zapamtite, OS je dovoljno pametan da zna da je neiskorištena fizička memorija istrošena sjećanje, tako da će ispuniti preostalu 1.5 fizičku memoriju s onim što očekuje da će vam trebati tako da se može pristupiti na zahtjev gotovo trenutačno. To može biti bilo što od minimiziranih podataka pozadinskog programa do uobičajenih OS funkcija.
Pa što se događa kada Windows ispadne iz fizičke memorije za korištenje kao virtualna memorija? Taj podaci pišu na datoteku s datotekama sustava koja je ogromna (u našem slučaju 6 GB) datoteka na tvrdom disku. Iako to omogućuje OS-u pohraniti prilično mnogo podataka koje je potrebno čuvati u memoriji, pisanje i dohvaćanje (ili pogreška na stranici), ove informacije s / na tvrdom disku narudžbe su manje od pristupa iz fizičke memorije. Zato više fizičke memorije imate što brže možete pokrenuti sustav. Što manje vaš sustav koristi svoju datoteku stranice, to će brže izvršiti.
Za našu istragu jednostavno ćemo koristiti Windows Task Manager. Pratit ćemo sljedeće stupce (opisi su definirani na Microsoftovoj stranici):
Koristit ćemo izvanrednu instalaciju Firefox 4.0.1 sa samo dodatkom Memory Fox dodatkom. U Firefoxu imat ćemo sljedeće kartice otvorene i nećemo učiniti ništa drugo osim da se pomaknemo gore i dolje na učitane stranice.
Nakon što čekate nekoliko trenutaka da bi sve završilo učitavanje, Windows Task Manager izvješćuje sljedeće za Firefox.
Sada kada pokrenemo dodatak Memory Fox, pogledajte dramatičan pad količine korištene memorije.
Također imajte na umu da ovaj dodatak započinje novim procesom, što je ono što rukuje memorijskim funkcijama.
Ostavljajući Firefox u praznom hodu i promatranjem vrijednosti Work Set i Memory, možete vidjeti da postoji stalna borba između Firefox-a koji trebaju aktivnu fizičku memoriju i memorije za čišćenje memorije koja vraća ovu memoriju.
Ovdje je prikazana upotreba memorije koja se poduzima svakih nekoliko sekundi dok Firefox ostaje u stanju mirovanja.
Imajte na umu pad vrijednosti Work Set i Memory. To je čistač memorije koja vraća memoriju sustava.
Nakon što malo požurite, možete vidjeti još jedan pad.
Sapunica. Ispiranje. Ponoviti.
Osim toga, ako ne radite ništa osim prebacivanja kartica i pomicanje prema gore i dolje na učitane stranice, možete vidjeti da se brojke malo drastično oslobađaju što će biti objašnjeno u nastavku.
Kada prvi put pogledate, mislite, hej ovo radi sjajno. No pogledajte stupac Commit Size i vidjet ćete da se ta vrijednost nikad zapravo ne mijenja. Zapravo se diže nakon što pokrenete dodatak za čišćenje memorije.
Zapamtite, stupac Obavezna veličina prikazuje stvarnu količinu memorije (fizički + virtualni) koji Windows treba pokrenuti odgovarajuću aplikaciju. Tako je u našem primjeru ~ 120 MB rezervirano i aktivno na sustavu posebno za Firefox i nalazi se u neiskorištenoj fizičkoj memoriji i / ili datoteci sustava. Također imajte na umu da ako se datoteka stranice treba koristiti, dolazi do primjetnog utjecaja na performanse jer virtualna memorija mora biti zapisana i čitati s tvrdog diska, što je znatno sporiji od fizičke memorije.
Dakle, u suštini memorija čistač se kreće aktivna fizička memorija u virtualnu memoriju (jer memorija je regrut mora ići negdje). Kada se to dogodi, Firefox više nema memoriju koju treba aktivno aktivirati tako da mora zatražiti od Windowsa da premjestiti odgovarajuće podatke iz virtualne memorije natrag u fizičku memoriju. I okolo i okolo idemo ...
U najboljem slučaju, ovaj proces ne čini ništa korisno i u najgorem slučaju uzrokuje veliku količinu nepotrebnih pogrešaka stranica, jer, opet, ako Windows mora dovesti datoteku stranice u igru, tada će doći do primjetnog rezultata. To se osobito može dogoditi na sustavu koji nema puno fizičke memorije (gdje je gotovo sva virtualna memorija zadržana u datoteci stranice), što je ironično jer su to sustavi za koji je "dizajniran" memorijski čistač.
Moralna cjelokupna priča je sasvim jednostavno, čistači memorije ne poduzimaju ništa, nego prebacuju brojeve. Svaki operativni sustav će znati kako nositi sjećanje na odgovarajući način, pa samo neka rade svoju stvar.
Budući da smo pokazali da dodatke za čišćenje memorije zapravo ne čine ništa korisno, što možete učiniti o velikom broju memorije koju Firefox koristi? Evo nekoliko prijedloga:
Memorija Next Next Add-on za Firefox