W jaki sposób narzędzie do darmowej pamięci RAM zwalnia pamięć RAM?

14

Czy usuwa pamięć RAM używaną przez programy lub przenosi ją do pliku stronicowania na dysku twardym? A może po prostu czyści nieadresowaną pamięć RAM?

CPX
źródło

Odpowiedzi:

18

Wolne pamięci RAM zmuszają inne programy do zamiany większości stron na dysk (często przez przydzielanie dużej ilości pamięci). Jeśli te programy nie potrzebują tych stron przez jakiś czas (na przykład, jeśli są zminimalizowanym oknem i również nie robią nic), pozostawi to więcej pamięci RAM. Zauważ, że generalnie nie masz kontroli nad tym, co jest wypychane na dysk - po prostu coś jest.

Problem polega na tym, że pozostawienie wolnej pamięci RAM samo w sobie nie jest w ogóle przydatne. Gdyby inny działający program potrzebował tej pamięci RAM, stronicowanie odbyłoby się w tym momencie, a nie wtedy, gdy uruchomiłeś ram free'era. A gdy tylko chcesz, aby program, który został wypchnięty na dysk, by coś zrobił (na przykład jeśli budzi się co 5 minut, aby sprawdzić swój status na Facebooku), po prostu zmieni się, aby to zrobić.

Jeśli naprawdę masz problem z RAMem, masz kilka opcji:

1) Uzyskaj więcej pamięci RAM. Prosty, bezpośredni, prawdopodobnie drogi lub (w zależności od konfiguracji systemu operacyjnego i sprzętu) niemożliwy.

2) Uruchom mniej programów. Im mniej rzeczy jest uruchomionych, tym więcej pamięci RAM jest dostępne dla rzeczy, które są uruchomione. Obejmuje to również wybieranie narzędzi mniej zasobochłonnych. Na przykład, jeśli pozostawiasz otwarte narzędzie czatu przez cały czas, wybierz takie, które ma mały ślad pamięci zamiast tego, który ma wszystkie krzykliwe funkcje.

3) Uzyskaj szybsze dyski. To w rzeczywistości nie daje ci więcej pamięci RAM (oczywiście), ale jeśli użyjesz szybszych dysków do plików stronicowania, wtedy czasy związane z zamianą stron do i z pamięci będą niższe, a zatem mniej zauważalne.

Nie ma innych prawdziwych opcji.

Michael Kohne
źródło
„pozostawienie wolnej pamięci RAM samo w sobie nie jest w ogóle przydatne”. Ale zapobiega to narzekaniu na to, jak Windows Vista / 7 pozostawia minimalną ilość wolnej pamięci RAM, ponieważ są to wstępnie pobrane informacje, do których użytkownik często uzyskuje dostęp.
Nick T
@Nick Ludzie narzekają na to, że Win7 lub Vista nie mają wolnej pamięci RAM na komputerze z dużą ilością zainstalowanej pamięci RAM, ponieważ, jak mówisz, pobieranie z systemu Windows jest problemem edukacyjnym użytkownika. Należy temu przeciwdziałać argumentem, że przydzielenie, a następnie zwolnienie pamięci, z której korzystał moduł wstępny, spowalnia system, ponieważ wszystkie wstępnie pobrane dane zostaną usunięte bez żadnego powodu i dlatego nie będą buforowane po uruchomieniu nowej aplikacji i oznacza również, że moduł pobierania wstępnego marnuje czas i zasoby na uzupełnianie nowo opróżnionej pamięci RAM.
Pamięć
Windows używa również pamięci RAM jako pamięci podręcznej plików, ponieważ przyspiesza to SKUTECZNĄ prędkość dostępu do dysku. Zobaczysz także wszelkiego rodzaju nieuczciwe marudzenie na ten temat. W wielu systemach Windows przyczyną tak małej ilości pamięci RAM jest zazwyczaj to, że ogromne ilości są używane jako pamięć podręczna „RAM-disk”. Ilość użyta do tego jest dynamiczna, ponieważ programy potrzebują więcej pamięci, ilość pamięci podręcznej plików jest zmniejszona. Ludzie, którzy napisali system operacyjny, nie byli tak ignorantami, jak niektórzy chcieliby, abyśmy myśleli.
szybko_now
11

Zasadniczo to, co robią pamięci RAM, polega na tym, że rezerwują duże ilości pamięci RAM, zmuszając system Windows do zamiany innych programów na dysk, a następnie zwalniając zarezerwowaną pamięć RAM. Mogą to być różne strategie, ale nie jestem zaskoczony elementami wewnętrznymi.

Sugeruję, aby uzyskać więcej pamięci RAM, czy to możliwe, ponieważ nie będzie przyjść czas, kiedy program outswapped musi dostać swoją część pamięci tyłu ...

Jawa
źródło
System Windows wysyła komunikat „Low_MEMORY”, w którym prosi wszystkie aplikacje o zwolnienie nieużywanych pamięci podręcznych. Pamięć podręczna serwera SQL i plików zostanie wyczyszczona, dzięki czemu uzyskasz dodatkowe wolne miejsce.
Barfieldmv
8

Próba oszukania systemu operacyjnego sprawia wrażenie, że może coś się robi. Takie podejście jest raczej przypadkiem okradzenia Piotra, aby zapłacić Pawłowi.

Lub ... jeśli spróbujesz dostać coś za darmo na dłuższą metę, dostaniesz ... nic.

Innymi słowy, uważam takie rzeczy za oszustwo. Jeśli brakuje Ci pamięci RAM, najlepszym długoterminowym rozwiązaniem technicznym jest zakup więcej.

szybko
źródło
2

System Windows wysyła komunikat „LOW_MEMORY”, w którym prosi wszystkie aplikacje o zwolnienie nieużywanych danych. Pamięć podręczna serwera SQL i pamięci podręcznej plików zostanie wyczyszczona, dzięki czemu uzyskasz dużo dodatkowej wolnej przestrzeni. Spowoduje to również wyczyszczenie pamięci podręcznej plików systemu Windows, która może zająć 1 gigabajt miejsca podczas uruchamiania.

Przydzielenie dużej części pamięci jest łatwym sposobem na wywołanie komunikatu LOW MEMORY, ale mogą istnieć inteligentniejsze systemy.

Barfieldmv
źródło
2

Wraz z innymi odpowiedziami starsze narzędzia, takie jak RAMDoubler, służyły do ​​kompresji pamięci RAM w pamięci, z oczywistym kosztem procesora przy dostępie. Myślę, że nikt już tego nie robi z powodu tych kosztów dostępu.

EDYCJA: nikt ... poza Apple Wszystko, co stare, znów jest nowe. Mówiąc dokładniej, rozpiętość między szybkością procesora a szybkością technologii pamięci (szczególnie dysku) jest tak duża, że ​​jest to teraz lepsza opcja, szczególnie w przypadku kosztu energii elektrycznej (czytaj: baterii) za uderzenie dysku.

Rich Homolka
źródło
1
Kompresja pamięci tak naprawdę nigdy nie przerosła złej reputacji, którą otrzymał od oszustwa SoftRAM. RAMDoubler i MagnaRam były legalnymi produktami. Technologia wciąż istnieje. IBM opracował sprzętową kompresję pamięci opartą na MTX i oprogramowaniu AME, a VMWare używa kompresji pamięci w większości swoich produktów.
Kenneth Cochran
1
Jest to rozsądny projekt i może w pewnym momencie wejść do jądra: lwn.net/Articles/397574
Tobu
1

Zwykle po prostu zmuszają system do korzystania z większej liczby plików stronicowania i mniej pamięci RAM. Ponieważ pamięć RAM jest szybsza niż dysk twardy, w najgorszym przypadku nastąpi zmniejszenie prędkości. W najlepszym razie zobaczysz więcej dostępnej pamięci RAM, ale bez dodatkowej prędkości.

Mehper C. Palavuzlar
źródło