summaryrefslogtreecommitdiffhomepage
path: root/dev/kernel/KernelKit/KernelTaskScheduler.h
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal@nekernel.org>2025-11-23 21:06:27 -0500
committerGitHub <noreply@github.com>2025-11-23 21:06:27 -0500
commit23040fad647634c08697451fc22ee2ca999629c8 (patch)
tree72888f88c7728c82f3f6df1f4f70591de15eab36 /dev/kernel/KernelKit/KernelTaskScheduler.h
parente5cc7351f0577b54c528fb827a7c7e6306c3e843 (diff)
parent83d870e58457a1d335a1d9b9966a6a1887cc297b (diff)
Merge pull request #81 from nekernel-org/dev
feat! breaking changes on kernel sources.
Diffstat (limited to 'dev/kernel/KernelKit/KernelTaskScheduler.h')
-rw-r--r--dev/kernel/KernelKit/KernelTaskScheduler.h47
1 files changed, 0 insertions, 47 deletions
diff --git a/dev/kernel/KernelKit/KernelTaskScheduler.h b/dev/kernel/KernelKit/KernelTaskScheduler.h
deleted file mode 100644
index 9bfce1d6..00000000
--- a/dev/kernel/KernelKit/KernelTaskScheduler.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/* ========================================
-
- Copyright (C) 2025, Amlal El Mahrouss, licensed under the Apache 2.0 license.
-
-======================================== */
-
-#pragma once
-
-/// @file KernelTaskScheduler.h
-/// @brief Kernel Task Scheduler header file.
-/// @author Amlal El Mahrouss (amlal@nekernel.org)
-
-#include <ArchKit/ArchKit.h>
-#include <KernelKit/CoreProcessScheduler.h>
-#include <KernelKit/LockDelegate.h>
-
-namespace Kernel {
-class KernelTaskHelper;
-
-typedef ProcessID KID;
-
-/// @brief Equivalent of USER_PROCESS, but for kernel tasks.
-/// @author Amlal
-class KERNEL_TASK final {
- public:
- Char Name[kSchedNameLen] = {"KERNEL_TASK"};
- ProcessSubsystem SubSystem{ProcessSubsystem::kProcessSubsystemKernel};
- HAL::StackFramePtr StackFrame{nullptr};
- UInt8* StackReserve{nullptr};
- SizeT StackSize{kSchedMaxStackSz};
- ProcessImage Image{};
- /// @brief a KID is a Kernel ID, it is used to find a task running within
- /// the kernel.
- KID Kid{0};
-};
-
-/// @brief Equivalent of UserProcessHelper, but for kernel tasks.
-/// @author Amlal
-class KernelTaskHelper final {
- public:
- STATIC Bool Add(HAL::StackFramePtr frame_ptr, ProcessID new_kid);
- STATIC Bool Remove(const KID kid);
- STATIC Bool CanBeScheduled(const KERNEL_TASK& process);
- STATIC ErrorOr<KID> TheCurrentKID();
- STATIC SizeT StartScheduling();
-};
-} // namespace Kernel \ No newline at end of file