Munteres Treiben hinter den Kulissen in Windows

Eines der wertvollsten Systemwerkzeuge für die Inspektion und die Problemanalyse ist der Process Explorer von Windows-Kenner Mark Russinovich.

Mark Russinovich ist eine illustere Figur. In Spanien geboren, entwickelte er ab 1996 im eigenen Unternehmen Winternals Systemprogramme für Windows. Er schrieb Fachbücher über die Architektur von Windows und hat 2005 das Sony-Rootkit XCP entdeckt, das das Kopieren von Audio-CDs verhindern sollte und in Verruf geriet, weil es sich wie ein Virus verhielt. Heute arbeitet er in der Rolle eines «Technical Fellow» für Microsoft und er wurde auch schon als Nachfolger von Steve Ballmer gehandelt (siehe hier). Wie gross die Chancen auf den CEO-Posten sind, sei dahingestellt – die Idee dürfte vor allem dem Wunschdenken der Leute entspringen, die lieber einen Technik-Fan als einen Verkäufer an der Spitze des Unternehmens sehen würden.

Mark Russinovich hat eine Reihe von Windows-Werkzeugen entwickelt, die in einem Paket unter dem Namen Sysinternals Suite erhältlich ist, und zwar kostenlos. Eines der wichtigsten Programme aus dieser Sammlung von 67 Tools ist der Process Explorer. Er funktioniert ähnlich wie der Taskmanager von Windows, ist aber sehr viel leistungsstärker.

Alle Aktivitäten im Blick
Das Programm zeigt in einer Liste die laufenden Prozesse an – also nicht nur Anwendungen, sondern auch fensterlose, unsichtbare Programme. Zu jedem Prozess werden viele nützliche Angaben gemacht, unter anderem die folgenden Dinge:

  • Der Name des Prozesses. Er entspricht dem Namen der ausführbaren Datei im Dateisystem
  • Die Prozessnummer (die PID)
  • Der Speicherbedarf
  • Eine Beschreibung, wie Sie in den Versionsangaben ersichtlich ist
  • Der Name des Entwicklers

111020-processexplorer01.jpg
ProcessExplorer ermöglicht tiefe Einblicke ins Windows-System.

Ausserdem zeigt Process Explorer die Prozessorauslastung, Speicherbedarf, Festplattenaktivitäten, Netzwerk-Datenverkehr und Belastung des Grafikprozessors (der GPU) an.

Manche Prozesse erscheinen eingerückt unterhalb eines anderen Prozesses. Diese hierarchische Darstellung gibt wider, auf welche Weise Prozess gestartet wurde. Die Prozesse unterhalb von wininit.exe werden unabhängig vom Benutzerkonto ausgeführt und stellen auch die Anmeldung für den Benutzer bereit. Es gibt hier den Eintrag services.exe, unter dem wiederum viele Einträge erscheinen – das sind die so genannten Dienste. Das sind Programme, die auch dann laufen, wenn kein Benutzer angemeldet ist. Die Prozesse unter csrss.exe gehören zum Betriebssystem und steuern interne Aktivitäten. Alle Programme unterhalb von explorer.exe wurden über das Startmenü oder über Autostartfunktionen lanciert – hier finden sich die Anwendungsprogramme.

Über die Taste Show Lower Pane oder über View > Show Lower Pane erscheint ein zweiter Bereich, in dem die Handles aufgeführt sind, die von einem Prozess offen gehalten werden. Ein Handle ist, technisch ausgedrückt, ein Objekt im Betriebssystem, das über eine Speicheradresse angesprochen werden kann. Es gibt in der Liste verschiedene Typen von Handles: Dateien, Registry-Schlüssel, Threads und andere Dinge, die nur für Softwareentwickler interessant sind. Aufschlussreich sind natürlich die Angaben zu den Dateien und zur Registry: So lässt sich herausfinden, welcher Prozess eine Datei geöffnet hält und was für Registry-Schlüssel benutzt werden. Über die Suchfunktion kann auch nach Handles gesucht werden.

111020-processexplorer02.jpg
ProcessExplorer02.png: ProcessExplorer verrät: Wie viel Rechenaufwand generiert ein Programm? Wie viel Speicher benötigt es? Wie belastet es die Festplatte?

Flexible Farbmarkierungen
Auffällig sind die farbliche Markierung einzelner Prozesse. Grün bedeutet, dass ein Prozess gestartet wird, rot zeigt ein Prozess, der beendet wird. Dienste werden rosa gekennzeichnet und Programme, die Microsofts .Net-Framework nutzen, erscheinen gelb. Die Farbgebung kann über Options > Configure Colors angepasst werden.

Damit wird deutlich, welche Aufgaben mit Process Explorer komfortabel erledigt. Er hilft herauszufinden, welche Programme auf dem Rechner aktiv sind. Doppelklickt man auf einen Prozess, erscheint ein Dialogfenster mit fast einem Dutzend Reiter. Darüber sind allerlei technische Informationen in Erfahrung zu bringen: Wer den Prozess entwickelt hat, zu welchem Produkt er gehört und welche Dienste und Dateien er benötigt. Aufschlussreich ist der Reiter Performance: Hier ist der Speicherbedarf, die Prozessorauslastung und die Festplattenaktivitäten (bezeichnet mit I/O, was für «Input/Output» steht).

Ressourcenfresser lassen sich mit Process Explorer identifizieren. Es ist auch möglich herauszufinden, welches Programm eine grosse Netzwerklast oder übertriebene Festplattenaktivität hervorruft. Die Liste mit allen Prozessen kann je nach Aufgabe erweitert werden. Über View > Set Columns können Sie weitere Spalten einblenden, wobei mehrere Dutzend Informationsquellen zur Verfügung stehen. Wenn Sie beispielsweise herausfinden möchten, welches Programm die Festplatte malträtiert, schalten Sie im Reiter Process Disk die Optionen Reads und Writes ein. Ist zu analysieren, welcher Prozess im Hintergrund Datentransfers abhält, blenden Sie im Reiter Process Network die Optionen Receives und Sends ein. Es erscheinen dann Spalten mit den entsprechenden Angaben, nach denen Sie die Liste auch sortieren können.

Wer blockiert meine Datei?
Process Explorer zeigt auch auf, welcher Prozess eine Datei gesperrt hält. Das ist dann hilfreich, wenn die Herkunft bestimmter Dateien schleierhaft ist oder sich Dateien nicht löschen lassen und Windows nur lapidar meint, die Dateien seien «in Verwendung». Über Find > Find Handle or DLL suchen Sie nach dem Namen der Datei und erhalten umgehend den Prozess genannt, der die Datei offen hält. Über die Fadenkreuz-Taste lässt sich herausfinden, welcher Prozess hinter einem Fenster auf dem Desktop steckt. Dazu klickt man auf die Fadenkreuz-Taste, hält die Maustaste gedrückt und markiert das Objekt auf dem Desktop, worauf der dazugehörende Prozess im Fenster markiert wird. So lassen sich beispielsweise einsame Dialogboxen oder hängen gebliebene Fenster identifizieren.

Ein letzter Trick: Falls bei einem Prozess schleierhaft bleibt, welchem Zweck er dient, markieren Sie ihn und betätigen den Befehl Process > Search Online: Process Explorer startet dann sofort eine Google-Suche mit dem Prozessnamen, die in aller Regel recht schnell für Klarheit sorgt.

Process Explorer, kostenlos, 1,8 MB, ab Windows XP
Die ganze Sysinternals Suite, (12,9 MB)
Auch Russinovichs Blog ist für Leser mit Interesse an Windows-Interna sehr zu empfehlen.

Autor: Matthias

Diese Website gibt es seit 1999. Gebloggt wird hier seit 2007.

Ein Gedanke zu „Munteres Treiben hinter den Kulissen in Windows“

  1. Ein tolles Programm – der Process Hacker. Ich benutze ich auch schon einige Zeit.
    Das Beste daran ist dass man direkt sieht welcher Prozess von welchen gestartet wurde.
    Das einzige schlechte ist, wenn der Computer erst einmal hängt und man den Process Explorer startet dauert dies länger als mit dem Standart-Task-Manager, da er ja viel mehr laden muss.

    Aber sonst – top!

Kommentar verfassen