# IMachineDebugger Interface Reference

List of all members.

## Public Member Functions
void | resetStats (in wstring pattern)
| Reset VM statistics.
void | dumpStats (in wstring pattern)
| Dumps VM statistics.
void | getStats (in wstring pattern, in boolean withDescriptions, out wstring stats)
| Get the VM statistics in a XMLish format.
void | injectNMI ()
| Inject an NMI into a running VT-x/AMD-V VM.
## Public Attributes
attribute boolean | singlestep
| Switch for enabling singlestepping.
attribute boolean | recompileUser
| Switch for forcing code recompilation for user mode code.
attribute boolean | recompileSupervisor
| Switch for forcing code recompilation for supervisor mode code.
attribute boolean | PATMEnabled
| Switch for enabling and disabling the PATM component.
attribute boolean | CSAMEnabled
| Switch for enabling and disabling the CSAM component.
attribute boolean | logEnabled
| Switch for enabling and disabling logging.
readonly attribute boolean | HWVirtExEnabled
| Flag indicating whether the VM is currently making use of CPU hardware virtualization extensions.
readonly attribute boolean | HWVirtExNestedPagingEnabled
| Flag indicating whether the VM is currently making use of the nested paging CPU hardware virtualization extension.
readonly attribute boolean | HWVirtExVPIDEnabled
| Flag indicating whether the VM is currently making use of the VPID VT-x extension.
readonly attribute boolean | PAEEnabled
| Flag indicating whether the VM is currently making use of the Physical Address Extension CPU feature.
attribute unsigned long | virtualTimeRate
| The rate at which the virtual time runs expressed as a percentage.
readonly attribute unsigned long long | VM
| Gets the VM handle.

## Member Function Documentation

void IMachineDebugger::resetStats | ( | in wstring | pattern | ) |

Reset VM statistics.

Parameters:

  | pattern | The selection pattern. A bit similar to filename globbing.

void IMachineDebugger::dumpStats | ( | in wstring | pattern | ) |

Dumps VM statistics.

Parameters:

  | pattern | The selection pattern. A bit similar to filename globbing.

void IMachineDebugger::getStats | ( | in wstring | pattern,
|  | in boolean | withDescriptions,
|  | out wstring | stats |
| ) |  |  |

Get the VM statistics in a XMLish format.

Parameters:

  | pattern | The selection pattern. A bit similar to filename globbing.
  | withDescriptions | Whether to include the descriptions.
  | stats | The XML document containing the statistics.

void IMachineDebugger::injectNMI | ( |  | ) |

Inject an NMI into a running VT-x/AMD-V VM.

## Member Data Documentation

attribute boolean IMachineDebugger::singlestep

Switch for enabling singlestepping.

attribute boolean IMachineDebugger::recompileUser

Switch for forcing code recompilation for user mode code.

attribute boolean IMachineDebugger::recompileSupervisor

Switch for forcing code recompilation for supervisor mode code.

attribute boolean IMachineDebugger::PATMEnabled

Switch for enabling and disabling the PATM component.

attribute boolean IMachineDebugger::CSAMEnabled

Switch for enabling and disabling the CSAM component.

attribute boolean IMachineDebugger::logEnabled

Switch for enabling and disabling logging.

readonly attribute boolean IMachineDebugger::HWVirtExEnabled

Flag indicating whether the VM is currently making use of CPU hardware virtualization extensions.

readonly attribute boolean IMachineDebugger::HWVirtExNestedPagingEnabled

Flag indicating whether the VM is currently making use of the nested paging CPU hardware virtualization extension.

readonly attribute boolean IMachineDebugger::HWVirtExVPIDEnabled

Flag indicating whether the VM is currently making use of the VPID VT-x extension.

readonly attribute boolean IMachineDebugger::PAEEnabled

Flag indicating whether the VM is currently making use of the Physical Address Extension CPU feature.

attribute unsigned long IMachineDebugger::virtualTimeRate

The rate at which the virtual time runs expressed as a percentage.

The accepted range is 2% to 20000%.

readonly attribute unsigned long long IMachineDebugger::VM

Gets the VM handle.

This is only for internal use while we carve the details of this interface.