NKrdmsr (Compact 2013)
10/16/2014
This function is a C wrapper function for the x86 RDMSR instruction. It puts the CPU into ring 0 if it is not already there.
This function is specific to x86 only.
Syntax
BOOL NKrdmsr(
DWORD dwAddr,
DWORD* lpdwValHigh,
DWORD* lpdwValLow
);
Parameters
- dwAddr
[in] Address of the model-specific register (MSR) being read.
- lpdwValHigh
[in] Receives the upper 32 bits of the value being read. Can be NULL.
- lpdwValLow
[in] Receives the lower 32 bits of the value being read. Can be NULL.
Return Value
TRUE indicates success. FALSE indicates failure.
Remarks
The pfnX86rdmsr member of NKGLOBAL points to this function.
All MSR-related information is specific to x86 only. MSRs are not supported on all x86 CPUs.
Note
This function does not determine whether the CPU supports MSRs, nor does it determine whether the CPU supports the particular MSR address being read. The caller is responsible for determining whether MSRs are supported using the x86 CPUID instruction to query CPU features. For information about MSR addresses, see the documentation for your particular CPU.
Requirements
Header |
msr.h |
Library |
coredll.lib |