Ar „Firefox“ atminties valikliai iš tikrųjų veikia?
Nėra paslaptis, kad „Firefox“ gali įprastai naudoti gana daug sistemos atminties. Nors atidarytų skirtukų ir įdiegtų priedų skaičius neabejotinai prisideda, net ir konservatyviai išjungtas iš dėžutės įrenginio gali pranešti apie šiek tiek atminties naudojimo.
Tai sukėlė kelis „Firefox“ priedus prie paviršiaus, kurie reikalauja atlaisvinti atmintį, kurią naršyklė nebeturi, bet ar jie iš tikrųjų dirba?
Dviejų minučių apžvalga, kaip „Windows“ tvarko atmintį
Prieš nardydami išnagrinėti atminties valiklį, svarbu suprasti šiek tiek apie tai, kaip „Windows“ tvarko atmintį. Tai bus svarbu, kad galėtume interpretuoti mūsų eksperimento rezultatus.
Nesijaudinkite, mes padengsime tai labai aukštu lygiu, todėl jums nereikės būti mega-geek.
Kaip greitas atsakymas, tai yra labai trumpas „Windows“ atminties valdymo pagrindų apibendrinimas. Tai jokiu būdu neturėtų būti laikoma autoritetinga ar galutine, nes ji paaiškinama tik šio straipsnio dalykui taikomu lygiu.
„Windows“ yra pakankamai protingas, kad žinotų, jog nepanaudota fizinė atmintis yra švaistoma atmintis, todėl ji įkelia viską, ko reikia, ir mano, kad tai reikės atmintyje. Tačiau kaip naudojama fizinė atmintis, pranešama tik apie jūsų sistemos poreikius (tiek Windows, tiek programas) ir aktyviai naudojamą šiuo metu. Likusi dalis (ką „Windows“ mano, kad tai reikės) yra vadinama virtualia atmintimi.
Virtuali atmintis iš esmės yra duomenys, kurių operacinė sistema nėra aktyviai reikalinga, bet yra pasirengusi bet kuriuo metu įkelti į aktyviąją atmintį. Galite labai kruopščiai apskaičiuoti virtualiosios atminties kiekį, kurį jūsų sistema bet kuriuo metu naudoja naudodama šią formulę:
Virtuali atmintis = (bendra fizinė atmintis - naudojama / aktyvi fizinė atmintis) + maksimalus sistemos puslapio failo dydis
Taigi, tarkime, jūs turite sistemą, kurioje yra 4 GB fizinės atminties ir 6 GB maksimalaus puslapio failo. Tada paleidžiate „Windows“ ir atveriate kelias programas („Outlook“, „Firefox“ ir kt.) Ir „Windows“ praneša, kad naudojama 2,5 GB fizinės atminties. Tai reiškia, kad turite 1,5 GB „nepanaudotos“ fizinės atminties ir 6 GB puslapio failo iš viso 7,5 GB turimos virtualiosios atminties.
Atminkite, kad OS yra pakankamai protingas, kad žinotų, jog nepanaudota fizinė atmintis yra švaistoma, taigi ji užpildys likusius 1,5 fizinės atminties su tuo, ko ji tikisi, kad ją būtų galima pasiekti beveik akimirksniu. Tai gali būti bet kas nuo minimalaus fono programos duomenų iki įprastų OS funkcijų.
Taigi, kas atsitinka, kai „Windows“ baigsis fizinės atminties, kuri naudojama kaip virtualioji atmintis? Jis rašo šiuos duomenis į sistemos puslapio failą, kuris yra didžiulis (mūsų atveju 6 GB) failas jūsų standžiajame diske. Nors tai leidžia OS saugoti beveik visus duomenis, kurių reikia norint išsaugoti atmintį, rašyti ir gauti (dar žinomas kaip puslapio gedimas), ši informacija iš kietojo disko / iš kietojo disko yra mažesnė už prieigą prie fizinės atminties. Todėl kuo daugiau fizinės atminties turite, tuo greičiau jūsų sistema gali veikti. Kuo mažiau jūsų sistema naudoja puslapio failą, tuo greičiau jis veiks.
„Firefox“ atminties naudojimo stebėjimas
Mūsų tyrimui mes tiesiog naudosime „Windows Task Manager“. Stebėsime šiuos stulpelius (aprašymai apibrėžti „Microsoft“ puslapyje):
- Darbinis rinkinys = atminties kiekis privačiame darbo rinkinyje ir atminties, kurią naudoja procesas, kurį gali dalintis kiti procesai, kiekis.
- Peak Working Set = maksimalus darbo rinkinio atminties kiekis, kurį naudoja procesas.
- Atmintis (privataus darbo rinkinys) = darbo rinkinio pogrupis, kuris konkrečiai apibūdina, kiek atminties naudoja procesas, kurio negali dalytis kiti procesai.
- Commit Size = virtualiosios atminties kiekis, skirtas naudoti procesui.
Mes naudosime „Firefox 4.0.1“ dėžutės diegimą tik įkėlus „Memory Fox“ priedą. „Firefox“ atidarysime šiuos skirtukus ir nieko nedarysime, tik slinkite aukštyn ir žemyn įkeltais puslapiais.
Palaukę kelias akimirkas, kad viską užbaigtumėte, „Windows“ užduočių tvarkyklė praneša apie „Firefox“.
Dabar, kai pradėsime „Memory Fox“ priedą, peržiūrėkite dramatišką pranešimų apie atmintį kiekį.
Taip pat atkreipkite dėmesį, kad šis priedas pradeda naują procesą, kuris tvarko atminties funkcijas.
Paliekant „Firefox“ tuščiąja eiga ir stebint darbo rinkinį bei atminties vertes, galite matyti, kad tarp „Firefox“ reikia nuolatinės fizinės atminties ir atminties švaresnio papildomo atminties..
Čia pateikiamas pranešimas apie atminties naudojimą, kurį atlieka kas kelias sekundes, kol „Firefox“ paliekama neveikia.
Atkreipkite dėmesį į darbo grupės ir atminties reikšmių sumažėjimą. Tai yra atminties valiklis, atkuriantis sistemos atmintį.
Po truputį pakilus, pamatysite dar vieną lašą.
Susirinkite. Išskalauti. Pakartokite.
Be to, jei nieko nedarote, bet pakeisite skirtukus ir slinkite aukštyn ir žemyn įkeltais puslapiais, galite matyti, kad numeriai šiek tiek svyruoja, o tai bus paaiškinta toliau.
Rezultatų aiškinimas
Pirmą kartą žiūrėdami, jūs manote, kad tai puikiai veikia. Tačiau pažiūrėkite į „Commit Size“ stulpelį ir pamatysite, kad ši vertė niekada nesikeičia. Tiesą sakant, kyla, kai pradėsite atminties valymo priedą.
Atminkite, kad stulpelyje „Įsipareigoti dydį“ nurodomas tikrasis atminties kiekis (fizinis + virtualus), kurį „Windows“ turi paleisti pagal atitinkamą programą. Taigi mūsų pavyzdyje ~ 120 MB yra rezervuota ir aktyvi sistemoje specialiai „Firefox“ ir gyvena neišnaudotoje fizinėje atmintyje ir / arba sistemos puslapio faile. Taip pat nepamirškite, kad jei reikia naudoti puslapio failą, pastebimas efektyvus poveikis, nes virtualioji atmintis turi būti parašyta ir perskaityta iš kietojo disko, kuris yra žymiai lėtesnis nei fizinė atmintis..
Taigi atminties valiklis iš esmės perkelia aktyvią fizinę atmintį į virtualią atmintį (nes atmintis yra susigrąžinta, turi eiti kažkur). Kai taip atsitinka, „Firefox“ nebeturi atminties, kurios reikia aktyviai veikti, todėl reikia paprašyti „Windows“ perkelti reikiamus duomenis iš virtualiosios atminties į fizinę atmintį. Ir aplink ir aplink mes einame…
Geriausiu atveju šis procesas nieko nėra naudingas ir blogiausiu atveju sukelia didžiulį nereikalingų puslapių gedimų kiekį, nes, vėlgi, jei „Windows“ turi atkurti puslapio failą, tuomet pastebimas pastebimas našumo pasiekimas. Tai ypač gali būti sistemoje, kurioje nėra daug fizinės atminties (kur beveik visa virtuali atmintis yra laikoma puslapio faile), kuri yra ironiška, nes tai yra sistemos, kuriose atminties valiklis buvo „sukurtas“.
Šios visos istorijos moralė yra gana paprasta, atminties valikliai nieko nedaro, o perkelia numerius. Bet kuri operacinė sistema ketina žinoti, kaip tinkamai elgtis su atmintimi, todėl leiskite jiems daryti viską.
„Firefox“ atminties naudojimo valdymas
Kadangi parodėme, kad atminties valymo papildiniai iš tikrųjų nieko nedaro, ką jūs galite padaryti dėl didelio „Firefox“ atminties kiekio? Štai keletas pasiūlymų:
- Pašalinti nereikalingus priedus (ypač visus atminties valymo įrenginius).
- Palaikykite minimalų skirtukų skaičių.
- Periodiškai uždarykite „Firefox“ ir paleiskite ją iš naujo.
- Įtraukite daugiau atminties į savo sistemą.
- Nesijaudinkite.
„Memory Fox“ Kitas „Firefox“ priedas