Zastanów się nad takową kwestią

Posiadasz program graficzny do zmniejszania obrazków i oprogramowanie do oblicznia curv.
Program graficzny ładuje do pamięci :
image.dll - Plik DLL, który odkodowuje obrazek
engine.gui.dll - Plik DLL, który pokazuje nam interfejs programu
13 plików systemowych, zmienne, wartości, przydział pracy procesora
Program do obliczania curv
curv.dll - Plik DLL z algorytmami obliczenia curv
engine.gui.dll - Plik DLL, który pokazuje nam interfejs programu
+3 pliki systemowe, zmienne wartości etc.
Po zamknięciu programów zostaje w pamięci za każdym razem engine z GUI (tylko przykład) i pare plików systemowych.
PROGRAM NIE DZIAŁA!, możesz już go nawet nie mieć na dysku to w jaki sposób program do czyszczenia RAM dowie się jakie pliki zostałe używane przez takowe programy. Tutaj mamy błędne myślenie, pliki nie zostają tylko zarezerwowana pamięc dla programu, która jest "pełna". Wystarczy uruchomić jakiś program to on sobie ją zajmie spokojnie.
Chodzi tutaj o to, że ta zarezerwowana pamięc może nie być widziana przez niektóre programy i korzystają z tej "wolnej" pamięci do swoich operacji In/Out.
Tak na prawde to wszystko zależy od tego z jak mądrych programów korzystamy, takie czyszczenie to krótkotrwały proces bo "zepsute" programy dalej zrobią swoje i nie wykryją "pełnej" pamięci jako "wolną"

. Rozumiesz