summaryrefslogtreecommitdiffhomepage
path: root/Kernel/KernelKit/ProcessScheduler.hxx
diff options
context:
space:
mode:
authorAmlal EL Mahrouss <amlalelmahrouss@icloud.com>2024-07-31 16:40:11 +0200
committerAmlal EL Mahrouss <amlalelmahrouss@icloud.com>2024-07-31 16:42:42 +0200
commit63dc1384bcbf8caf4ca53c715628db2c36b0b096 (patch)
tree2937e78fc2f0e729052660bdd1c74fdacf57d0ec /Kernel/KernelKit/ProcessScheduler.hxx
parent59e0caa55e97f1a998904f404e5fedac3b2b0ec6 (diff)
[IMP] SEE BELOW.
- Support for shared libraries inside a process. - SMP improvements, add the PROCESS_CONTROL_BLOCK, to handle task switching. - Add MUST_PASS in HardwareTimer class. - Add rtl.internal.inl for SCM internal implementation. Signed-off-by: Amlal EL Mahrouss <amlalelmahrouss@icloud.com>
Diffstat (limited to 'Kernel/KernelKit/ProcessScheduler.hxx')
-rw-r--r--Kernel/KernelKit/ProcessScheduler.hxx10
1 files changed, 7 insertions, 3 deletions
diff --git a/Kernel/KernelKit/ProcessScheduler.hxx b/Kernel/KernelKit/ProcessScheduler.hxx
index 5c27af79..b174858a 100644
--- a/Kernel/KernelKit/ProcessScheduler.hxx
+++ b/Kernel/KernelKit/ProcessScheduler.hxx
@@ -36,10 +36,11 @@ namespace Kernel
//! @brief Process name length.
inline constexpr SizeT kProcessLen = 256U;
- //! @brief Forward declaration.
+ //! @brief Forward declarations.
class ProcessHeader;
class ProcessScheduler;
class ProcessHelper;
+ class SharedObject;
//! @brief Process status enum.
enum class ProcessStatus : Int32
@@ -144,7 +145,7 @@ namespace Kernel
const Int32& GetExitCode() noexcept;
public:
- Char Name[kProcessLen] = {"Process"};
+ Char Name[kProcessLen] = {"Unknown Process"};
ProcessSubsystem SubSystem{ProcessSubsystem::eProcessSubsystemInvalid};
ProcessSelector Selector{ProcessSelector::kRingUser};
HAL::StackFramePtr StackFrame{nullptr};
@@ -156,7 +157,10 @@ namespace Kernel
ImagePtr Image{nullptr};
HeapPtrKind HeapPtr{nullptr};
- // memory usage
+ // shared library handle, reserved for .lib only.
+ SharedObject* SharedLibObjectPtr{nullptr};
+
+ // Memory usage.
SizeT UsedMemory{0};
SizeT FreeMemory{0};