OpenCore  1.0.4
OpenCore Bootloader
Loading...
Searching...
No Matches
VirtualMemory.h File Reference

Go to the source code of this file.

Data Structures

union  PAGE_MAP_AND_DIRECTORY_POINTER
 
union  PAGE_TABLE_4K_ENTRY
 
union  PAGE_TABLE_2M_ENTRY
 
union  PAGE_TABLE_1G_ENTRY
 
union  PAT_INDEX
 
union  VIRTUAL_ADDR
 

Macros

#define VA_FIX_SIGN_EXTEND(VA)
 
#define CR0_WP   BIT16
 
#define CR3_ADDR_MASK   0x000FFFFFFFFFF000ull
 
#define CR3_FLAG_PWT   0x0000000000000008ull
 
#define CR3_FLAG_PCD   0x0000000000000010ull
 
#define PAGING_4K_ADDRESS_MASK_64   0x000FFFFFFFFFF000ull
 
#define PAGING_2M_ADDRESS_MASK_64   0x000FFFFFFFE00000ull
 
#define PAGING_1G_ADDRESS_MASK_64   0x000FFFFFC0000000ull
 

Detailed Description

x64 Long Mode Virtual Memory Management Definitions

References: 1) IA-32 Intel(R) Architecture Software Developer's Manual Volume 1:Basic Architecture, Intel 2) IA-32 Intel(R) Architecture Software Developer's Manual Volume 2:Instruction Set Reference, Intel 3) IA-32 Intel(R) Architecture Software Developer's Manual Volume 3:System Programmer's Guide, Intel 4) AMD64 Architecture Programmer's Manual Volume 2: System Programming

Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.
Copyright (c) 2017, AMD Incorporated. All rights reserved.
Copyright (c) 2011, dmazar. All rights reserved.

SPDX-License-Identifier: BSD-2-Clause-Patent

Definition in file VirtualMemory.h.

Macro Definition Documentation

◆ CR0_WP

#define CR0_WP   BIT16

Definition at line 158 of file VirtualMemory.h.

◆ CR3_ADDR_MASK

#define CR3_ADDR_MASK   0x000FFFFFFFFFF000ull

Definition at line 160 of file VirtualMemory.h.

◆ CR3_FLAG_PCD

#define CR3_FLAG_PCD   0x0000000000000010ull

Definition at line 162 of file VirtualMemory.h.

◆ CR3_FLAG_PWT

#define CR3_FLAG_PWT   0x0000000000000008ull

Definition at line 161 of file VirtualMemory.h.

◆ PAGING_1G_ADDRESS_MASK_64

#define PAGING_1G_ADDRESS_MASK_64   0x000FFFFFC0000000ull

Definition at line 166 of file VirtualMemory.h.

◆ PAGING_2M_ADDRESS_MASK_64

#define PAGING_2M_ADDRESS_MASK_64   0x000FFFFFFFE00000ull

Definition at line 165 of file VirtualMemory.h.

◆ PAGING_4K_ADDRESS_MASK_64

#define PAGING_4K_ADDRESS_MASK_64   0x000FFFFFFFFFF000ull

Definition at line 164 of file VirtualMemory.h.

◆ VA_FIX_SIGN_EXTEND

#define VA_FIX_SIGN_EXTEND ( VA)
Value:
((VA).Pg4K.SignExtend = ((VA).Pg4K.PML4Offset & 0x100U) ? 0xFFFFU : 0U);

Definition at line 154 of file VirtualMemory.h.