Firefox Bellek Temizleyicileri Gerçekten Çalışıyor mu?
Yayınlanan: 2022-01-29
Firefox'un normal kullanım sırasında oldukça fazla sistem belleği tüketebileceği bir sır değil. Açtığınız sekmelerin sayısı ve kurulu eklentiler kesinlikle katkıda bulunsa da, kutunun dışında muhafazakar bir şekilde kullanılmış bir kurulum bile oldukça fazla bellek kullanımı bildirebilir.
Bu, tarayıcının artık ihtiyaç duymadığı belleği boşalttığını iddia eden birkaç Firefox eklentisinin ortaya çıkmasına neden oldu, ancak bunlar gerçekten işe yarıyor mu?
Windows'un Belleği Nasıl İşlediğine İlişkin İki Dakikalık Bir Genel Bakış
Bir bellek temizleyiciyi incelemeye dalmadan önce, Windows'un belleği işleme biçimi hakkında biraz bilgi sahibi olmak önemlidir. Bu, deneyimizin sonuçlarını yorumlayabilmemiz için önemli olacaktır.
Endişelenme, bunu çok yüksek bir seviyede ele alacağız, böylece takip etmek için bir mega-geek olmanıza gerek yok.
Hızlı bir sorumluluk reddi olarak, bu, Windows bellek yönetiminin temellerinin son derece kısa bir özetidir. Bu, yalnızca bu makalenin konusuna uygulanabilir düzeyde açıklandığı için hiçbir şekilde yetkili veya kesin olarak kabul edilmemelidir.
Windows, kullanılmayan fiziksel belleğin boşa harcandığını bilecek kadar akıllıdır, bu nedenle ihtiyaç duyduğu her şeyi yükler ve belleğe ihtiyaç duyacağını düşünür. Ancak, yalnızca sisteminizin gerçekten ihtiyaç duyduğu (hem Windows hem de uygulamalar) ve şu anda aktif olarak kullandığı şey, kullanılmış fiziksel bellek olarak bildirilir. Gerisi (Windows'un ihtiyaç duyacağını düşündüğü şey) sanal bellek denilen yerde bulunur.
Sanal bellek, esasen işletim sistemi tarafından aktif olarak gerekli olmayan ancak herhangi bir zamanda aktif belleğe yüklenmeye hazır olan verilerdir. Bu formülü kullanarak herhangi bir zamanda sisteminizin sahip olduğu sanal bellek miktarını kabaca hesaplayabilirsiniz:
Sanal Bellek = (Toplam Fiziksel Bellek – Kullanılan/Aktif Fiziksel Bellek) + Maksimum Sistem Sayfası Dosya Boyutu
Diyelim ki 4 GB fiziksel belleğe ve maksimum 6 GB sayfa dosyasına sahip bir sisteminiz var. Daha sonra Windows'u başlatır ve birkaç uygulama açarsınız (Outlook, Firefox, vb.) ve Windows 2,5 GB fiziksel belleğin kullanıldığını bildirir. Bu, toplam 7,5 GB kullanılabilir sanal bellek için 1,5 GB "kullanılmayan" fiziksel belleğiniz ve 6 GB sayfa dosyanız olduğu anlamına gelir.
Unutmayın, işletim sistemi kullanılmayan fiziksel belleğin boşa harcanan bellek olduğunu bilecek kadar akıllıdır, bu nedenle fiziksel belleğin kalan 1.5'ini ihtiyaç duyacağınızı tahmin ettiği şeylerle dolduracak ve böylece talep üzerine neredeyse anında erişilebilecektir. Bu, küçültülmüş arka plan program verilerinden ortak işletim sistemi işlevlerine kadar her şey olabilir.
Peki, Windows'un sanal bellek olarak kullanmak için fiziksel belleği bittiğinde ne olur? Bu verileri, sabit sürücünüzdeki çok büyük (bizim durumumuzda 6 GB) bir dosya olan sistem sayfası dosyasına yazar. Bu, işletim sisteminin bellekte tutması gereken hemen hemen tüm verileri depolamasına izin verirken, bu bilgileri sabit sürücüye yazma ve alma (yani bir sayfa hatası), fiziksel bellekten erişmekten çok daha yavaştır. Bu nedenle, ne kadar fazla fiziksel belleğe sahip olursanız, sisteminiz o kadar hızlı çalışabilir. Sisteminiz sayfa dosyasını ne kadar az kullanırsa, o kadar hızlı performans gösterecektir.
Firefox'un Bellek Kullanımını İzleme
Araştırmamız için sadece Windows Görev Yöneticisini kullanacağız. Aşağıdaki sütunları izleyeceğiz (açıklamalar Microsoft'un sayfasında tanımlanmıştır):
- Çalışma Kümesi = Özel çalışma kümesindeki bellek miktarı artı işlemin kullandığı ve diğer işlemler tarafından paylaşılabilen bellek miktarı.
- Peak Working Set = İşlem tarafından kullanılan maksimum çalışma seti belleği miktarı.
- Bellek (Özel Çalışma Kümesi) = Bir işlemin kullandığı ve diğer işlemler tarafından paylaşılamayan bellek miktarını özel olarak tanımlayan çalışma kümesinin alt kümesi.
- Taahhüt Boyutu = Bir işlem tarafından kullanılmak üzere ayrılmış sanal bellek miktarı.
Yalnızca Memory Fox eklentisi yüklenmiş olarak Firefox 4.0.1'in kullanıma hazır kurulumunu kullanacağız. Firefox'ta aşağıdaki sekmeleri açacağız ve yüklenen sayfaları yukarı ve aşağı kaydırmaktan başka bir şey yapmayacağız.

Her şeyin yüklenmesinin tamamlanması için birkaç dakika bekledikten sonra, Windows Görev Yöneticisi Firefox için aşağıdakileri bildirir.
Şimdi, Memory Fox eklentisini başlattığımızda, bildirilen bellek kullanımı miktarındaki çarpıcı düşüşe bakın.
Ayrıca, bu eklenti tarafından bellek işlevlerini yöneten yeni bir işlemin başlatıldığını unutmayın.
Firefox'u boşta bırakıp Çalışma Kümesi ve Bellek değerlerini izleyerek, aktif fiziksel belleğe ihtiyaç duyan Firefox ile bu belleği geri alan bellek temizleyici eklentisi arasında sürekli bir mücadele olduğunu görebilirsiniz.
Firefox boştayken birkaç saniyede bir bildirilen bellek kullanımı burada.
Çalışma Kümesi ve Bellek değerlerindeki düşüşe dikkat edin. Bu, sistem belleğini geri alan bellek temizleyicisidir.
Biraz yukarı çıktıktan sonra başka bir düşüş görebilirsiniz.
köpük. Durulmak. Tekrarlamak.
Ek olarak, sekmeleri değiştirmek ve yüklenen sayfaları yukarı ve aşağı kaydırmaktan başka bir şey yapmazsanız, sayıların biraz daha fazla dalgalandığını görebilirsiniz, bu aşağıda açıklanacaktır.
Sonuçların Yorumlanması
İlk baktığınızda, hey bu harika çalışıyor diye düşünürdünüz. Ancak Taahhüt Boyutu sütununa bir göz atın ve bu değerin hiçbir zaman gerçekten değişmediğini görebilirsiniz. Aslında, bellek temizleme eklentisini başlattığınızda yükselir.
Unutmayın, Taahhüt Boyutu sütunu, Windows'un ilgili uygulamayı çalıştırmak için ihtiyaç duyduğu gerçek bellek miktarını (fiziksel + sanal) bildirir. Bu nedenle, örneğimizde ~120 MB ayrılmış ve sistemde özellikle Firefox için etkindir ve kullanılmayan fiziksel bellekte ve/veya sistem sayfası dosyasında bulunur. Ayrıca, sayfa dosyasının kullanılması gerekiyorsa, sanal belleğin fiziksel bellekten önemli ölçüde daha yavaş olan sabit diske yazılması ve sabit diskten okunması gerektiğinden, gözle görülür bir performans etkisi olduğunu unutmayın.
Yani aslında bellek temizleyici aktif fiziksel belleği sanal belleğe taşıyor (çünkü bellek geri kazanılıyor bir yere gitmesi gerekiyor). Bu olduğunda, Firefox artık aktif olarak çalışması için ihtiyaç duyduğu belleğe sahip değildir, bu nedenle Windows'tan ihtiyaç duyduğu ilgili verileri sanal bellekten fiziksel belleğe taşımasını istemek zorundadır. Ve döne döne gidiyoruz…
En iyi ihtimalle, bu işlem hiçbir işe yaramaz ve en kötü ihtimalle çok büyük miktarda gereksiz sayfa hatasına neden olur çünkü yine Windows sayfa dosyasını oynatmak zorunda kalırsa gözle görülür bir performans düşüşü olur. Bu, özellikle çok fazla fiziksel belleğe sahip olmayan (neredeyse tüm sanal belleğin bir sayfa dosyasında tutulduğu) sistemlerde geçerli olabilir, bu ironiktir çünkü bunlar bir bellek temizleyicisinin "tasarlandığı" sistemlerdir.
Tüm bu hikayenin ahlaki, oldukça basit, bellek temizleyicileri sayıların etrafından dolaşmaktan başka bir şey yapmıyor. Herhangi bir işletim sistemi, belleği uygun şekilde nasıl kullanacağını bilecek, bu yüzden bırakın işlerini yapsınlar.
Firefox'un Bellek Kullanımını Yönetme
Bellek temizleme eklentilerinin gerçekten yararlı bir şey yapmadığını gösterdiğimize göre, Firefox'un kullandığı büyük miktarda bellek hakkında ne yapabilirsiniz? İşte birkaç öneri:
- İhtiyacınız olmayan eklentileri kaldırın (özellikle bellek temizleme eklentileri).
- Açtığınız sekme sayısını minimumda tutun.
- Firefox'u periyodik olarak kapatın ve yeniden başlatın.
- Sisteminize daha fazla bellek ekleyin.
- Bunun için endişelenme.
Firefox için Memory Fox Sonraki Eklentisi