Jump to content

Cvkcmd s: Difference between revisions

From EDM2
No edit summary
Ak120 (talk | contribs)
No edit summary
Line 1: Line 1:
== cvkcmd_s ==  
== cvkcmd_s ==
 
Data associated with the kernel debugger communications protocol.
Data associated with the kernel debugger communications protocol.
   
   
=== Type ===
=== Type ===
 
  [[USHORT]]      Cmd
  [[OS2 API:DataType:USHORT|USHORT]]      Cmd
  [[ULONG]]        Value
  [[OS2 API:DataType:ULONG|ULONG]]        Value
  ULONG        OffV
  [[OS2 API:DataType:ULONG|ULONG]]       OffV
  USHORT      SegV
  [[OS2 API:DataType:USHORT|USHORT]]       SegV
  USHORT      MTE
  [[OS2 API:DataType:USHORT|USHORT]]       MTE
  USHORT      PID
  [[OS2 API:DataType:USHORT|USHORT]]       PID
  USHORT      TID
  [[OS2 API:DataType:USHORT|USHORT]]       TID
  USHORT      DBit
  [[OS2 API:DataType:USHORT|USHORT]]       DBit
  [[RegSA_struc]]  Reg
  [[OS2 API:DataType:RegSA_struc|RegSA_struc]]  Reg
  [[UCHAR]]        MemCache
  [[OS2 API:DataType:UCHAR|UCHAR]]        MemCache


==== C Declaration Method ====
==== C Declaration Method ====
typedef struct
typedef struct


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


[[Category:The OS/2 API Project]]
[[Category:Data type]]

Revision as of 22:36, 23 November 2016

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).