summaryrefslogtreecommitdiffhomepage
path: root/Kernel/Sources
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal@el-mahrouss-logic.com>2024-05-27 13:50:07 +0200
committerAmlal El Mahrouss <amlal@el-mahrouss-logic.com>2024-05-27 13:50:07 +0200
commitce84bea215424ff36a2c18cab67835edfa8f71b5 (patch)
treeef11d2595352666d67f4d5f79eee747a3cafda63 /Kernel/Sources
parent030a818fd31762b47c4fdf34c67c306ec069ad09 (diff)
MHR-23: :boom: Change ::Shared() to ::The().
Signed-off-by: Amlal El Mahrouss <amlal@el-mahrouss-logic.com>
Diffstat (limited to 'Kernel/Sources')
-rw-r--r--Kernel/Sources/AppMain.cxx4
-rw-r--r--Kernel/Sources/CodeManager.cxx2
-rw-r--r--Kernel/Sources/PEFCodeManager.cxx2
-rw-r--r--Kernel/Sources/PEFSharedObjectRT.cxx12
-rw-r--r--Kernel/Sources/ProcessScheduler.cxx34
-rw-r--r--Kernel/Sources/SMPManager.cxx2
-rw-r--r--Kernel/Sources/ThreadLocalStorage.cxx2
-rw-r--r--Kernel/Sources/UserHeap.cxx8
8 files changed, 35 insertions, 31 deletions
diff --git a/Kernel/Sources/AppMain.cxx b/Kernel/Sources/AppMain.cxx
index 9ca224c3..692d4376 100644
--- a/Kernel/Sources/AppMain.cxx
+++ b/Kernel/Sources/AppMain.cxx
@@ -206,7 +206,7 @@ namespace NewOS::Detail
NewOS::kcout << "SystemLoader: Exiting process, we're done initializing stuff...";
- NewOS::ProcessScheduler::Shared().Leak().GetCurrent().Leak().Exit(0);
+ NewOS::ProcessScheduler::The().Leak().GetCurrent().Leak().Exit(0);
}
} // namespace NewOS::Detail
@@ -221,5 +221,5 @@ EXTERN_C NewOS::Void AppMain(NewOS::Void)
auto cLoaderName = "SystemLoader";
NewOS::execute_from_image(NewOS::Detail::AppSystemLoader, cLoaderName);
- while (NewOS::ProcessScheduler::Shared().Leak().Run() > 0) {}
+ while (NewOS::ProcessScheduler::The().Leak().Run() > 0) {}
}
diff --git a/Kernel/Sources/CodeManager.cxx b/Kernel/Sources/CodeManager.cxx
index 358481f6..7483b32f 100644
--- a/Kernel/Sources/CodeManager.cxx
+++ b/Kernel/Sources/CodeManager.cxx
@@ -25,6 +25,6 @@ namespace NewOS
Ref<ProcessHeader> refProc = proc;
- return ProcessScheduler::Shared().Leak().Add(refProc);
+ return ProcessScheduler::The().Leak().Add(refProc);
}
} // namespace NewOS \ No newline at end of file
diff --git a/Kernel/Sources/PEFCodeManager.cxx b/Kernel/Sources/PEFCodeManager.cxx
index 6fa7e6a1..c0997dff 100644
--- a/Kernel/Sources/PEFCodeManager.cxx
+++ b/Kernel/Sources/PEFCodeManager.cxx
@@ -195,7 +195,7 @@ namespace NewOS
proc.Kind = procKind;
- return ProcessScheduler::Shared().Leak().Add(refProc);
+ return ProcessScheduler::The().Leak().Add(refProc);
}
} // namespace Utils
diff --git a/Kernel/Sources/PEFSharedObjectRT.cxx b/Kernel/Sources/PEFSharedObjectRT.cxx
index 20af1b98..33df8857 100644
--- a/Kernel/Sources/PEFSharedObjectRT.cxx
+++ b/Kernel/Sources/PEFSharedObjectRT.cxx
@@ -41,7 +41,7 @@ EXTERN_C SharedObjectPtr rt_library_init(void)
if (!library)
{
- ProcessScheduler::Shared().Leak().GetCurrent().Leak().Crash();
+ ProcessScheduler::The().Leak().GetCurrent().Leak().Crash();
return nullptr;
}
@@ -50,17 +50,17 @@ EXTERN_C SharedObjectPtr rt_library_init(void)
if (!library->Get())
{
- ProcessScheduler::Shared().Leak().GetCurrent().Leak().Crash();
+ ProcessScheduler::The().Leak().GetCurrent().Leak().Crash();
return nullptr;
}
library->Get()->fImageObject =
- ProcessScheduler::Shared().Leak().GetCurrent().Leak().Image;
+ ProcessScheduler::The().Leak().GetCurrent().Leak().Image;
if (!library->Get()->fImageObject)
{
- ProcessScheduler::Shared().Leak().GetCurrent().Leak().Crash();
+ ProcessScheduler::The().Leak().GetCurrent().Leak().Crash();
return nullptr;
}
@@ -85,7 +85,7 @@ EXTERN_C Void rt_library_free(SharedObjectPtr lib, bool* successful)
if (lib == nullptr)
{
*successful = false;
- ProcessScheduler::Shared().Leak().GetCurrent().Leak().Crash();
+ ProcessScheduler::The().Leak().GetCurrent().Leak().Crash();
}
delete lib->Get();
@@ -102,6 +102,6 @@ EXTERN_C Void rt_library_free(SharedObjectPtr lib, bool* successful)
/// @param
EXTERN_C void __mh_purecall(void)
{
- ProcessScheduler::Shared().Leak().GetCurrent().Leak().Crash();
+ ProcessScheduler::The().Leak().GetCurrent().Leak().Crash();
return;
}
diff --git a/Kernel/Sources/ProcessScheduler.cxx b/Kernel/Sources/ProcessScheduler.cxx
index 1e4537f1..63d566b7 100644
--- a/Kernel/Sources/ProcessScheduler.cxx
+++ b/Kernel/Sources/ProcessScheduler.cxx
@@ -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.
@@ -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);
}
}
diff --git a/Kernel/Sources/SMPManager.cxx b/Kernel/Sources/SMPManager.cxx
index 90a9d440..b2f239e3 100644
--- a/Kernel/Sources/SMPManager.cxx
+++ b/Kernel/Sources/SMPManager.cxx
@@ -121,7 +121,7 @@ namespace NewOS
SMPManager::~SMPManager() = default;
/// @brief Shared singleton function
- Ref<SMPManager> SMPManager::Shared()
+ Ref<SMPManager> SMPManager::The()
{
static SMPManager manager;
return {manager};
diff --git a/Kernel/Sources/ThreadLocalStorage.cxx b/Kernel/Sources/ThreadLocalStorage.cxx
index c31ae1c2..2d7e61eb 100644
--- a/Kernel/Sources/ThreadLocalStorage.cxx
+++ b/Kernel/Sources/ThreadLocalStorage.cxx
@@ -51,7 +51,7 @@ EXTERN_C Void tls_check_syscall_impl(NewOS::HAL::StackFramePtr stackPtr) noexcep
if (!tls_check_tib(tib))
{
kcout << "New OS: Verification failed, Crashing...\r";
- ProcessScheduler::Shared().Leak().GetCurrent().Leak().Crash();
+ ProcessScheduler::The().Leak().GetCurrent().Leak().Crash();
}
kcout << "New OS: Verification succeeded! Keeping on...\r";
diff --git a/Kernel/Sources/UserHeap.cxx b/Kernel/Sources/UserHeap.cxx
index 02c4c753..da5d7b5a 100644
--- a/Kernel/Sources/UserHeap.cxx
+++ b/Kernel/Sources/UserHeap.cxx
@@ -37,8 +37,9 @@ namespace NewOS
*/
class UserHeapManager final
{
- public:
UserHeapManager() = delete;
+
+ public:
~UserHeapManager() = default;
public:
@@ -46,14 +47,17 @@ namespace NewOS
{
return s_NumPools;
}
+
STATIC Ref<Pmm>& Leak()
{
return s_Pmm;
}
+
STATIC Boolean& IsEnabled()
{
return s_PoolsAreEnabled;
}
+
STATIC MutableArray<Ref<PTEWrapper>>& The()
{
return s_Pool;
@@ -146,7 +150,7 @@ namespace NewOS
{
if (!poolHdr->fFree)
{
- ProcessScheduler::Shared().Leak().GetCurrent().Leak().Crash();
+ ProcessScheduler::The().Leak().GetCurrent().Leak().Crash();
return;
}