Wofür steht das C in Cid in winDbg, kdbg und livekd?

1962
Justin Dearing

Wenn Sie den ! Process- Befehl im windwos-Debugger ausführen, erhalten Sie die Ausgabe in diesem Format:

PROCESS fffffa8006bff940 SessionId: 0 Cid: 03ec Peb: 7f79ae1f000 ParentCid: 02e4 DirBase: 084ed000 ObjectTable: fffff8a002c3fd80 HandleCount: <Data Not Accessible> Image: svchost.exe 

Es ist gut dokumentiert, dass Cid die ProcessId (PID) in Hex ist. Ich sehe jedoch nicht, wofür das C steht.

3

2 Antworten auf die Frage

3
ckhan

It stands for CLIENT_ID.

From this MSDN blog post (emphasis mine):

Recently someone asked me what was the real meaning of the ‘Cid’ field which appears in the output of commands such as !process and !thread in the kernel debugger (kd). Though from a practical perspective I was aware that these represent the Process ID and Thread ID, I was unsure of what Cid stands for. In course of a search, I found a public source which answers the question. Cid is short for CLIENT_ID which in turn is an undocumented structure.

That posts cites that the original source as Undocumented Windows 2000 Secrets: A Programmer's Cookbook, by Sven B. Schreiber.

-1
Solemnity

03ec = 1004 in dez. 'c' ist eine letzte hexadezimale Ziffer dieser Zahl, sie steht für nichts (naja, 12dec für sich).

Das cid / pid ist ein 4-stelliger Hexadezimalwert, nicht 3.

Das ist nicht das "c", über das er spricht. ckhan vor 11 Jahren 2
lol, I reread his output a few times, thinking it was an odd question. Misinterpretation on my part. Solemnity vor 11 Jahren 0