summaryrefslogtreecommitdiffhomepage
path: root/dev/ZKA/KernelKit/HardwareThreadScheduler.hxx
diff options
context:
space:
mode:
authorAmlal <amlal@el-mahrouss-logic.com>2024-09-11 11:45:52 +0200
committerAmlal <amlal@el-mahrouss-logic.com>2024-09-11 11:45:52 +0200
commit8b6cc0cbe5e19e8114a65785e24bbcf4d22e0d2f (patch)
tree3713620f703318ab9fb9ad6906263e68c64ee789 /dev/ZKA/KernelKit/HardwareThreadScheduler.hxx
parent56fcf152004c913bddd19b6eeac1f96eb2c9b869 (diff)
IMP: Better architecture for task scheduling.
Signed-off-by: Amlal <amlal@el-mahrouss-logic.com>
Diffstat (limited to 'dev/ZKA/KernelKit/HardwareThreadScheduler.hxx')
-rw-r--r--dev/ZKA/KernelKit/HardwareThreadScheduler.hxx17
1 files changed, 16 insertions, 1 deletions
diff --git a/dev/ZKA/KernelKit/HardwareThreadScheduler.hxx b/dev/ZKA/KernelKit/HardwareThreadScheduler.hxx
index 193f5bff..302724fa 100644
--- a/dev/ZKA/KernelKit/HardwareThreadScheduler.hxx
+++ b/dev/ZKA/KernelKit/HardwareThreadScheduler.hxx
@@ -87,7 +87,7 @@ namespace Kernel
/// \brief Class to manage the thread scheduling.
///
- class HardwareThreadScheduler final
+ class HardwareThreadScheduler final : public ISchedulerObject
{
private:
friend class UserProcessHelper;
@@ -105,6 +105,21 @@ namespace Kernel
bool operator!() noexcept;
operator bool() noexcept;
+ const Bool IsUser() override
+ {
+ return Yes;
+ }
+
+ const Bool IsKernel() override
+ {
+ return No;
+ }
+
+ const Bool HasMP() override
+ {
+ return kHandoverHeader->f_HardwareTables.f_MultiProcessingEnabled;
+ }
+
public:
/// @brief Shared instance of the MP Mgr.
/// @return the reference to the mp manager class.