Share via


KD_IOCTL_MEMORY_INACCESSIBLE (Compact 2013)

10/16/2014

This I/O control message requests the access status of a single memory address. The kernel debugger sends this message with OEMKDIoctl.

Syntax

BOOL OEMKDIoControl(
    DWORD dwIoControlCode,   // use KD_IOCTL_MEMORY_INACCESSIBLE
    LPVOID lpInBuffer,       // pointer to input buffer
    DWORD nInBufferSize      // input buffer size
);

Parameters

  • dwIoControlCode
    [in] Control code for the operation. Use KD_IOCTL_MEMORY_INACCESSIBLE for this operation.
  • lpInBuffer
    [in] Pointer to a memory address.
  • nInBufferSize
    [in] Set to sizeof(LPVOID).

Return Values

FALSE if the kernel debugger may read or write the memory address; TRUE if the OEM designates the address as invalid. If TRUE, the kernel debugger does not access the memory address.

Remarks

This I/O control enables an OEM to define a memory location as invalid for kernel debugger operations. There is no limit to the number of memory locations that can be defined in this manner.

It is expected that kernel debugger access of such memory is not valid and causes a hardware exception. On some hardware platforms, you may not be able to recover from the exception because the debugger turns all interrupts off. Therefore, this I/O control enables the kernel debugger to avoid accessing these invalid memory locations.

Requirements

Header

pkfuncs.h

See Also

Reference

Kernel Debugger IOCTLs
OEMKDIoctl