diff options
| author | Amlal El Mahrouss <amlal.elmahrouss@icloud.com> | 2024-12-27 12:10:40 +0100 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal.elmahrouss@icloud.com> | 2024-12-27 12:10:40 +0100 |
| commit | 97d65565f4ab1814ea76aafc66e2bae848071a7c (patch) | |
| tree | e007378f4c0f23ee8e6cd9acfec022c1020e75d5 /dev/Kernel/src/UserProcessScheduler.cc | |
| parent | 205605bd8eabe7cdb5ee4cb1b974d613705337a2 (diff) | |
Kernel: Fixes and improvements to scheduler.
Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'dev/Kernel/src/UserProcessScheduler.cc')
| -rw-r--r-- | dev/Kernel/src/UserProcessScheduler.cc | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/dev/Kernel/src/UserProcessScheduler.cc b/dev/Kernel/src/UserProcessScheduler.cc index 3904c222..941ca46e 100644 --- a/dev/Kernel/src/UserProcessScheduler.cc +++ b/dev/Kernel/src/UserProcessScheduler.cc @@ -128,12 +128,10 @@ namespace Kernel this->ProcessMemoryHeap->MemoryPrev = nullptr; this->ProcessMemoryHeap->MemoryNext = nullptr; - - return ErrorOr<VoidPtr>(ptr); } else { - ProcessMemoryHeapList* entry = this->ProcessMemoryHeap; + ProcessMemoryHeapList* entry = this->ProcessMemoryHeap; ProcessMemoryHeapList* prev_entry = nullptr; while (!entry) @@ -152,7 +150,9 @@ namespace Kernel entry->MemoryNext->MemoryNext = nullptr; } - return ErrorOr<VoidPtr>(nullptr); + this->UsedMemory += sz; + + return ErrorOr<VoidPtr>(ptr); } /***********************************************************************************/ @@ -566,13 +566,17 @@ namespace Kernel return false; } + //////////////////////////////////////////////////////////// /// @brief this checks if any process is on the team. + //////////////////////////////////////////////////////////// UserProcessScheduler::operator bool() { return mTeam.AsArray().Count() > 0; } + //////////////////////////////////////////////////////////// /// @brief this checks if no process is on the team. + //////////////////////////////////////////////////////////// bool UserProcessScheduler::operator!() { return mTeam.AsArray().Count() == 0; |
