ReactOS 0.4.15-dev-7994-gb388cb6
mm.h File Reference

Go to the source code of this file.

Macros

#define PTI_SHIFT   12L
 
#define PDI_SHIFT   21L
 
#define PPI_SHIFT   30L
 
#define PXI_SHIFT   39L
 
#define PTE_PER_PAGE   512
 
#define PDE_PER_PAGE   512
 
#define PPE_PER_PAGE   512
 
#define PXE_PER_PAGE   512
 
#define PTI_MASK_AMD64   (PTE_PER_PAGE - 1)
 
#define PDI_MASK_AMD64   (PDE_PER_PAGE - 1)
 
#define PPI_MASK   (PPE_PER_PAGE - 1)
 
#define PXI_MASK   (PXE_PER_PAGE - 1)
 
#define PXE_BASE   0xFFFFF6FB7DBED000ULL
 
#define PXE_SELFMAP   0xFFFFF6FB7DBEDF68ULL
 
#define PPE_BASE   0xFFFFF6FB7DA00000ULL
 
#define PDE_BASE   0xFFFFF6FB40000000ULL
 
#define PTE_BASE   0xFFFFF68000000000ULL
 
#define PXE_TOP   0xFFFFF6FB7DBEDFFFULL
 
#define PPE_TOP   0xFFFFF6FB7DBFFFFFULL
 
#define PDE_TOP   0xFFFFF6FB7FFFFFFFULL
 
#define PTE_TOP   0xFFFFF6FFFFFFFFFFULL
 
#define MM_HIGHEST_USER_ADDRESS   MmHighestUserAddress
 
#define MM_SYSTEM_RANGE_START   MmSystemRangeStart
 
#define MM_USER_PROBE_ADDRESS   MmUserProbeAddress
 
#define MM_LOWEST_USER_ADDRESS   (PVOID)0x10000
 
#define MM_LOWEST_SYSTEM_ADDRESS   (PVOID)0xFFFF080000000000ULL
 

Functions

 $if (_NTDDK_) extern NTKERNELAPI PVOID MmHighestUserAddress
 

Variables

NTKERNELAPI PVOID MmSystemRangeStart
 
NTKERNELAPI ULONG64 MmUserProbeAddress
 

Macro Definition Documentation

◆ MM_HIGHEST_USER_ADDRESS

#define MM_HIGHEST_USER_ADDRESS   MmHighestUserAddress

Definition at line 30 of file mm.h.

◆ MM_LOWEST_SYSTEM_ADDRESS

#define MM_LOWEST_SYSTEM_ADDRESS   (PVOID)0xFFFF080000000000ULL

Definition at line 39 of file mm.h.

◆ MM_LOWEST_USER_ADDRESS

#define MM_LOWEST_USER_ADDRESS   (PVOID)0x10000

Definition at line 38 of file mm.h.

◆ MM_SYSTEM_RANGE_START

#define MM_SYSTEM_RANGE_START   MmSystemRangeStart

Definition at line 31 of file mm.h.

◆ MM_USER_PROBE_ADDRESS

#define MM_USER_PROBE_ADDRESS   MmUserProbeAddress

Definition at line 36 of file mm.h.

◆ PDE_BASE

#define PDE_BASE   0xFFFFF6FB40000000ULL

◆ PDE_PER_PAGE

#define PDE_PER_PAGE   512

◆ PDE_TOP

#define PDE_TOP   0xFFFFF6FB7FFFFFFFULL

◆ PDI_MASK_AMD64

#define PDI_MASK_AMD64   (PDE_PER_PAGE - 1)

◆ PDI_SHIFT

#define PDI_SHIFT   21L

◆ PPE_BASE

#define PPE_BASE   0xFFFFF6FB7DA00000ULL

◆ PPE_PER_PAGE

#define PPE_PER_PAGE   512

◆ PPE_TOP

#define PPE_TOP   0xFFFFF6FB7DBFFFFFULL

◆ PPI_MASK

#define PPI_MASK   (PPE_PER_PAGE - 1)

◆ PPI_SHIFT

#define PPI_SHIFT   30L

◆ PTE_BASE

#define PTE_BASE   0xFFFFF68000000000ULL

◆ PTE_PER_PAGE

#define PTE_PER_PAGE   512

◆ PTE_TOP

#define PTE_TOP   0xFFFFF6FFFFFFFFFFULL

◆ PTI_MASK_AMD64

#define PTI_MASK_AMD64   (PTE_PER_PAGE - 1)

◆ PTI_SHIFT

#define PTI_SHIFT   12L

◆ PXE_BASE

#define PXE_BASE   0xFFFFF6FB7DBED000ULL

◆ PXE_PER_PAGE

#define PXE_PER_PAGE   512

◆ PXE_SELFMAP

#define PXE_SELFMAP   0xFFFFF6FB7DBEDF68ULL

◆ PXE_TOP

#define PXE_TOP   0xFFFFF6FB7DBEDFFFULL

◆ PXI_MASK

#define PXI_MASK   (PXE_PER_PAGE - 1)

◆ PXI_SHIFT

#define PXI_SHIFT   39L

Function Documentation

◆ $if()

$if ( _NTDDK_  )

Definition at line 180 of file ke.h.

219 {
220 ULONG64 P1Home;
221 ULONG64 P2Home;
222 ULONG64 P3Home;
223 ULONG64 P4Home;
224 ULONG64 P5Home;
225 ULONG64 P6Home;
226 ULONG ContextFlags;
227 ULONG MxCsr;
228 USHORT SegCs;
229 USHORT SegDs;
230 USHORT SegEs;
231 USHORT SegFs;
232 USHORT SegGs;
233 USHORT SegSs;
234 ULONG EFlags;
235 ULONG64 Dr0;
236 ULONG64 Dr1;
237 ULONG64 Dr2;
238 ULONG64 Dr3;
239 ULONG64 Dr6;
240 ULONG64 Dr7;
241 ULONG64 Rax;
242 ULONG64 Rcx;
243 ULONG64 Rdx;
244 ULONG64 Rbx;
245 ULONG64 Rsp;
246 ULONG64 Rbp;
247 ULONG64 Rsi;
248 ULONG64 Rdi;
249 ULONG64 R8;
250 ULONG64 R9;
251 ULONG64 R10;
252 ULONG64 R11;
253 ULONG64 R12;
254 ULONG64 R13;
255 ULONG64 R14;
256 ULONG64 R15;
257 ULONG64 Rip;
258 union {
259 XMM_SAVE_AREA32 FltSave;
260 struct {
261 M128A Header[2];
262 M128A Legacy[8];
263 M128A Xmm0;
264 M128A Xmm1;
265 M128A Xmm2;
266 M128A Xmm3;
267 M128A Xmm4;
268 M128A Xmm5;
269 M128A Xmm6;
270 M128A Xmm7;
271 M128A Xmm8;
272 M128A Xmm9;
273 M128A Xmm10;
274 M128A Xmm11;
275 M128A Xmm12;
276 M128A Xmm13;
277 M128A Xmm14;
278 M128A Xmm15;
281 M128A VectorRegister[26];
282 ULONG64 VectorControl;
283 ULONG64 DebugControl;
284 ULONG64 LastBranchToRip;
285 ULONG64 LastBranchFromRip;
286 ULONG64 LastExceptionToRip;
287 ULONG64 LastExceptionFromRip;
288} CONTEXT;
@ R15
Definition: amd64_sup.c:13
@ R13
Definition: amd64_sup.c:13
@ R12
Definition: amd64_sup.c:13
@ R9
Definition: amd64_sup.c:13
@ R14
Definition: amd64_sup.c:13
@ R8
Definition: amd64_sup.c:13
@ R11
Definition: amd64_sup.c:13
@ R10
Definition: amd64_sup.c:13
Definition: Header.h:9
unsigned __int64 ULONG64
Definition: imports.h:198
#define DECLSPEC_ALIGN(x)
Definition: ntbasedef.h:251
#define DUMMYUNIONNAME
Definition: ntbasedef.h:32
#define DUMMYSTRUCTNAME
Definition: ntbasedef.h:58
unsigned short USHORT
Definition: pedump.c:61
XSAVE_FORMAT XMM_SAVE_AREA32
Definition: ke.h:35
CONTEXT
Definition: ke.h:288
uint32_t ULONG
Definition: typedefs.h:59
M128A
Definition: ketypes.h:937

Variable Documentation

◆ MmSystemRangeStart

NTKERNELAPI PVOID MmSystemRangeStart
extern

Definition at line 52 of file init.c.

◆ MmUserProbeAddress

NTKERNELAPI ULONG64 MmUserProbeAddress
extern

Definition at line 50 of file init.c.