From 33cf55c0f5855a55e54a83eb3fee58776e789ed8 Mon Sep 17 00:00:00 2001 From: Amlal El Mahrouss Date: Sat, 7 Mar 2026 19:50:39 +0100 Subject: [CHORE] KernelTask system for DDK drivers. Signed-off-by: Amlal El Mahrouss --- src/kernel/KernelKit/KernelTaskScheduler.h | 52 ------------------------------ 1 file changed, 52 deletions(-) delete mode 100644 src/kernel/KernelKit/KernelTaskScheduler.h (limited to 'src/kernel/KernelKit/KernelTaskScheduler.h') diff --git a/src/kernel/KernelKit/KernelTaskScheduler.h b/src/kernel/KernelKit/KernelTaskScheduler.h deleted file mode 100644 index cdd65522..00000000 --- a/src/kernel/KernelKit/KernelTaskScheduler.h +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2024-2026, Amlal El Mahrouss (amlal@nekernel.org) -// Licensed under the Apache License, Version 2.0 (see LICENSE file) -// Official repository: https://github.com/ne-foss-org/nekernel - -#ifndef KERNELKIT_KERNELTASKSCHEDULER_H -#define KERNELKIT_KERNELTASKSCHEDULER_H - -/// @file KernelTaskScheduler.h -/// @brief Kernel Task Scheduler backend file. -/// @author Amlal El Mahrouss (amlal@nekernel.org) - -#include -#include -#include - -namespace Kernel { - -class KernelTaskHelper; - -using KID = ProcessID; - -/// @brief Equivalent of UserProcess, but for kernel tasks. -/// @author Amlal -class KernelTask final { - public: - Char Name[kSchedNameLen] = {"KernelTask"}; - 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{}; - - NE_NON_VETTABLE; -}; - -/// @brief Equivalent of UserProcessHelper, but for kernel tasks. -/// @author Amlal -class KernelTaskHelper final { - public: - STATIC Bool Add(HAL::StackFramePtr frame_ptr, KID kid); - STATIC Bool Remove(const KID kid); - STATIC Bool CanBeScheduled(const KernelTask& process); - STATIC ErrorOr TheCurrentKID(); - STATIC SizeT StartScheduling(); -}; - -} // namespace Kernel - -#endif -- cgit v1.2.3