summaryrefslogtreecommitdiffhomepage
path: root/Kernel/Sources/ProcessScheduler.cxx
diff options
context:
space:
mode:
authorAmlal EL Mahrouss <amlalelmahrouss@icloud.com>2024-07-28 08:37:45 +0200
committerAmlal EL Mahrouss <amlalelmahrouss@icloud.com>2024-07-28 10:07:41 +0200
commitd42e9fa42af70105346f14c8b48f60cd3f4ea845 (patch)
tree34b58def6fb1129028276e90c2a1f594634b6c1e /Kernel/Sources/ProcessScheduler.cxx
parent3feb5cb72e3e422e804098e2fdcb0bd3e7961627 (diff)
[IMP] New Storage.hpp inside StorageKit.
[REFACTOR] Process heap adjustements. [WIP] SMP and Ring-3 switch for scheduler core. Signed-off-by: Amlal EL Mahrouss <amlalelmahrouss@icloud.com>
Diffstat (limited to 'Kernel/Sources/ProcessScheduler.cxx')
-rw-r--r--Kernel/Sources/ProcessScheduler.cxx8
1 files changed, 7 insertions, 1 deletions
diff --git a/Kernel/Sources/ProcessScheduler.cxx b/Kernel/Sources/ProcessScheduler.cxx
index 8119c11e..bfa6fddf 100644
--- a/Kernel/Sources/ProcessScheduler.cxx
+++ b/Kernel/Sources/ProcessScheduler.cxx
@@ -43,10 +43,16 @@ namespace Kernel
void ProcessHeader::Crash()
{
- kcout << (*this->Name == 0 ? "Unknown" : this->Name) << ": crashed. (id = ";
+ kcout << (*this->Name == 0 ? "Kernel" : this->Name) << ": crashed. (id = ";
kcout.Number(kErrorProcessFault);
kcout << ")\r";
+ if (Kernel::ProcessScheduler::The().Leak().CurrentTeam().AsArray().Count() < 1)
+ {
+ kcout << "*** BAD PROCESS ***\rTerminating as we are the only process...\r";
+ ke_stop(RUNTIME_CHECK_PROCESS);
+ }
+
this->Exit(kErrorProcessFault);
}