Soll keine Werbung sein, ist einfach nur interessant....
Zitat:
Ein Wort zum Speichermanagement von Microsoft WindowsDie Betriebssysteme Windows95, Windows98 und WindowsNT von Microsoft haben alle eine ausgeklügelte Speicherverwaltung. Es ist jedem Programm möglich, mehr RAM zu benutzen, als der PC in Wirklichkeit hat. Dies ist deshalb wichtig, damit jeder Benutzer auch mehrere Programme gleichzeitig aufrufen kann. Die Bereiche des Arbeitsspeichers, die im Moment nicht genutzt werden, werden in die Auslagerungsdatei verlagert. So hat jedes Programm zugriff auf die Ressourcen, die es auch benötigt.
Ein anderer wichtiger Aspekt ist, daß Windows teile der Festplatte im Arbeitsspeicher zwischenspeichert (Cache). Das beschleunigt den Zugriff auf die Festplatte ungemein, da eine Festplatte im Vergleich zum Arbeitsspeicher immer noch sehr langsam ist. Natürlich ist es nicht möglich, die gesamte Festplatte im Arbeitsspeicher zu halten, aber Windows versucht herauszufinden, welche Bereiche der Festplatte der Benutzer benötigt und versucht dann diese für schnellen Zugriff bereitzuhalten.
Was geht schief
Es gibt vier Dinge, die schiefgehen können und dazu führen, daß das Speichermanagement versagt:
· Programmfehler
Heute haben leider viele Programme einige Fehler. Auch das Betriebssystem selber ist nicht vor Fehlern sicher. Viele Leute glauben sogar, daß es unmöglich ist, fehlerfreie Programme zu schreiben. Die meisten dieser Fehler sind allerdings kein Problem. Der Benutzer bekommt Sie nie zu sehen. Allerdings kann es vorkommen, daß bei einem solchen Fehler ein kleiner Bereich des Arbeitsspeichers belegt bleibt, obwohl das Programm diesen Bereich nicht mehr benötigt. Dies ist deshalb schade, da Arbeitsspeicher eine wertvolle Ressource ist, die eigentlich nicht verschwendet werden sollte. Leider hat Windows keine Chance diese Fehler zu erkennen und muß deshalb weiterhin annehmen, daß dieser Bereich des Arbeitsspeichers benötigt wird.
· Große Bibliotheken
Viele Programme nutzen große Bibliotheken (DLL). Das macht es für Programmierer sehr leicht, tolle Programme zu schreiben, da sie nicht jedesmal das Rad neu erfinden müssen. Das Programm FreeMem nutzt auch solche Bibliotheken. Allerdings sind einige dieser Bibliotheken sehr groß und benötigen einen guten Anteil vom Arbeitsspeicher. Alle OLE Bibliotheken fallen zum Beispiel in diese Kategorie. Dieser Speicher wird dann belegt, obwohl er vielleicht gar nicht benötigt wird. Manchmal wird eine Bibliothek geladen, weil das Programm 2 oder 3 Funktionen daraus benötigt. Die Bibliothek bietet aber 100 Funktionen an und belegt auch dementsprechend Arbeitsspeicher.
· Festplatten Cache
Wie oben schon beschrieben, ist der Festplatten Cache eine wichtige Sache. Ohne wäre der PC unglaublich langsam. Leider sind alle Windows Betriebssysteme nicht wirklich intelligent genug, herauszufinden, welche Dateien auf der Festplatte wirklich benötigt werden und welche nicht. Wenn eine Datei erst einmal im Arbeitsspeicher ist, weil ein Programm die Datei benötigt hat, wird die Datei für eine ganze weile im Arbeitsspeicher gehalten, obwohl das Programm diese nicht mehr benötigt. Insbesondere nach dem Kopieren mehrerer Dateien, sind oft große Teile des Arbeitsspeichers mit diesen Dateien gefüllt, obwohl klar ist, daß man gleich irgendwo anders weiterarbeitet. Nehmen Sie einmal an, daß Ihr PC 32MB Arbeitsspeicher besitzt und ca. 20 MB davon benutzt werden, um Dateien zwischenzuspeichern (Cache). Das führt dazu, daß nur noch 12 MB wirklich zur Verfügung stehen. Ist das der Grund, warum viele Leute 32 MB kaufen?
· Hintergrundprogramme
Windows ist in der Lage, mehrere Programme gleichzeitig auszuführen. Für den Benutzer ist das eine tolle Sache. Es ermöglicht sogar, daß einige Programme dauerhaft im Hintergrund arbeiten und dabei einen sinnvollen Service anbieten. FreeMem ist zum Beispiel ein solches Programm. Allerdings gibt es auch Programme, die nicht wirklich eine sinnvolle Aufgabe erfüllen. Diese Programme belegen dann eigentlich nur Arbeitsspeicher. Es ist wichtig zu erkennen, daß FreeMem dafür sorgt, daß solche Programme nur noch sehr wenig Arbeitsspeicher belegen. Ein solches Programm ist zum Beispiel ?Microsoft Office Schnellstart?. Dieses lädt einfach nur eine Reihe von Bibliotheken und macht ansonsten gar nichts. Eigentlich sollte das dazu führen, daß andere Office-Programme schneller starten sollen, aber der Effekt geht völlig verloren, wenn die Bibliotheken erst einmal in die Auslagerungsdatei verschoben sind und das passiert meistens schon während der PC startet.
Was sollte man tun
Es gibt einen einfachen Weg, die oben beschriebenen Probleme zu lösen. Einfach mal ein großes Programm aufrufen. Dieses wird dann große Bereiche des Arbeitsspeichers belegen und die unbenötigten Bereiche in die Auslagerungsdatei verschieben. Alle unbenötigten Bereiche befinden sich dann auf der Festplatte und verschwenden nicht mehr wertvollen Arbeitsspeicher. Allerdings ist nicht sichergestellt, daß das Schließen des großen Programms dazu führt, daß der Arbeitsspeicher auch wirklich freigegeben wird.
FreeMem Standard
FreeMem Standard ist das erste Programm, welches die oben beschriebenen Probleme wirklich löst. Durch das Belegen einer großen Menge Arbeitsspeichers, werden alle unbenötigten Bereiche in die Auslagerungsdatei verschoben. FreeMem Standard gibt die belegten Bereiche dann sofort an Windows zurück. Dies garantiert, daß die wertvolle Ressource Arbeitsspeicher in ausreichenden Mengen zur Verfügung steht. Die folgenden Probleme werden gelöst:
- Verschwendeter Arbeitsspeicher wird auf die Festplatte verschoben
- Der Festplatten Cache wird minimiert
- Große Bibliotheken werden auf die Festplatte verschoben
FreeMem Professional
FreeMem Professional ist im Prinzip das gleiche Programm wie FreeMem Standard, bietet aber eine ganze Reihe von weiteren Funktionen, die sicherstellen, daß der Arbeitsspeicher optimal genutzt wird und niemals verschwendet wird. FreeMem Professional kann Arbeitsspeicher freigeben, wenn alles belegt ist, oder FreeMem Professional kann in regelmäßigen Abständen den Arbeitsspeicher freigeben, um das Speichermanagement von Windows daran zu erinnern, seine Arbeit zu tun. Diese Hilfe enthält noch einen etwas detaillierteren Vergleich zwischen FreeMem Standard und FreeMem Professional.
Wie FreeMem Arbeitet
Wenn man eine Menge Arbeitsspeicher auswählt (z. B. 12 MB) und dann auf ?Belegen und Freigeben? klickt, fängt FreeMem an zu arbeiten. Die ausgewählte Menge an Arbeitsspeicher wird dann belegt und mit irgendwelchen Daten gefüllt. Das ist notwendig, da Windows intelligent genug ist, alle Belegungen zu ignorieren, die niemals genutzt werden. FreeMem prüft dann, ob der gewünschte Erfolg erzielt worden ist. Es kann passieren, daß Windows nicht die richtigen Bereiche des Arbeitsspeichers auslagert und somit nicht die gewünschte Menge an Arbeitsspeicher freigegeben wird. Falls dies der Fall ist, wiederholt FreeMem die Operation so oft, bis der Erfolg sichergestellt ist. Allerdings ist es auch möglich, daß das gewünschte Ziel gar nicht erreicht wird. Hintergrundprogramme können dies verhindern. Um jetzt zu verhindern, daß FreeMem unendlich lange arbeitet und den PC lahmlegt, können Sie angeben, wie oft FreeMem allerhöchstens versuchen soll, den Arbeitsspeicher freizugeben. In der Titelzeile des FreeMem Fensters können Sie sehen, wie oft FreeMem es schon versucht hat. Mehr als 20 Wiederholungen sind nicht erlaubt.
[Diese Nachricht wurde von Tricksucher am 10. Jan. 2004 editiert.]