Jump to content

Cvkcmd s

From EDM2
Revision as of 21:31, 1 November 2011 by Martini (talk | contribs)

cvkcmd_s

Data associated with the kernel debugger communications protocol.

Type

USHORT       Cmd
ULONG        Value
ULONG        OffV
USHORT       SegV
USHORT       MTE
USHORT       PID
USHORT       TID
USHORT       DBit
RegSA_struc  Reg
UCHAR        MemCache

C Declaration Method

typedef struct

Fields

Cmd      Command, One of the following: 
         ┌────────────────────┬─────┬────────────────────┬────────┬────────┐
         │Command             │Code │Description         │CVK_    │CVK_    │
         │                    │     │                    │CMDSIZE_│RETSIZE_│
         ├────────────────────┼─────┼────────────────────┼────────┼────────┤
         │CVK_CMD_RMEM        │ 1   │Read memory         │18      │20      │
         ├────────────────────┼─────┼────────────────────┼────────┼────────┤
         │CVK_CMD_RREG        │ 3   │Read registers      │18      │24 +    │
         │                    │     │                    │        │sizeof( │
         │                    │     │                    │        │RegSa_  │
         │                    │     │                    │        │struc)  │
         ├────────────────────┼─────┼────────────────────┼────────┼────────┤
         │CVK_CMD_WMEM        │ 4   │Write memory        │20      │6       │
         ├────────────────────┼─────┼────────────────────┼────────┼────────┤
         │CVK_CMD_WREG        │ 6   │Write registers     │20 +    │2       │
         │                    │     │                    │sizeof( │        │
         │                    │     │                    │RegSa_  │        │
         │                    │     │                    │struc)  │        │
         ├────────────────────┼─────┼────────────────────┼────────┼────────┤
         │CVK_CMD_RUN         │ 7   │Resume execution    │6       │0       │
         ├────────────────────┼─────┼────────────────────┼────────┼────────┤
         │CVK_CMD_KILL        │ 8   │Reboot victim       │2       │0       │
         │                    │     │machine             │        │        │
         ├────────────────────┼─────┼────────────────────┼────────┼────────┤
         │CVK_CMD_STEP        │ 9   │Single step         │2       │0       │
         ├────────────────────┼─────┼────────────────────┼────────┼────────┤
         │CVK_CMD_NUMTOBASE   │13   │Get object/segment  │14      │14      │
         │                    │     │information         │        │        │
         ├────────────────────┼─────┼────────────────────┼────────┼────────┤
         │CVK_CMD_LIBNAME     │16   │Get module          │6       │6       │
         │                    │     │information         │        │        │
         ├────────────────────┼─────┼────────────────────┼────────┼────────┤
         │CVK_CMD_RAW         │20   │Perform kernel      │6       │        │
         │                    │     │debugger command    │        │        │
         ├────────────────────┼─────┼────────────────────┼────────┼────────┤
         │CVK_CMD_DBIT        │22   │Get selector        │20      │        │
         │                    │     │information         │        │        │
         ├────────────────────┼─────┼────────────────────┼────────┼────────┤
         │CVK_CMD_RSTEP       │23   │Range step          │10      │0       │
         ├────────────────────┼─────┼────────────────────┼────────┼────────┤
         │CVK_CMD_SCANMTE     │24   │Scan module table   │2       │6       │
         ├────────────────────┼─────┼────────────────────┼────────┼────────┤
         │CVK_CMD_SCANTCB     │25   │Scan thread control │6       │10      │
         │                    │     │blocks              │        │        │
         ├────────────────────┼─────┼────────────────────┼────────┼────────┤
         │CVK_CMD_SEL2LIN     │26   │Convert             │18      │6       │
         │                    │     │selector:offset to  │        │        │
         │                    │     │linear address.     │        │        │
         ├────────────────────┼─────┼────────────────────┼────────┼────────┤
         │CVK_CMD_LIN2SEL     │27   │Convert linear      │18      │12      │
         │                    │     │address to          │        │        │
         │                    │     │selector:offset.    │        │        │
         ├────────────────────┼─────┼────────────────────┼────────┼────────┤
         │CVK_CMD_OBJCOUNT    │28   │Get number of       │6       │6       │
         │                    │     │objects/segments in │        │        │
         │                    │     │module              │        │        │
         ├────────────────────┼─────┼────────────────────┼────────┼────────┤
         │CVK_CMD_SCANOBJ     │29   │Scan object/segment │14      │10      │
         │                    │     │table               │        │        │
         ├────────────────────┼─────┼────────────────────┼────────┼────────┤
         │CVK_CMD_SELINFO     │30   │Get selector        │18      │20      │
         │                    │     │information         │        │        │
         ├────────────────────┼─────┼────────────────────┼────────┼────────┤
         │CVK_CMD_RNPX        │31   │Read NPX state      │18      │128     │
         ├────────────────────┼─────┼────────────────────┼────────┼────────┤
         │CVK_CMD_WNPX        │32   │Write NPX state     │128     │60      │
         ├────────────────────┼─────┼────────────────────┼────────┼────────┤
         │CVK_CMD_ENA         │33   │Enable optional     │6       │2       │
         │                    │     │features            │        │        │
         ├────────────────────┼─────┼────────────────────┼────────┼────────┤
         │CVK_CMD_DIS         │34   │Disable optional    │6       │2       │
         │                    │     │features            │        │        │
         ├────────────────────┼─────┼────────────────────┼────────┼────────┤
         │CVK_CMD_PIREG       │35   │Register for PAGEIN │14      │2       │
         │                    │     │notification        │        │        │
         ├────────────────────┼─────┼────────────────────┼────────┼────────┤
         │CVK_CMD_PIDRG       │36   │Deregister for      │14      │2       │
         │                    │     │PAGEIN notification │        │        │
         └────────────────────┴─────┴────────────────────┴────────┴────────┘
    
Value    Value, command dependent. 
OffV     Command dependent, usually a linear address. 
SegV     Command dependent.  Usually slot number of thread.
MTE      Module Table Entry
PID      Process Identifier
TID      Thread Identifier
DBit     Flags from the CS selector.
Reg      Register save area
MemCache Data area used for variable length data in a command or response. Maximum size of the data is CVK_MEMCACHE_SIZE (512).


Back to OS/2 API