FreeMemory aslında ne yapıyor?


13

Mac App Store'da FreeMemory adında yüksek puan alan bir uygulama var . "Basit bir tıklama ile boş hafıza artırmak" iddia edebiliyor. Şu anda ücretsiz olmasına rağmen, normalde 99 sente gittiğine inanıyorum.

Bir bilgisayar bilimcisi olarak, uygulama hakkındaki sezgim neredeyse kesinlikle yılan yağı; modern bir işletim sisteminde, uygulamanın yapabileceği her şey en iyi ihtimalle gereksiz ve en kötü performansa gerçekten zararlı olacaktır.

En iyi tahminim, uygulamanın muhtemelen sistemin "Etkin olmayan" belleği boşaltmasına neden olacak bir şey yapmasıdır, bu da muhtemelen performans üzerinde hiçbir etkisi yoktur. Ancak, uygulama hakkında çok az bilgi sağlanır ve makineme yüklemek konusunda isteksizim. Ayrıca Linux ve Windows ile olduğum kadar OS X'e aşina değilim, bu yüzden OS X'in RAM'i nasıl işlediği hakkında yanıltılmış olabilirim.

Sorularım:

  • FreeMemory tam olarak ne yapar ve bunu nasıl başarır? Kullanıcı-alanı programlarına işletim sisteminin bellek yönetimi parametrelerine erişim verebilecek bazı genel API var mı?
  • FreeMemory kullanmak aslında bir performans artışı sağlayabilir mi, yoksa şüphelendiğim gibi yılan yağı mı?

3
Mükemmel bir soru! Benim en büyük evcil hayvanımın tüyolarım sadece FUD'nin yayılması değil, aynı zamanda insanları zor kazanılan nakitlerinden dolandırmak için kullanmaktır!

Tüm düşünceli cevaplar için teşekkürler. Gerçekten uygulamalar arasında geçiş bataklık gibi görünüyordu MBP benim "Boş Bellek" yükledim. FM uygulaması yüklüyken, gerçekten daha iyi değil ve uygulama "Hafıza Boşaltma" olduğu için, başka hiçbir şey, .., 45 saniye kadar, hiçbir şey işe yaramaz. OS X6.8 çalıştıran MPB'mın kendi belleğini iyi işlediğini sanmıyorum, ancak bu uygulama hiçbir şeye yardımcı görünmüyor.

Yanıtlar:


12

İnsanları paralarından dolandırmak dışında kesinlikle hiçbir şey. Bana Apple'ın neden onayladığını sorma. iOS ve OS X belleği gerektiği gibi yönetir. Orada bir sürü FUD zayıf olduğunu iddia ediyor. Bu iddiaları destekleyecek kanıt yok. Hiçbir gerçek sunulmadı. Alanında bir deneyim veya eğitim deneyimi olan hiç kimse (gördüğüm) ortaya çıkmadı ve iddiaları akredite etmedi. Yılan yağı.

Performansı artırmak mı istiyorsunuz? Daha iyi bir cihaz satın alın. Yalnızca daha iyi donanım, daha iyi performansa eşit olabilir. Elbette bir sistemi optimize edebilirsiniz, ancak bu bunu yapmaz, sadece kullanılabilir belleği kaydırır.

OS X'te ( Apple'ın izniyle ) bellek yönetimini nasıl anlayacağınıza dair bir döküm :

Boş hafıza

Bu RAM kullanılmıyor.

Kablolu bellek

Bu bellekteki bilgiler sabit diske taşınamaz, bu nedenle RAM'de kalmalıdır. Kablolu bellek miktarı kullandığınız uygulamalara bağlıdır.

Aktif bellek

Bu bilgi şu anda bellekte ve son zamanlarda kullanıldı.

Etkin olmayan bellek

Bellekteki bu bilgiler aktif olarak kullanılmamaktadır, ancak yakın zamanda kullanılmıştır.

Örneğin, Posta kullanıyorsanız ve sonra da çıktıysanız, Posta'nın kullandığı RAM etkin olmayan bellek olarak işaretlenir. Bu Etkin Olmayan bellek, Boş bellek gibi başka bir uygulama tarafından kullanılabilir. Ancak, Etkin olmayan belleği farklı bir uygulama tarafından kullanılmadan önce Posta'yı açarsanız , Posta daha yavaş sabit diskten yüklemek yerine Etkin Olmayan belleği Etkin belleğe dönüştürüldüğü için Posta daha hızlı açılır .

Şimdi Apple'ın işletim sistemindeki bellek yönetiminin temel anlayışıyla bile, "boşaltma" yı düşündüğünüzü söyleyin Aktif olmayan bellek herhangi bir işe yarar mı? İstekte bulunan herhangi bir uygulama tarafından kullanılabilir ve aynı uygulama tekrar tutmayı isterse, bir hız artışı elde eder. Elbette bu kadar basit değil, ancak Aktif Olmayan belleği yok etmek ve Serbest belleğe taşımak performansta artışa neden olmaz. Sonuçta, nasıl olabilir? İyi bir sistem tüm hafızanızı biriktirmeli ve ihtiyacı olan şeylere ayırmalıdır . Boş hafıza, tanım gereği kullanılmadığı için boşa harcanan bellektir. 8 GB RAM'iniz varsa ve 4 GB'ı her zaman boş tutarsanız, 4 GB çalıştıran bir sisteminiz vardır.

OS X'te etkin olmayan bellek akıllıca ayrılır. Aksini iddia eden geçerli ve güvenilir veriler gördüğümde sesimi değiştireceğim. Ve dürüst olmak gerekirse, başka hiçbir şey yoksa, bazı üçüncü taraf uygulamalarının Apple'ın dünya standartlarında mühendislerini bu kadar zaman geçirmeyen kutsal bellek yönetimini bulduğunu düşünüyor musunuz (binlerce açık kaynaklı UNIX programcısından bahsetmiyoruz)? Dediğim gibi yılan yağı.


Uygulama iOS'tan ziyade özellikle OS X'dir, ancak cevabı beğendim.
Nicholas Smith

@NicholasSmith iOS, belleği OS X ile aynı şekilde yönetir. Dosya yapısı da aynıdır ve dolayısıyla çekirdek mimarisi de çoktur. Bu kadar düşük seviyeli işlevler için, iOS ve OS X ile değiştirilebilir hakkında konuşabilirsiniz (açıkçası iOS, ARM7 kemerinde çalışmak için ayarlanmıştır, ancak niyetlerimiz ve amaçlarımız için endişelenmemize gerek yoktur), ancak konu dışı ve ben cevabımı OP'nin sorusuna daha iyi odaklanmak için düzenledi. Teşekkürler. Neden orada iOS kullandığımı bilmiyorum ... daha iyi okumayı öğrenmeliyim.

benzerlikler neden hoşuma gitti, OS X'in sınırlı bellek koşullarında iOS üzerinden nasıl daha kolay işlediğini görüyorsunuz.
Nicholas Smith

@NicholasSmith bu iyi bir nokta ve tüm bu bellek yönetimi uygulamalarının (iOS ve OS X) kesinlikle hiçbir şey yapmadığına daha fazla destek eklemeliyiz (utanç verici bir Apple onları onaylıyor; en azından "sahtekâr" görünüyorlar).

Neden hafızamın% 40'ından fazlası "aktif değil" olsa bile mac'umun deli gibi takas etmeye başlaması neden
Alexander - Reinstate Monica

6

Takılı ve test edilmiş, temizleme komutunu çalıştırıyor ve etkin olmayan belleği boşaltıyorlar. % 100 yılan yağı değil, OS X'in etkin olmayanı düzgün bir şekilde serbest bırakmadığı ve disk tabanlı takas dosyasına (bir G / Ç performans isabetine neden olan) vurmaya başladığı durumlar olabilir, ancak kullanıcıların çoğunluğu için oldukça işe yaramaz.

Bir menü çubuğundaki bir komutu kaydırmak için 0,99 ABD doları kazanıyor olsalar da, Mac Geliştirici lisansımı almam gerekiyor.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.