Windows Server 2003 überwachen: Der Task-Manager

Hintergrundinformation zur Priorität

Windows Server 2003 bietet eine schnelle, zuverlässige Multitasking-Umgebung, die präemptives Multitasking und die Ausführung von Applikationen in getrennten Adressräumen unterstützt. Beim präemptiven Multitasking kontrolliert das Betriebssystem, welche Applikation wie lange Zugriff auf die CPU hat. Das Betriebssystem kann die Ressourcen jederzeit einer anderen Applikation mit höherer Priorität übertragen.

Dies ermöglicht es dem Betriebssystem, einer fehlerhaften, schlecht programmierten Applikation die Ressourcen zu entziehen, die sie grundlos in Beschlag nimmt.

Windows Server 2003 unterstützt mehrere Ausführungseinheiten für einen einzelnen Prozess, was man Multithreading nennt. In einer Multithreading-Umgebung kann ein Prozess in mehrere Unter-Tasks, Threads genannt, aufgeteilt werden, deren Ausführung dann unabhängig vom Hauptprozess ist. So kann ein Programm mehrere Tasks gleichzeitig statt nacheinander ausführen. Wenn Sie zum Beispiel Microsoft Outlook verwenden, können Sie Nachrichten lesen oder verfassen, während Sie Mails herunterladen. Multithreading bedeutet in der Praxis, dass ein Prozess nicht warten muss, bis ein anderer abgeschlossen ist.

Bei einem präemptiven Multitasking-System können die einzelnen Tasks nicht bestimmen, wie lange sie die Systemressourcen verwenden. Das heißt, dass irgendeine Art von Prioritätssystem notwendig ist, um sicherzustellen, dass kritische Tasks einen größeren Anteil an der Rechenzeit der CPU erhalten. Das Prioritätssystem ist Teil des Betriebssystems, aber die Tasks können dem Betriebssystem mitteilen, welche Priorität sie brauchen. Das funktioniert theoretisch ganz gut. Doch es gibt immer wieder Situationen, in denen ein System lauter Tasks hoher Priorität aufweist, die in Summe verhindern, dass die Tasks niedriger Priorität überhaupt Systemressourcen erhalten.

Windows Server 2003 verwendet ein dynamisches Prioritätssystem, das es ermöglicht, die Priorität von Tasks zu verändern, um sich konstant verändernde Systemkonditionen zu reflektieren. Wenn beispielsweise ein Task niedriger Priorität zu Gunsten eines Tasks hoher Priorität übergangen wird, erhöht Windows Server 2003 die Priorität des Tasks niedriger Priorität, bis er Systemressourcen erhält. Wenn ein Task hoher Priorität ein Weilchen am Ruder war, verringert Windows Server 2003 seine Priorität. Das dynamische Prioritätssystem stellt sicher, dass bestimmten Aufgaben mehr Systemressourcen zur Verfügung stehen als anderen, und dass jeder Task zumindest ein paar Ressourcen erhält.

Eine Vordergrund-Applikation wurde aktiviert, indem sie auf dem Desktop von Windows Server 2003 ausgewählt und so in den Vordergrund gebracht wurde. Alle anderen laufenden Applikationen heißen Hintergrund-Applikationen. Per Vorgabe gibt Windows Server 2003 Hintergrund-Applikationen mehr Ressourcen und eine höhere Priorität als den Vordergrund-Applikationen derselben Prioritätsklasse. Das liegt natürlich daran, dass Windows Server 2003 ein Server-Betriebssystem ist und Server normalerweise Hintergrund-Applikationen wie Dateifreigabe oder Druckdienste hosten.

Windows Server 2003 verwendet Priorität, um Rechenzeit in kleinen Paketen an Applikationen zu verteilen. Das nennt man Zeitscheibenverfahren oder Time Slicing. Windows Server 2003 teilt Vordergrund-Applikationen in schneller Folge kurze Zeitscheiben variabler Länge zu, während Hintergrund-Applikationen oder Dienste weniger häufig längere Zeitscheiben fester Größe erhalten.

Um das Vorgabeverhalten zu ändern, öffnen Sie das System in der Systemsteuerung (Bild 34). Im Reiter ERWEITERT klicken Sie auf die Schaltfläche EINSTELLUNGEN im Bereich SYSTEMLEISTUNG. Im Dialogfeld LEISTUNGSOPTIONEN klicken Sie auf den Reiter ERWEITERT, um das Verhalten des Systems einzustellen. Es gibt zwei Optionen: PROGRAMME und HINTERGRUNDDIENSTE. Vorgabe ist Hintergrunddienste, das heißt, der Server weist Applikationen, die in Hintergrundsitzungen laufen (also Mail- oder Datenbank-Servern), mehr Ressourcen zu. Das ist die empfohlene Einstellung für Server ohne Vordergrund-Applikationen.

Windows Server 2003 verwendet zur weiteren Einteilung der Rechenzeit an Applikationen verschiedene Prioritätsstufen. Prioritätsstufen sind Zahlen zwischen 0 und 31. Applikationen und unkritische Betriebssystemfunktionen erhalten Werte zwischen 0 und 15, während Echtzeitfunktionen wie der Betriebssystem-Kernel Werte zwischen 16 und 31 bekommen. Die normale Standardpriorität ist 8.