Co właściwie robi FreeMemory?

13

W Mac App Store jest wysoko oceniana aplikacja o nazwie FreeMemory . Twierdzi, że jest w stanie „zwiększyć wolną pamięć za pomocą jednego kliknięcia”. Chociaż obecnie jest darmowy, uważam, że zwykle kosztuje 99 centów.

Jako informatyk moją intuicją dotyczącą aplikacji jest to, że prawie na pewno jest to olej wężowy; w nowoczesnym systemie operacyjnym wszystko, co mogłaby zrobić aplikacja, byłoby co najwyżej niepotrzebne, aw najgorszym przypadku szkodliwe dla wydajności.

Domyślam się, że aplikacja prawdopodobnie robi coś, co powoduje, że system zrzuca pamięć „nieaktywną”, co prawdopodobnie nie ma żadnego wpływu na wydajność. Jednak bardzo mało informacji na temat aplikacji i niechętnie instaluję ją na moim komputerze. Nie znam się tak dobrze na OS X, jak na Linuksie i Windowsie, więc mogę się mylić co do tego, jak OS X obsługuje pamięć RAM.

Moje pytania to:

  • Co dokładnie robi FreeMemory i jak to osiąga? Czy istnieje jakiś publiczny interfejs API, który może zapewnić programom przestrzeni użytkownika dostęp do parametrów zarządzania pamięcią systemu operacyjnego?
  • Czy korzystanie z FreeMemory może rzeczywiście zwiększyć wydajność, czy też jest to olej wężowy, jak podejrzewam?
Mitch Lindgren
źródło
3
Doskonałe pytanie! Jedną z moich największych sztuczek dla zwierząt domowych jest nie tylko rozpowszechnianie FUD, ale także wykorzystywanie go do wyłudzania ludzi z ciężko zarobionych pieniędzy!
Dzięki za wszystkie przemyślane odpowiedzi. Naprawdę zainstalowałem „Free Memory” na moim MBP, ponieważ wydawało się, że naprawdę utknąłem podczas przełączania między aplikacjami. Po zainstalowaniu aplikacji FM nie jest tak naprawdę lepsza, a dodatkowo pojawia się irytacja, że ​​ponieważ aplikacja jest „zwalniająca pamięć”, nic więcej nie działa… w ogóle… przez około 45 sekund. Nie sądzę, że mój MPB ​​z systemem OS X6.8 dobrze radzi sobie z własną pamięcią, ale ta aplikacja nic nie pomaga.

Odpowiedzi:

12

Absolutnie nic innego jak wyłudzanie ludzi z pieniędzy. Nie pytaj mnie, dlaczego Apple to zatwierdziło. iOS i OS X zarządzają pamięcią zgodnie z wymaganiami. Wiele FUD twierdzi, że jest w tym kiepski. Brak dowodów na poparcie tych twierdzeń. Nigdy nie przedstawiono żadnych faktów. Nikt z odrobiną doświadczenia lub wykształcenia w tej dziedzinie nigdy nie wymyślił (co widziałem) i akredytował twierdzenia. Olej wężowy.

Chcesz poprawić wydajność? Kup lepsze urządzenie. Tylko lepszy sprzęt może oznaczać lepszą wydajność. Możesz oczywiście zoptymalizować system, ale to nie robi tego, tylko przesuwa dostępną pamięć.

Oto zestawienie sposobu zarządzania pamięcią w systemie OS X ( dzięki uprzejmości Apple ):

Wolna pamięć

To nie jest używana pamięć RAM.

Przewodowa pamięć

Informacji w tej pamięci nie można przenieść na dysk twardy, dlatego musi pozostać w pamięci RAM. Ilość pamięci przewodowej zależy od używanych aplikacji.

Pamięć aktywna

Ta informacja jest obecnie w pamięci i była ostatnio używana.

Nieaktywna pamięć

Ta informacja w pamięci nie jest aktywnie wykorzystywana, ale została ostatnio wykorzystana.

Na przykład, jeśli korzystasz z Mail, a następnie go opuszczasz, pamięć RAM, z której korzystał Mail, jest oznaczana jako pamięć nieaktywna. Ta nieaktywna pamięć jest dostępna do użycia przez inną aplikację, podobnie jak Wolna pamięć. Jeśli jednak otworzysz Maila, zanim jego nieaktywna pamięć zostanie użyta przez inną aplikację, Mail otworzy się szybciej, ponieważ jego nieaktywna pamięć jest konwertowana na pamięć aktywną , zamiast ładowania poczty z wolniejszego dysku twardego.

Teraz, nawet przy podstawowym zrozumieniu zarządzania pamięcią w systemie Apple, powiedz mi, czy uważasz, że „zwolnienie” pamięci nieaktywnej jest przydatne? Jest dostępny dla każdej aplikacji, która o to poprosi, a jeśli ta sama aplikacja chce go ponownie złapać, uzyskuje przyspieszenie. Oczywiście nie jest to takie proste, ale zniszczenie nieaktywnej pamięci i przeniesienie jej do wolnej pamięci nie powoduje zwiększenia wydajności. W końcu jak to możliwe? Dobry system powinien gromadzić całą pamięć i przydzielać ją potrzebującym. Wolna pamięć to zmarnowana pamięć, ponieważ z definicji nie jest używana. Jeśli masz 8 GB pamięci RAM i przez cały czas utrzymujesz 4 GB wolnego miejsca, masz system z 4 GB pamięci.

Nieaktywna pamięć w OS X jest inteligentnie przydzielana. Zmienię melodię, gdy zobaczę prawidłowe i wiarygodne dane, które twierdzą inaczej. I szczerze mówiąc, jeśli nic innego, czy myślisz, że jakaś aplikacja innej firmy znalazła świętego graala zarządzania pamięcią, który przez cały czas wymykał się światowej klasy inżynierom Apple (nie wspominając o tysiącach współpracujących programistów UNIX z otwartym oprogramowaniem)? Tak jak powiedziałem, olej z węża.


źródło
Uwaga: aplikacja jest w szczególności OS X, a nie iOS, ale podoba mi się odpowiedź.
Nicholas Smith
@NicholasSmith iOS zarządza pamięcią w bardzo podobny sposób jak OS X. Jego struktura plików jest również identyczna, podobnie jak architektura jądra. W przypadku takich funkcji niskiego poziomu możesz mówić o wymiennych systemach iOS i OS X (oczywiście iOS jest dostosowany do działania w łuku ARM7, ale dla naszych celów i celów nie musimy się o to martwić), ale to nie jest temat i ja zredagowałem moją odpowiedź, aby lepiej skupić się na pytaniu PO. Dzięki. Nie wiem, dlaczego mam tam iOS ... muszę nauczyć się lepiej czytać.
podobieństwa sprawiają, że mi się podobają, łatwiej zobaczyć, jak OS X radzi sobie w warunkach ograniczonej pamięci w iOS.
Nicholas Smith
@NicholasSmith to dobry punkt i powinien dodać dodatkowe wsparcie, że wszystkie te aplikacje do zarządzania pamięcią (iOS i OS X) absolutnie nic nie robią (szkoda, że ​​Apple je zatwierdza; przynajmniej wydają się „nieuczciwe”).
Dlaczego mój Mac wolałby zamieniać się jak szalony, mimo że ponad 40% mojej pamięci jest „nieaktywne”
Alexander - Przywróć Monikę
6

Zainstalowane i przetestowane, uruchamiają polecenie czyszczenia i zwalniają nieaktywną pamięć. To nie jest w 100% olej wężowy, mogą zdarzyć się sytuacje, w których OS X nie zwolni właściwie nieaktywnego i zacznie uderzać w plik wymiany dysku (powodując uderzenie wydajności we / wy), ale jest dość bezużyteczny dla większości użytkowników.

Chociaż jeśli zarabiają 0,99 USD za zawijanie polecenia na pasku menu, naprawdę muszę uzyskać licencję programisty Mac.

Nicholas Smith
źródło