HyperDbg Debugger
Loading...
Searching...
No Matches
CompatibilityChecks.h
Go to the documentation of this file.
1
13#include "pch.h"
14
16// Structures //
18
24{
25 BOOLEAN IsX2Apic; // X2APIC or XAPIC routine
26 BOOLEAN RtmSupport; // check for RTM support
27 BOOLEAN PmlSupport; // check Page Modification Logging (PML) support
28 BOOLEAN ModeBasedExecutionSupport; // check for mode based execution support (processors after Kaby Lake release will support this feature)
29 BOOLEAN ExecuteOnlySupport; // Support for execute-only pages (indicating that data accesses are not allowed while instruction fetches are allowed)
30 UINT32 VirtualAddressWidth; // Virtual address width for x86 processors
31 UINT32 PhysicalAddressWidth; // Physical address width for x86 processors
32
34
36// Functions //
38
39VOID
UCHAR BOOLEAN
Definition BasicTypes.h:39
#define VOID
Definition BasicTypes.h:33
unsigned int UINT32
Definition BasicTypes.h:48
VOID CompatibilityCheckPerformChecks()
Checks for the compatibility features based on current processor @detail NOTE: NOT ALL OF THE CHECKS ...
Definition CompatibilityChecks.c:153
struct _COMPATIBILITY_CHECKS_STATUS COMPATIBILITY_CHECKS_STATUS
The status of available features in the processor.
struct _COMPATIBILITY_CHECKS_STATUS * PCOMPATIBILITY_CHECKS_STATUS
The status of available features in the processor.
Definition CompatibilityChecks.h:24
BOOLEAN ModeBasedExecutionSupport
Definition CompatibilityChecks.h:28
UINT32 VirtualAddressWidth
Definition CompatibilityChecks.h:30
UINT32 PhysicalAddressWidth
Definition CompatibilityChecks.h:31
BOOLEAN IsX2Apic
Definition CompatibilityChecks.h:25
BOOLEAN PmlSupport
Definition CompatibilityChecks.h:27
BOOLEAN RtmSupport
Definition CompatibilityChecks.h:26
BOOLEAN ExecuteOnlySupport
Definition CompatibilityChecks.h:29