Problemlösungen beim Speichermanagement (2)

Lesezeit
4 Minuten
Bis jetzt gelesen

Problemlösungen beim Speichermanagement (2)

21.02.2011 - 08:30
Veröffentlicht in:

Im ersten Teil der Workshopserie sind wir auf häufige Probleme mit der Pagefile eingegangen, haben uns mit dem Speichermanagements über die Registry beschäftigt und haben Tipps gegeben, wie mit einer fragmentierten Pagefile zu verfahren ist. In der zweiten Folge erklären wir, wie Sie einen Teil des Arbeitsspeichers für für I/O-Vorgänge reservieren und das Cache-Verhalten von Windows anpassen.

Speicherreservierung für I/O-Vorgänge
Wertname: IoPageLockLimit
Schlüssel: Memory Management
Werttyp: REG_DWORD
Bereich: Größe in KBytes (definitiv nicht in Bytes, wie in manchen Dokumentationen beschrieben!). Per Default ist der Wert bei XP/Vista/Server 2003 nicht sichtbar und muss per Hand oder über ein Tuningtool angelegt werden. Bei Windows NT und Windows 2000 (Client und Server) wird der Wert hingegen angezeigt.
Standard: 0 (512 KByte)

Dies ist eine bereits unter Windows 2000 umstrittene Einstellung, welche besagt, wie viel Speicher das System für Ein- und Ausgabeoperationen reservieren soll. Unabhängig vom installierten Arbeitsspeicher und Einsatzgebiet eines Rechners lautet die Default-Einstellung immer "0". Dies ist eine starke Performancebremse und nur für ältere Client-Systeme mit 256 bis 384 MByte RAM sinnvoll. Sollten Sie über mehr Speicher verfügen oder Ihren Rechner als Server einsetzen, empfiehlt sich ein Vergrößern dieses Wertes, wobei die Eingaben in KByte erfolgen.

Eine konkrete Empfehlung für oder wider das Setzen des Wertes ist schwer zu vermitteln. In einigen Fällen kann das Setzen dieses Wertes zu nicht nachvollziehbaren Fehlermeldungen führen. Andererseits versuchen alle "besseren" Tuningtools gerade hier eine Modifikation vorzunehmen. Um Ihnen die Entscheidung zu erleichtern, haben wir auf den folgenden Seiten die Funktionalität und die Aufgaben dieses Wertes genauer durchleuchtet. Daraus können Sie ersehen, wann und wie ein Ändern sinnvoll vorgenommen werden kann und wann nicht.

Das Berechnen der einzusetzenden Werte
Wie berechnet sich jedoch die sinnvolle Modifikation des Wertes "IoPageLockLimit"? Hier müssen wir etwas ausholen und erst einmal erklären, wie sich dieser Wert zusammensetzt: Der Default-Wert 0 (512 KByte) spiegelt ein System mit den mindestens erforderlichen 16 MByte RAM wieder. Als Maximalwert kann der Wert 64 MByte annehmen (in KByte umzurechnen).

Wie kommen diese 64 MByte zustande? Die Antwort darauf ist recht einfach: Windows verwaltet (sofern nicht anders in der Boot.Ini definiert) maximal vier GByte RAM. Davon entfallen zwei GByte auf den Kernel-Mode und zwei GByte auf den User-Mode. Dabei laufen die meisten I/O-Operationen im Kernel-Mode ab, da hier die meisten dafür vorgesehenen Treiber geladen werden. Zu den Diensten/Treibern im Bereich I/O zählen alle Grafikkarten-, Netzwerkkarten-, SCSI- und Festplattentreiber sowie alle CD-ROM- und DVD-Treiber, USB-, serielle und parallele Schnittstellen, Sound- und TV-Karten et cetera. Mit einer simplen Dreisatzrechnung lässt sich Tabelle 1 aufstellen:

 

Um sich für einen bestimmten Wert zu entscheiden, muss bekannt sein, wie viel MByte der Systemkernel verwendet. Hier hilft der Taskmanager weiter, da dieser Ihnen in der unteren rechten Ecke (links unten bei Vista) die vom System verwendeten Speichergrößen des Kernels als Gesamtwert angibt.

In der Regel dürfte dabei jedes Windows über 46 MByte "Kernelbedarf" liegen. Somit ist eine Anpassung des Default-Wertes auf mindestens 1.024 KByte immer sinnvoll und notwendig. Sie können natürlich auch anhand Tabelle 1 versuchen, krumme Werte zu errechnen und in die Registry einzutragen (zum Beispiel 1.536 KByte bei 48 MByte Speicherbedarf des Kernels), dieses ist in der Regel jedoch wenig sinnvoll, runden Sie einfach auf den nächst höheren Wert auf.

Da die Windows-Serverfamilien fast immer bei über 46 MByte Kernel-Speicher liegen, sollte also in der Registry anstelle des Default-Wertes immer mindestens 1.024 als Eintrag (Wertangabe für 32 MByte Kernel-Speicher) zu finden sein. Ein Erhöhen des Wertes ist also immer sinnvoll, Sie sollten es jedoch nicht übertreiben und gleich die vollen 64 MByte (in KByte umgerechnet) eintragen, da dieses selten zutreffen wird. Der hier eingesetzte Wert "fehlt" später (nach einem zwingend erforderlichen Neustart) dem verfügbaren Arbeitsspeicher.

Auswirkungen beim Ändern des Wertes
Sie können jedoch den Wert über das errechnete Maß hinaus sinnvoll anheben (circa verdoppeln, in einigen Fällen sogar verdreifachen), insbesondere für File- und Printserver oder Terminal Services. Hier könnten Sie durchaus bei einer Kernelbelegung von rund 72 MByte den Wert für IoPageLockLimit von dem errechneten und aufgerundeten Wert von 2.048 KByte (Wertangabe für 64 MByte Kernel-Speicher) auf 4.096 KByte (Wertangabe für 128 MByte Kernel-Speicher) oder sogar auf 8.192 KByte (Wertangabe für 256 MByte Kernel-Speicher) erhöhen, da besonders Platten und netzwerkintensive I/O-Operationen davon spür- und messbar profitieren.

Als Folge dieser Maßnahme verringert sich deutlich die Häufigkeit von Netzwerkverbindungsfehlern, IP-gesteuerte Drucker werden "schneller gefunden" und angesteuert (der Ausdruck wirkt sichtbar "beschleunigt"), die Antwortzeiten des Rechners im Netz gewinnen an Geschwindigkeit (besonders bei installiertem DDNS) und auch verschiedene Browserdienste (ob mit oder ohne ADS-Anbindung) nutzen den erhöhten I/O-Wert als Zwischencache, ohne dass der Administrator andere Bereiche der Registry explizit manuell anpassen müsste. So gesehenen ist dieser viel zu häufig verkannte Bereich der Registry-Anpassung durchaus mit einem sicht- und messbaren Mehrwert verbunden.

Zu erwartender Performancegewinn
Je nach Einsatzgebiet eines Servers ist eine Steigerung der allgemeinen I/O-Performance (beim Arbeiten an der Konsole spüren Sie allerdings wenig davon) um bis zu 120 Prozent messbar, in besonderen Fällen sogar bis zu 200 Prozent (Printserver). Bei einer "Workstation" profitieren lokale Applikationen (MS Office) kaum messbar von dem erhöhten I/O-Durchsatz, sodass hier (bei Windows XP Professional und/oder Vista) das Anpassen der Werte immer abhängig von der Einsatzart des Rechners ist.

Zusammenfassung zu IoPageLockLimit
Es ist bekannt, dass sich der Speicherbedarf für den User-Mode in Windows (Serverfamilie) über den Schalter "/3GByte" in der Boot.Ini auf Kosten des Kernel-Mode verlagern lässt, sodass der Kernel-Mode nur noch maximal ein GByte RAM belegen kann. In diesem Falle gilt die weiter oben beschrieben Tabelle dennoch, endet jedoch bei 32 MByte für IoPageLockLimit.

Auch bei diesem Wert gilt: erst ausprobieren und alle relevanten Daten sichern, dann erst produktiv übertragen. In der Regel kann das Ändern des Wertes jedoch keinen bleibenden oder nicht mehr rückgängig zu machenden Schaden verursachen, sodass Sie es auf jeden Fall probieren sollten.

Bitte beachten Sie, dass gerade beim Ändern dieses Wertes unter XP (ab SP1) – wie auch unter Vista – nach einem Update oder manchmal auch nach einem Neustart andere, von Ihnen nicht eingetragene Werte annehmen kann. Auch gibt es etliche Tools, welche an dieser Stelle Werte eintragen, welche nicht in Tabelle 1 zu finden sind und lediglich "Erfahrungswerte" des Toolherstellers wiedergeben. Die damit gewonnen Ergebnisse sind bisweilen recht widersprüchlich, hierbei handeln Sie auf eigene Gefahr! Eine probate Möglichkeit, das System zu bewegen, einen festen Wert langfristig zu behalten, ist das Wegnehmen der Schreibberechtigungen des Systems mit Hinblick auf oben genannten Schlüssel.


 

                                                Seite 1 von 2                     Nächste Seite>>

 

 

 

 


ln/jp/Nikolay Taschkow
 

 

 

 

Ähnliche Beiträge

Im Test: Heimdal Patch & Asset Management

Ein zeitgemäßes Patchmanagement darf sich angesichts der vielfältigen Bedrohungen nicht allein auf die Microsoft-Produkte konzentrieren, sondern muss sich auch verbreiteten Drittanbieteranwendungen widmen. Der dänische Anbieter Heimdal Security geht noch einen Schritt weiter und hat eine ganze Suite zum Schutz vor Cyberbedrohungen im Programm. Mit dem Fokus auf das Patchen haben wir uns das cloudbasierte Angebot genauer angesehen.

Device-Management mit Microsoft Intune und Office 365 - Zwei Wege, ein Ziel

Um Geräte im Netzwerk oder mobile Geräte, die auf das Netzwerk zugreifen, zu verwalten, bietet sich für Unternehmen entweder Office 365 Mobile Device Management oder Microsoft Intune an. Ein Unterschied zwischen den beiden Lösungen besteht vor allem im Preis. Während das Device-Management zu vielen Abonnements in Office 365 gehört, muss Microsoft Intune gesondert abonniert werden. In diesem Beitrag stellen wir beide Ansätze vor.