!ks.dump

L'estensione !ks.dump visualizza l'oggetto specificato.

!ks.dump Object [Level] [Flags]  

Parametri

Oggetto
Specifica un puntatore a una struttura AVStream, a un oggetto classe AVStream o a un oggetto PortCls. Può anche specificare un puntatore a un IRP o a un oggetto file.

Livello
Facoltativo. Specifica il livello di dettaglio da visualizzare su una scala da 0 a 7 con ulteriori informazioni visualizzate progressivamente per valori più elevati. Per visualizzare tutti i dettagli disponibili, specificare il valore 7. Per altre informazioni sui livelli, eseguire un comando !ks.dump senza argomenti.

Bandiere
Facoltativo. Specifica il tipo di informazioni da visualizzare. I flag possono essere qualsiasi combinazione dei bit seguenti.

Bit 0 (0x1)
Visualizzare tutti i runtime di integrazione in coda.

Bit 1 (0x2)
Visualizzare tutti i runtime di integrazione in sospeso.

Bit 2 (0x4)
Analizzare un grafico bloccato per individuare i sospetti.

Bit 3 (0x8)
Mostra tutti gli stati dei pin.

DLL

Windows 2000

winxp\Ks.dll

Windows XP e versioni successive

Ks.dll

Informazioni aggiuntive

Per altre informazioni, vedere Debug del flusso del kernel.

Osservazioni:

Il comando !ks.dump riconosce la maggior parte degli oggetti AVStream, inclusi pin, filtri, factory, dispositivi, pipe e puntatori di flusso. Questo comando riconosce anche alcune strutture di classi di flusso, tra cui oggetti flusso, istanze di filtro, estensioni del dispositivo e SBS.

Di seguito è riportato un esempio della visualizzazione !ks.dump per un filtro:

kd> !dump 829493c4
Filter object 829493c4 [CKsFilter = 82949350]
    Descriptor     f7a233c8:
    Context        829dce28

Di seguito è riportato un esempio della visualizzazione !ks.dump per un pin:

kd> !dump 8160DDE0 7
Pin object 8160DDE0 [CKsPin = 8160DD50]
    DeviceState    KSSTATE_RUN
    ClientState    KSSTATE_RUN
    ResetState     KSRESET_END
    CKsPin object 8160DD50 [KSPIN = 8160DDE0]
        State                    KSSTATE_RUN
        Processing Mutex         8160DFD0 is not held
        And Gate &               8160DF88
        And Gate Count           1

Alcune parti importanti di questa visualizzazione sono incluse nella tabella seguente.

Parametro

significato

DeviceState

Stato in cui è stato richiesto di immettere il pin. Se diverso da ClientState, si tratta dello stato in cui il minidriver passerà a quello successivo.

ClientState

Stato in cui si trova effettivamente il minidriver. Ciò riflette lo stato della pipe.

ResetState

Indica se l'oggetto si trova al centro di uno scaricamento.

KSRESET_BEGIN indica uno scaricamento.

KSRESET_END indica che non è possibile scaricare.

Provincia

Stato interno del trasporto del pin ai filtri non AVStream.

Di seguito è riportato un esempio della visualizzazione !ks.dump per un driver di classe di flusso:

kd> !dump 81a0a170 7
Device Extension 81a0a228:
    Device Object          81a0a170 [\Driver\TESTCAP]
    Next Device Object     81bd56d8 [\Driver\PnpManager]
    Physical Device Object 81bd56d8 [\Driver\PnpManager]
    REGISTRY FLAGS:
        Page out driver when closed
        No suspend if running
    MINIDRIVER Data:
        Device Extension       81a0a44c
        Interrupt Routine      00000000
        Synchronize Routine    STREAM!StreamClassSynchronizeExecution
        Receive Device SRB     testcap!AdapterReceivePacket
        Cancel Packet          testcap!AdapterCancelPacket
        Timeout Packet         testcap!AdapterTimeoutPacket
        Size (d / r / s / f)   1a0(416), 14(20), 978(2424), 0(0)
        Sync Mode              Driver Synchronizes
    Filter Type 0:
        Symbolic Links:
            Information Paged Out
        Instances:
            816b7bd8

Si noti che le dimensioni sono elencate sia in numeri esadecimali che, quindi, tra parentesi nell'equivalente decimale. Le abbreviazioni delle dimensioni in questa visualizzazione sono elencate nella tabella seguente.

Dimensione

Spiegazione

d

Dispositivo

r

Richiedi

s

Stream

f

Filtro. Se la dimensione del filtro è 0, il filtro è una singola istanza. Se è maggiore di 0, è multiistanza.