summaryrefslogtreecommitdiffhomepage
path: root/Private/Source
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-01-26 22:49:10 +0100
committerAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-01-26 22:49:10 +0100
commit44a081a4442181b208c09c6f748124c9d23b61fd (patch)
treed0f161eb8d3ea5997895db37381c7ea853eae2d1 /Private/Source
parenteba8b7ddd0a455d9e49f32dcae712c5612c0093c (diff)
Kernel: Adding NewFS I/O support, Fix SMPManager and new Kits in /Public/.
New dependency: zlib. Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'Private/Source')
-rw-r--r--Private/Source/NewFS-IO.cxx15
-rw-r--r--Private/Source/SMPManager.cxx10
2 files changed, 24 insertions, 1 deletions
diff --git a/Private/Source/NewFS-IO.cxx b/Private/Source/NewFS-IO.cxx
new file mode 100644
index 00000000..ce81db40
--- /dev/null
+++ b/Private/Source/NewFS-IO.cxx
@@ -0,0 +1,15 @@
+/*
+* ========================================================
+*
+* hCore
+* Copyright 2024 Mahrouss Logic, all rights reserved.
+*
+* ========================================================
+*/
+
+#include <FSKit/NewFS.hxx>
+#include <Private/KernelKit/FileManager.hpp>
+#include <Private/KernelKit/DriveManager.hpp>
+
+/// bugs 0
+
diff --git a/Private/Source/SMPManager.cxx b/Private/Source/SMPManager.cxx
index 4168a458..1c73cb82 100644
--- a/Private/Source/SMPManager.cxx
+++ b/Private/Source/SMPManager.cxx
@@ -11,6 +11,8 @@
#include <KernelKit/ProcessManager.hpp>
#include <ArchKit/Arch.hpp>
+/// BUGS: 0
+
//! This file handles multi processing in hCore.
//! Multi processing is needed for File I/O, networking and scheduling.
@@ -37,6 +39,8 @@ namespace hCore
bool ProcessorCore::IsBusy() noexcept { return m_Busy; }
+ /// @brief Get processor stack frame.
+
HAL::StackFrame* ProcessorCore::StackFrame() noexcept
{
MUST_PASS(m_Stack);
@@ -47,6 +51,8 @@ namespace hCore
ProcessorCore::operator bool() { return m_Stack; }
+ /// @brief Wakeup the processor.
+
void ProcessorCore::Wake(const bool wakeup) noexcept
{
m_Wakeup = wakeup;
@@ -111,9 +117,11 @@ namespace hCore
m_ThreadList[idx].Leak().Leak().Busy(true);
- bool ret = rt_do_context_switch(rt_get_current_context(), stack) == 0;
+ bool ret = rt_do_context_switch(rt_get_current_context(), stack) == 0;
m_ThreadList[idx].Leak().Leak().Busy(false);
+
+ return ret;
}
return false;