DBG C WriteMemBuf: Difference between revisions
Created page with "Debug Command 23 - Write Memory Buffer Command ;Parameters *Pid= Process ID of debuggee *Cmd= DBG_C_WriteMemBuf *Addr= Debuggee address to write to *Buffer= Debugger add..." |
mNo edit summary |
||
(One intermediate revision by the same user not shown) | |||
Line 1: | Line 1: | ||
Debug Command 23 - Write Memory Buffer Command | {{DISPLAYTITLE:DBG_C_WriteMemBuf}} | ||
Debug Command 23 - Write Memory Buffer Command | |||
;Parameters | |||
*Pid= Process ID of debuggee | |||
*Cmd= DBG_C_WriteMemBuf | |||
*Addr= Debuggee address to write to | |||
*Buffer= Debugger address to copy from | |||
*Len= Number of bytes to write | |||
;Returns | |||
The number of bytes specified by Len is copied from the debugger's Buffer into the debuggee's memory space starting at Addr. | |||
This command is not serialized with respect to the [[DBG_C_Go]] command. | |||
In the case of a write to shared read-only memory, the memory is first converted to private, and any set dynamic RAS logging points are removed from that memory, before the write is performed. | |||
Dynamic RAS logging will continue to function in that area, in the context of other processes. The area will continue to be shared by other processes, if any. | |||
In this way, breakpoints may be set in the debuggee without affecting the other modules. | |||
You are unable to write to any memory outside user space. | ;Restrictions | ||
You are unable to write to any memory outside user space. | |||
Both specified memory regions must be currently valid. | Both specified memory regions must be currently valid. | ||
[[Category: | [[Category:Debug Command]] | ||
Latest revision as of 17:09, 10 March 2020
Debug Command 23 - Write Memory Buffer Command
- Parameters
- Pid= Process ID of debuggee
- Cmd= DBG_C_WriteMemBuf
- Addr= Debuggee address to write to
- Buffer= Debugger address to copy from
- Len= Number of bytes to write
- Returns
The number of bytes specified by Len is copied from the debugger's Buffer into the debuggee's memory space starting at Addr.
This command is not serialized with respect to the DBG_C_Go command.
In the case of a write to shared read-only memory, the memory is first converted to private, and any set dynamic RAS logging points are removed from that memory, before the write is performed.
Dynamic RAS logging will continue to function in that area, in the context of other processes. The area will continue to be shared by other processes, if any.
In this way, breakpoints may be set in the debuggee without affecting the other modules.
- Restrictions
You are unable to write to any memory outside user space.
Both specified memory regions must be currently valid.