Implement MmpGetPdeAddress() and MmpGetPteAddress() routines for i686 architecture as well as MmpMemoryExtensionEnabled() for checking PAE/LA57 support

This commit is contained in:
2024-05-22 22:47:28 +02:00
parent 4db5425238
commit 609538b9be
10 changed files with 154 additions and 3 deletions

View File

@@ -38,4 +38,8 @@ XTAPI
VOID
MmpInitializeArchitecture(VOID);
XTAPI
BOOLEAN
MmpMemoryExtensionEnabled(VOID);
#endif /* __XTOSKRNL_AMD64_MMI_H */

View File

@@ -75,6 +75,9 @@ EXTERN LOADER_MEMORY_MAPPING MmpHalAllocationDescriptors[MM_HAL_ALLOCATION_DESCR
/* Live address of kernel HAL heap */
EXTERN PVOID MmpHalHeapStart;
/* Architecture-specific memory extension */
EXTERN BOOLEAN MmpMemoryExtension;
/* Number of used HAL allocation descriptors */
EXTERN ULONG MmpUsedHalAllocationDescriptors;

View File

@@ -12,14 +12,26 @@
#include <xtos.h>
/* I686 Memory Manager routines forward references */
/* i686 Memory Manager routines forward references */
XTFASTCALL
VOID
MmZeroPages(IN PVOID Address,
IN ULONG Size);
XTAPI
PMMPTE
MmpGetPdeAddress(PVOID Address);
XTAPI
PMMPTE
MmpGetPteAddress(PVOID Address);
XTAPI
VOID
MmpInitializeArchitecture(VOID);
XTAPI
BOOLEAN
MmpMemoryExtensionEnabled(VOID);
#endif /* __XTOSKRNL_I686_MMI_H */

View File

@@ -43,6 +43,10 @@ XTAPI
VOID
MmFreeProcessorStructures(IN PVOID StructuresData);
XTAPI
VOID
MmInitializeHardware(VOID);
XTAPI
VOID
MmInitializeMemoryManager(VOID);