forked from xt-sys/exectos
Introduce architecture-specific page map routines
This commit is contained in:
26
xtoskrnl/mm/amd64/globals.c
Normal file
26
xtoskrnl/mm/amd64/globals.c
Normal file
@@ -0,0 +1,26 @@
|
||||
/**
|
||||
* PROJECT: ExectOS
|
||||
* COPYRIGHT: See COPYING.md in the top level directory
|
||||
* FILE: xtoskrnl/mm/amd64/globals.c
|
||||
* DESCRIPTION: AMD64-specific global variables for the Memory Manager
|
||||
* DEVELOPERS: Aiken Harris <harraiken91@gmail.com>
|
||||
*/
|
||||
|
||||
#include <xtos.h>
|
||||
|
||||
|
||||
/* Page mapping routines for systems using 4-level paging (PML4) */
|
||||
CMMPAGEMAP_ROUTINES MmpPml4Routines = {
|
||||
// .ClearPte = MmpClearPte,
|
||||
// .PteValid = MmpPml2PteValid,
|
||||
// .SetPteCaching = MmpSetPml2PteCaching,
|
||||
// .SetPte = MmpSetPml2Pte,
|
||||
};
|
||||
|
||||
/* Page mapping routines for systems using 5-level paging (PML5) */
|
||||
CMMPAGEMAP_ROUTINES MmpPml5Routines = {
|
||||
// .ClearPte = MmpClearPte,
|
||||
// .PteValid = MmpPml3PteValid,
|
||||
// .SetPteCaching = MmpSetPml3PteCaching,
|
||||
// .SetPte = MmpSetPml3Pte,
|
||||
};
|
@@ -36,5 +36,8 @@ PVOID MmpHardwareHeapStart = MM_HARDWARE_HEAP_START_ADDRESS;
|
||||
/* Information about the current page map */
|
||||
MMPAGEMAP_INFO MmpPageMapInfo;
|
||||
|
||||
/* Pointers to page map routines for the current paging mode */
|
||||
PCMMPAGEMAP_ROUTINES MmpPageMapRoutines;
|
||||
|
||||
/* Number of used hardware allocation descriptors */
|
||||
ULONG MmpUsedHardwareAllocationDescriptors = 0;
|
||||
|
26
xtoskrnl/mm/i686/globals.c
Normal file
26
xtoskrnl/mm/i686/globals.c
Normal file
@@ -0,0 +1,26 @@
|
||||
/**
|
||||
* PROJECT: ExectOS
|
||||
* COPYRIGHT: See COPYING.md in the top level directory
|
||||
* FILE: xtoskrnl/mm/i686/globals.c
|
||||
* DESCRIPTION: i686-specific global variables for the Memory Manager
|
||||
* DEVELOPERS: Aiken Harris <harraiken91@gmail.com>
|
||||
*/
|
||||
|
||||
#include <xtos.h>
|
||||
|
||||
|
||||
/* Page mapping routines for systems using 2-level paging (PML2) */
|
||||
CMMPAGEMAP_ROUTINES MmpPml2Routines = {
|
||||
.ClearPte = MmpClearPte,
|
||||
.PteValid = MmpPml2PteValid,
|
||||
.SetPteCaching = MmpSetPml2PteCaching,
|
||||
.SetPte = MmpSetPml2Pte,
|
||||
};
|
||||
|
||||
/* Page mapping routines for systems using 3-level paging (PML3) */
|
||||
CMMPAGEMAP_ROUTINES MmpPml3Routines = {
|
||||
.ClearPte = MmpClearPte,
|
||||
.PteValid = MmpPml3PteValid,
|
||||
.SetPteCaching = MmpSetPml3PteCaching,
|
||||
.SetPte = MmpSetPml3Pte,
|
||||
};
|
Reference in New Issue
Block a user