From 97d65565f4ab1814ea76aafc66e2bae848071a7c Mon Sep 17 00:00:00 2001 From: Amlal El Mahrouss Date: Fri, 27 Dec 2024 12:10:40 +0100 Subject: Kernel: Fixes and improvements to scheduler. Signed-off-by: Amlal El Mahrouss --- dev/Kernel/src/UserProcessScheduler.cc | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'dev/Kernel/src/UserProcessScheduler.cc') 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(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(nullptr); + this->UsedMemory += sz; + + return ErrorOr(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; -- cgit v1.2.3