Refactor memory manager initialization into MM::Manager
Some checks failed
Builds / ExectOS (amd64, debug) (push) Failing after 24s
Builds / ExectOS (amd64, release) (push) Failing after 22s
Builds / ExectOS (i686, debug) (push) Failing after 23s
Builds / ExectOS (i686, release) (push) Failing after 21s

This commit is contained in:
2025-12-13 20:21:08 +01:00
parent ee9514fd5c
commit 237f6a2974
4 changed files with 15 additions and 14 deletions

View File

@@ -56,8 +56,8 @@ list(APPEND XTOSKRNL_SOURCE
${XTOSKRNL_SOURCE_DIR}/mm/${ARCH}/paging.cc ${XTOSKRNL_SOURCE_DIR}/mm/${ARCH}/paging.cc
${XTOSKRNL_SOURCE_DIR}/mm/data.cc ${XTOSKRNL_SOURCE_DIR}/mm/data.cc
${XTOSKRNL_SOURCE_DIR}/mm/hlpool.cc ${XTOSKRNL_SOURCE_DIR}/mm/hlpool.cc
${XTOSKRNL_SOURCE_DIR}/mm/init.cc
${XTOSKRNL_SOURCE_DIR}/mm/kpool.cc ${XTOSKRNL_SOURCE_DIR}/mm/kpool.cc
${XTOSKRNL_SOURCE_DIR}/mm/mmgr.cc
${XTOSKRNL_SOURCE_DIR}/mm/paging.cc ${XTOSKRNL_SOURCE_DIR}/mm/paging.cc
${XTOSKRNL_SOURCE_DIR}/po/idle.cc ${XTOSKRNL_SOURCE_DIR}/po/idle.cc
${XTOSKRNL_SOURCE_DIR}/rtl/${ARCH}/dispatch.cc ${XTOSKRNL_SOURCE_DIR}/rtl/${ARCH}/dispatch.cc

View File

@@ -15,7 +15,7 @@
#include XTOS_ARCH_HEADER(mm, paging.hh) #include XTOS_ARCH_HEADER(mm, paging.hh)
#include <mm/hlpool.hh> #include <mm/hlpool.hh>
#include <mm/init.hh>
#include <mm/kpool.hh> #include <mm/kpool.hh>
#include <mm/mmgr.hh>
#endif /* __XTOSKRNL_MM_HH */ #endif /* __XTOSKRNL_MM_HH */

View File

@@ -1,13 +1,13 @@
/** /**
* PROJECT: ExectOS * PROJECT: ExectOS
* COPYRIGHT: See COPYING.md in the top level directory * COPYRIGHT: See COPYING.md in the top level directory
* FILE: xtoskrnl/includes/mm/init.hh * FILE: xtoskrnl/includes/mm/mmgr.hh
* DESCRIPTION: Memory Manager initialization * DESCRIPTION: Memory Manager
* DEVELOPERS: Aiken Harris <harraiken91@gmail.com> * DEVELOPERS: Aiken Harris <harraiken91@gmail.com>
*/ */
#ifndef __XTOSKRNL_MM_INIT_HH #ifndef __XTOSKRNL_MM_MMGR_HH
#define __XTOSKRNL_MM_INIT_HH #define __XTOSKRNL_MM_MMGR_HH
#include <xtos.hh> #include <xtos.hh>
@@ -15,7 +15,7 @@
/* Memory Manager */ /* Memory Manager */
namespace MM namespace MM
{ {
class Init class Manager
{ {
private: private:
STATIC PLOADER_MEMORY_DESCRIPTOR FreeDescriptor; STATIC PLOADER_MEMORY_DESCRIPTOR FreeDescriptor;
@@ -36,4 +36,4 @@ namespace MM
}; };
} }
#endif /* __XTOSKRNL_MM_INIT_HH */ #endif /* __XTOSKRNL_MM_MMGR_HH */

View File

@@ -1,9 +1,10 @@
/** /**
* PROJECT: ExectOS * PROJECT: ExectOS
* COPYRIGHT: See COPYING.md in the top level directory * COPYRIGHT: See COPYING.md in the top level directory
* FILE: xtoskrnl/mm/init.cc * FILE: xtoskrnl/mm/mmgr.cc
* DESCRIPTION: Memory Manager initialization routines * DESCRIPTION: Memory Manager
* DEVELOPERS: Rafal Kupiec <belliash@codingworkshop.eu.org> * DEVELOPERS: Rafal Kupiec <belliash@codingworkshop.eu.org>
* Aiken Harris <harraiken91@gmail.com>
*/ */
#include <xtos.hh> #include <xtos.hh>
@@ -18,7 +19,7 @@
*/ */
XTAPI XTAPI
VOID VOID
MM::Init::InitializeMemoryManager(VOID) MM::Manager::InitializeMemoryManager(VOID)
{ {
/* Scan memory descriptors provided by the boot loader */ /* Scan memory descriptors provided by the boot loader */
ScanMemoryDescriptors(); ScanMemoryDescriptors();
@@ -44,7 +45,7 @@ MM::Init::InitializeMemoryManager(VOID)
*/ */
XTAPI XTAPI
VOID VOID
MM::Init::ScanMemoryDescriptors(VOID) MM::Manager::ScanMemoryDescriptors(VOID)
{ {
PLIST_ENTRY LoaderMemoryDescriptors, MemoryMappings; PLIST_ENTRY LoaderMemoryDescriptors, MemoryMappings;
PLOADER_MEMORY_DESCRIPTOR MemoryDescriptor; PLOADER_MEMORY_DESCRIPTOR MemoryDescriptor;
@@ -124,7 +125,7 @@ MM::Init::ScanMemoryDescriptors(VOID)
*/ */
XTAPI XTAPI
BOOLEAN BOOLEAN
MM::Init::VerifyMemoryTypeFree(LOADER_MEMORY_TYPE MemoryType) MM::Manager::VerifyMemoryTypeFree(LOADER_MEMORY_TYPE MemoryType)
{ {
return ((MemoryType == LoaderFree) || (MemoryType == LoaderFirmwareTemporary) || return ((MemoryType == LoaderFree) || (MemoryType == LoaderFirmwareTemporary) ||
(MemoryType == LoaderLoadedProgram) || (MemoryType == LoaderOsloaderStack)); (MemoryType == LoaderLoadedProgram) || (MemoryType == LoaderOsloaderStack));
@@ -142,7 +143,7 @@ MM::Init::VerifyMemoryTypeFree(LOADER_MEMORY_TYPE MemoryType)
*/ */
XTAPI XTAPI
BOOLEAN BOOLEAN
MM::Init::VerifyMemoryTypeInvisible(LOADER_MEMORY_TYPE MemoryType) MM::Manager::VerifyMemoryTypeInvisible(LOADER_MEMORY_TYPE MemoryType)
{ {
return ((MemoryType == LoaderFirmwarePermanent) || return ((MemoryType == LoaderFirmwarePermanent) ||
(MemoryType == LoaderSpecialMemory) || (MemoryType == LoaderSpecialMemory) ||