Systemleerlaufprozess
![]() Windows Task Manager in Windows XP Zeigen Sie die Verwendung des Systems im Leerlaufprozess bei 99%, was darauf hinweist, dass kein anderer Prozess eine signifikante CPU -Zeit verwendet. | |
Betriebssystem | Microsoft Windows |
---|---|
Typ | Kernel |
Im Windows NT Betriebssysteme, die Systemleerlaufprozess enthält einen oder mehrere Kernel Themen welcher Lauf ausgeführt wird, wenn kein anderer ausgeführter Thread auf einer CPU geplant werden kann. In einem Multiprozessor -System ist jedem CPU -Kern einen Leerlaufgewinde zugeordnet. Für ein System mit Hyperthreading Aktiviert ist für jeden logischen Prozessor ein Leerlauf -Thread.
Der Hauptzweck des Leerlaufprozesses und seiner Threads besteht darin, einen Sonderfall im Scheduler zu beseitigen. Ohne die Leerlauffäden könnten Fälle geben, in denen keine Threads ausgeführt wären (oder in Bezug auf die Windows -Planungszustände "bereit"). Da sich die Leerlauffäden immer in einem fertigen Zustand befinden (wenn nicht bereits ausgeführt), kann dies niemals passieren. Wenn der Scheduler aufgrund des aktuellen Threads, der seine CPU verlässt, aufgerufen wird, kann immer ein anderer Thread auf dieser CPU ausgeführt werden, auch wenn es sich nur um den Leerlauf der CPU handelt. Die CPU -Zeit, die dem Leerlaufprozess zugeschrieben wird nicht benötigt oder gesucht von anderen Threads im System.
Der Scheduler behandelt die Leerlauf -Threads als Sonderfälle in Bezug auf die Priorität der Thread -Planung. Die Leerlauffäden sind so geplant, als hätten sie jeweils eine Priorität, die für jeden gewöhnlichen Thread eingestellt werden kann.
Aufgrund der Funktion des Leerlaufprozesses ist die Messung der CPU -Zeit (beispielsweise sichtbar durch, Windows Task Manager) kann es den Benutzern dazu bringen, dass der Leerlaufprozess die CPU monopolisiert. Der Leerlaufprozess verbraucht jedoch keine Computerressourcen (auch wenn er mit hohem Prozentsatz angegeben ist). Die "Nutzung" der CPU -Zeit ist ein Maß dafür, wie viel CPU -Zeit von anderen Threads nicht verwendet wird.
In Windows 2000 und später werden auch die Threads im System -Leerlaufprozess zur Implementierung verwendet Zentralprozessor Leistungssparung. Das genaue Leistungssparschema hängt von der Betriebssystemversion sowie von der Hardware ab und ab Firmware Fähigkeiten des fraglichen Systems. Zum Beispiel auf x86 Prozessoren unter Windows 2000 werden im Leerlauf -Thread eine Schleife von ausgeführt Halt Anweisungen, die dazu führen, dass die CPU viele interne Komponenten ausschaltet, bis ein Interrupt -Anfrage kommt an. Spätere Versionen von Windows implementieren komplexere CPU -Stromsparmethoden. Auf diesen Systemen ruft der Leerlauf -Thread Routinen in der auf Hardware -Abstraktionsschicht Reduzierung der CPU-Taktgeschwindigkeit oder zur Implementierung anderer Leistungssparmechanismen.
Es gibt detailliertere Quellen solcher Informationen über das Windows -Leistungsüberwachungssystem (mit dem Perfmon -Programm zugänglich), das eine feinkörnige Kategorisierung der CPU -Nutzung umfasst. Eine begrenzte Teilmenge der CPU -Zeitkategorisierung ist auch über die zugänglich Taskmanager, die die CPU -Nutzung nach CPU anzeigen und durch die Zeit, die in Benutzer vs. Kernel -Code aufgewendet wurde, kategorisiert werden kann.
Siehe auch
- Liste der Microsoft Windows -Komponenten
- Idle (CPU)
- Microsoft Windows
- HLT (x86 Anweisung)
- Process Explorer
Verweise
- Russsinovich, Mark; David A. Solomon (2005). "Kapitel 2: Systemarchitektur". Microsoft Windows Interna (4. Aufl.). Microsoft Press. pp.75–76. ISBN 0-7356-1917-4.
- "Was ist" System -Leerlaufprozess "und warum verwendet es so viel CPU?". How-to Geek. Abgerufen 2022-01-13.
- "System -Leerlaufprozess - Was ist ein System im Leerlauf?". www.processlibrary.com. Abgerufen 2022-01-13.