Warum gibt es in meinem Windows Task-Manager keine Prozesse 1, 2 oder 3?
Wenn Sie sich die Zeit nehmen, all die kleinen Details in Windows zu betrachten, finden Sie oft kleine Kuriositäten. So werden beispielsweise die Prozessidentifikationsnummern 1, 2 und 3 im Windows Task-Manager nie zugewiesen?
Die heutige Question & Answer-Sitzung wird dank SuperUser zur Verfügung gestellt - einer Unterteilung von Stack Exchange, einer Community-basierten Gruppierung von Q & A-Websites.
Die Frage
SuperUser-Reader Agovizer hat sich die Tabelle Prozessanzeigetabelle im Windows Task-Manager eingehend angesehen und einige Fragen gestellt, insbesondere:
Welche Prozesse gibt es, falls vorhanden, zwischen den PIDs 0 und 4 unter Windows 7? Nur aus Neugier, was sind die Prozesse zwischen 0 und 4 und auch zwischen 4 und 200 etwas.
Wir sprangen in den Task-Manager auf unserer Maschine und tatsächlich waren in den Slots 1, 2 und 3 keine Prozesse zugewiesen - obwohl unsere PIDs von 4 auf 340 sprangen, im Gegensatz zu seinen 4 auf 200.
Die Antwort
SuperUser-Mitwirkender G Koe schließt den Fall mit einem Schlag:
Es gibt keine Prozess-ID 1, 2 oder 3 aufgrund der Funktionsweise der NT-Kernel-Tabelle.
Griffe sind immer ein Vielfaches von vier. Das Prozessobjekt Kernel handle wird sowohl für Prozesshandles als auch für Prozess- / Thread-IDs verwendet. Es kommt vor, dass die Handle-Werte alle mit 0x4 (Bit 2) beginnen, und der InitialSystemProcess ist der erste Prozess, der erstellt wird. Daher erhält er eine PID von 4. Der Prozess im Leerlauf ist kein Prozess und Sie können ihn nicht öffnen. Es hat wahrscheinlich keine echte PID, aber die meisten Tools halten es für 0.
Weitere Informationen zur NT-Handle-Tabelle hier, obwohl dies nur für NT3-5 (xp) zutreffend ist, da Windows 7 jetzt erfordert, dass Sie nur auf Kernel-Handles verweisen, wenn diese mit PsInitialSystemProcess verbunden sind.
Mehr zu Windows 7/8 Handle-Limits von Mark Russinovich
Mehr zu den "Vielfachen von Vier" in PIDs
Alles, was er vorschlägt, überprüft es: Es fehlen 1, 2 und 3 (keine Vielfachen von 4), und jeder PID-Wert in unserer Liste von 340 bis 13136 ist durch 4 teilbar.
Haben Sie der Erklärung etwas hinzuzufügen? Ton aus in den Kommentaren. Möchten Sie mehr Antworten von anderen technisch versierten Stack Exchange-Benutzern lesen? Hier geht es zum vollständigen Diskussionsthread.