summaryrefslogtreecommitdiffhomepage
path: root/Kernel/Sources/ProcessScheduler.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'Kernel/Sources/ProcessScheduler.cxx')
-rw-r--r--Kernel/Sources/ProcessScheduler.cxx42
1 files changed, 21 insertions, 21 deletions
diff --git a/Kernel/Sources/ProcessScheduler.cxx b/Kernel/Sources/ProcessScheduler.cxx
index 1e4537f1..bf088cc6 100644
--- a/Kernel/Sources/ProcessScheduler.cxx
+++ b/Kernel/Sources/ProcessScheduler.cxx
@@ -9,7 +9,7 @@
/// @brief MicroKernel process scheduler.
/***********************************************************************************/
-#include <KernelKit/ProcessScheduler.hpp>
+#include <KernelKit/ProcessScheduler.hxx>
#include <KernelKit/SMPManager.hpp>
#include <KernelKit/KernelHeap.hpp>
#include <NewKit/String.hpp>
@@ -42,7 +42,7 @@ namespace NewOS
void ProcessHeader::Crash()
{
- kcout << this->Name << ": crashed. (id = " << number(39);
+ kcout << this->Name << ": crashed. (id = " << number(kErrorProcessFault);
kcout << ")\r";
if (this->Ring != kRingUserKind)
@@ -163,11 +163,11 @@ namespace NewOS
void ProcessHeader::Exit(Int32 exit_code)
{
if (this->ProcessId !=
- ProcessScheduler::Shared().Leak().GetCurrent().Leak().ProcessId)
+ ProcessScheduler::The().Leak().GetCurrent().Leak().ProcessId)
ke_stop(RUNTIME_CHECK_PROCESS);
if (this->Ring == (Int32)ProcessSelector::kRingKernel &&
- ProcessScheduler::Shared().Leak().GetCurrent().Leak().Ring > 0)
+ ProcessScheduler::The().Leak().GetCurrent().Leak().Ring > 0)
ke_stop(RUNTIME_CHECK_PROCESS);
kLastExitCode = exit_code;
@@ -193,7 +193,7 @@ namespace NewOS
this->Image = nullptr;
this->StackFrame = nullptr;
- ProcessScheduler::Shared().Leak().Remove(this->ProcessId);
+ ProcessScheduler::The().Leak().Remove(this->ProcessId);
}
/// @brief Add process to list.
@@ -206,7 +206,7 @@ namespace NewOS
if (!process.Leak().Image)
{
- if (process.Leak().Kind != ProcessHeader::kLibKind)
+ if (process.Leak().Kind != ProcessHeader::kShLibKind)
{
return -kErrorNoEntrypoint;
}
@@ -223,7 +223,7 @@ namespace NewOS
/// Create heap according to type of process.
if (process.Leak().Kind == ProcessHeader::kAppKind)
process.Leak().HeapPtr = rt_new_heap(kUserHeapUser | kUserHeapRw);
- else if (process.Leak().Kind == ProcessHeader::kLibKind)
+ else if (process.Leak().Kind == ProcessHeader::kShLibKind)
process.Leak().HeapPtr = rt_new_heap(kUserHeapUser | kUserHeapRw | kUserHeapShared);
else
process.Leak().HeapPtr = rt_new_heap(kUserHeapDriver | kUserHeapRw);
@@ -301,7 +301,7 @@ namespace NewOS
/// @brief Shared instance of the process scheduler.
/// @return
- Ref<ProcessScheduler&> ProcessScheduler::Shared()
+ Ref<ProcessScheduler&> ProcessScheduler::The()
{
static ProcessScheduler ref;
return {ref};
@@ -319,7 +319,7 @@ namespace NewOS
PID& ProcessHelper::GetCurrentPID()
{
kcout << "ProcessHelper::GetCurrentPID: Leaking ProcessId...\r";
- return ProcessScheduler::Shared().Leak().GetCurrent().Leak().ProcessId;
+ return ProcessScheduler::The().Leak().GetCurrent().Leak().ProcessId;
}
/// @brief Check if process can be schedulded.
@@ -355,13 +355,13 @@ namespace NewOS
bool ProcessHelper::StartScheduling()
{
if (ProcessHelper::CanBeScheduled(
- ProcessScheduler::Shared().Leak().GetCurrent()))
+ ProcessScheduler::The().Leak().GetCurrent()))
{
- --ProcessScheduler::Shared().Leak().GetCurrent().Leak().PTime;
+ --ProcessScheduler::The().Leak().GetCurrent().Leak().PTime;
return false;
}
- auto processRef = ProcessScheduler::Shared().Leak();
+ auto processRef = ProcessScheduler::The().Leak();
if (!processRef)
return false; // we have nothing to schedule. simply return.
@@ -385,29 +385,29 @@ namespace NewOS
if (!the_stack || new_pid < 0)
return false;
- for (SizeT index = 0UL; index < SMPManager::Shared().Leak().Count(); ++index)
+ for (SizeT index = 0UL; index < SMPManager::The().Leak().Count(); ++index)
{
- if (SMPManager::Shared().Leak()[index].Leak().Kind() == kInvalidHart)
+ if (SMPManager::The().Leak()[index].Leak().Kind() == kInvalidHart)
continue;
- if (SMPManager::Shared().Leak()[index].Leak().StackFrame() == the_stack)
+ if (SMPManager::The().Leak()[index].Leak().StackFrame() == the_stack)
{
- SMPManager::Shared().Leak()[index].Leak().Busy(false);
+ SMPManager::The().Leak()[index].Leak().Busy(false);
continue;
}
- if (SMPManager::Shared().Leak()[index].Leak().IsBusy())
+ if (SMPManager::The().Leak()[index].Leak().IsBusy())
continue;
- if (SMPManager::Shared().Leak()[index].Leak().Kind() !=
+ if (SMPManager::The().Leak()[index].Leak().Kind() !=
ThreadKind::kHartBoot &&
- SMPManager::Shared().Leak()[index].Leak().Kind() !=
+ SMPManager::The().Leak()[index].Leak().Kind() !=
ThreadKind::kHartSystemReserved)
{
- SMPManager::Shared().Leak()[index].Leak().Busy(true);
+ SMPManager::The().Leak()[index].Leak().Busy(true);
ProcessHelper::GetCurrentPID() = new_pid;
- return SMPManager::Shared().Leak()[index].Leak().Switch(the_stack);
+ return SMPManager::The().Leak()[index].Leak().Switch(the_stack);
}
}