diff options
| author | Amlal El Mahrouss <amlal.elmahrouss@icloud.com> | 2025-03-23 19:13:48 +0100 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal.elmahrouss@icloud.com> | 2025-03-23 19:15:17 +0100 |
| commit | a13e1c0911c0627184bc38f18c7fdda64447b3ad (patch) | |
| tree | 073a62c09bf216e85a3f310376640fa1805147f9 /dev/Kernel/src/Pmm.cc | |
| parent | 149fa096eb306d03686b3b67e813cf1a78e08cd0 (diff) | |
meta(kernel): Reworked repository's filesystem structure.
Removing useless parts of the project too.
Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'dev/Kernel/src/Pmm.cc')
| -rw-r--r-- | dev/Kernel/src/Pmm.cc | 98 |
1 files changed, 0 insertions, 98 deletions
diff --git a/dev/Kernel/src/Pmm.cc b/dev/Kernel/src/Pmm.cc deleted file mode 100644 index b3d5e79e..00000000 --- a/dev/Kernel/src/Pmm.cc +++ /dev/null @@ -1,98 +0,0 @@ -/* ------------------------------------------- - - Copyright (C) 2024-2025, Amlal EL Mahrouss, all rights reserved. - -------------------------------------------- */ - -#include <KernelKit/DebugOutput.h> -#include <NewKit/Pmm.h> - -#if defined(__NE_ARM64__) -#include <HALKit/ARM64/Processor.h> -#endif // defined(__NE_ARM64__) - -#if defined(__NE_AMD64__) -#include <HALKit/AMD64/Processor.h> -#endif // defined(__NE_AMD64__) - -namespace NeOS -{ - /***********************************************************************************/ - /// @brief Pmm constructor. - /***********************************************************************************/ - Pmm::Pmm() - : fPageMgr() - { - kout << "[PMM] Allocate PageMemoryMgr"; - } - - Pmm::~Pmm() = default; - - /***********************************************************************************/ - /// @param If this returns Null pointer, enter emergency mode. - /// @param user is this a user page? - /// @param readWrite is it r/w? - /***********************************************************************************/ - Ref<PTEWrapper> Pmm::RequestPage(Boolean user, Boolean readWrite) - { - PTEWrapper pt = fPageMgr.Leak().Request(user, readWrite, false, kPageSize); - - if (pt.fPresent) - { - kout << "[PMM]: Allocation failed.\r"; - return {}; - } - - return Ref<PTEWrapper>(pt); - } - - Boolean Pmm::FreePage(Ref<PTEWrapper> PageRef) - { - if (!PageRef) - return false; - - PageRef.Leak().fPresent = false; - - return true; - } - - Boolean Pmm::TogglePresent(Ref<PTEWrapper> PageRef, Boolean Enable) - { - if (!PageRef) - return false; - - PageRef.Leak().fPresent = Enable; - - return true; - } - - Boolean Pmm::ToggleUser(Ref<PTEWrapper> PageRef, Boolean Enable) - { - if (!PageRef) - return false; - - PageRef.Leak().fRw = Enable; - - return true; - } - - Boolean Pmm::ToggleRw(Ref<PTEWrapper> PageRef, Boolean Enable) - { - if (!PageRef) - return false; - - PageRef.Leak().fRw = Enable; - - return true; - } - - Boolean Pmm::ToggleShare(Ref<PTEWrapper> PageRef, Boolean Enable) - { - if (!PageRef) - return false; - - PageRef.Leak().fShareable = Enable; - - return true; - } -} // namespace NeOS |
