JustPaste.it

Dlaczego opłaca się używać aplikacji zajmujących się zarządzaniem pamięcią RAM

Jak wiemy dane z pamięci RAM odczytują się kilkukrotnie szybciej niż z dysku (pliku wymiany). Gdy otwieramy nowy program, system operacyjny stara się znaleźć dla niego wolne miejsce w pamięci szybkiego dostępu (czyli w RAM'ie), a gdy go tam nie znajdzie, umieszcza aplikacje w pliku wymiany. Zasada działania programu do "czyszczenia" (ew. optymalizacji lub defragmentacji) RAM'u jest bardzo prosta. W skrócie można opisać ją w trzech etapach:
  1. Etap I - program kopiuje fragment pamięci RAM o wybranej wielkości do pliku stronicowania znajdującego się na dysku
  2. Etap II - program czyści (zeruje) skopiowany fragment w pamięci RAM
  3. Etap III - na tak przygotowany fragment pamięci RAM system kopiuje tylko potrzebne mu w tej chwili dane (np. biblioteki, fragmenty plików wykonywalnych .exe), nieużywane pozostawiając w pliku stronicowania.
Więc czy na pewno warto używać tego typu aplikacji i dlaczego?

Moja odpowiedź brzmi tak. Spotkałem się w pewnej książce dot. optymalizacji pracy z Windows XP z opinią ,że Microsoft zaopatrzył swój produkt w wydajny system zarządzania pamięcią, tak że to co jest mu potrzebne trzyma w pamięci, a to czego nie używa usuwa z niej. Owszem, jest to w pewnym sensie prawda, ale nie cała. Osoba pisząca tą książkę nie wzięła pod uwagę kilku czynników. W mojej argumentacji mogą paść niezrozumiałe dla części osób pojęcia, jednak postaram się wytłumaczyć to dosyć jasno.
Otóż system podczas uruchamiania jakiegoś programu (pliki .exe), kopiuje całą jego zawartość do pamięci RAM. W całym tym pliku znajduje się jego część, której nigdy nie będziemy używać (są to np. rzadko otwierane okna dialogowe - m.in.. zaawansowanej konfiguracji - lub bitmapy). Te dane zalegają w pamięci RAM, a przecież równie dobrze mogłyby zalegać w pliku stronicowania na naszym dysku (zwiększenie rozmiaru pliku stronicowania nie kosztuje przecież tyle co dokupienie nowej kości RAM).
Drugi mój argument przemawiający za używaniem narzędzi tego typu to fragmentacja pamięci RAM. Programy podczas swojej normalnej pracy rezerwują sobie często jakiś kawałek pamięci (często są to pokaźne rozmiary kilku MB). Ponieważ system musi gdzieś to wszystko upchnąć, często dane są porozrzucane (nie są ułożone po kolei), i ich odczyt trwa dłużej. Natomiast gdy system po "czyszczeniu" RAM'u przez Fast Ram Cleaner'a kopiuje tylko potrzebne mu dane z pliku wymiany, kopiuje je do pamięci po kolei.

Czy wszystkim na pewno to się przyda?

Nie, programów zajmujących się optymalizacją nie ma sensu używać gdy mamy komputer z dużą ilością RAM'u, i gdy często restartujemy naszą "maszynę". Jednak gdy sprzęt pracuje non-stop cały dzień, takie czyszczenie jest dla niego jak "ożywczy prysznic". Pozwala usunąć wszelkie śmieci z pamięci i ruszyć komputerowi do pracy z wolnym miejscem w pamięci RAM dla nowych danych. Naszej pamięci szczególnie szkodzą źle (choćby w pośpiechu) napisane aplikacje, które "nie sprzątają" po sobie. Czasami też programy świadomie niepotrzebnie zajmują zasoby naszego komputera. Przykładem tego, może być pakiet Office, który przy starcie systemu operacyjnego ładuje do pamięci swoje biblioteki, aby potem jego uruchamianie trwało krócej. Jeśli jednak rzadko korzystamy, pamięć jest marnotrawiona.

Słowniczek

Tutaj przytoczę pojęcia, które pomogą w zrozumieniu treści artykułu (jeżeli dalej nie rozumiesz jakiegoś wyrazu poszukaj w Googlach):

Pamięć RAM - pamięć, która może być odczytywana lub zapisywana przez komputer lub inne urządzenia. Informacje przechowywane w pamięci RAM są tracone po wyłączeniu komputera.

Pamięć Wirtualna - tymczasowy magazyn używany przez komputer do uruchamiania programów, które potrzebują pamięci większej niż pamięć RAM komputera. Na przykład programy mogą mieć dostęp do 4 gigabajtów pamięci wirtualnej na dysku twardym komputera, nawet jeżeli komputer jest wyposażony tylko w 32 megabajty pamięci RAM. Dane programu, które nie mogą być umieszczone w danej chwili w pamięci komputera, są zapisywane w plikach stronicowania.

Plik Stronnicowania (wymiany, swap) - plik ukryty na dysku twardym (może się nazywać np. pagefile.sys), używany przez system Windows do przechowywania części plików programów i danych, które są zbyt duże i nie mogą być umieszczone w całości w pamięci. Plik stronicowania i pamięć fizyczna (lub pamięć RAM) tworzą pamięć wirtualną. System Windows przenosi dane z pliku stronicowania do pamięci zgodnie z potrzebami oraz z pamięci do pliku stronicowania, aby zwolnić miejsce dla nowych danych. Plik stronicowania jest również nazywany plikiem wymiany.

Licencja: Creative Commons - bez utworów zależnych