From 7efcf975fe61b2d20d2379f6151b6cdd99391dff Mon Sep 17 00:00:00 2001 From: Amlal EL Mahrouss Date: Tue, 13 Aug 2024 13:00:12 +0200 Subject: [IMP] Add WIP Thread scheduler inside kernel DLL. [META] PE loader: Fix uneven macros inside PE.hxx. [FIX] Add more checks to Thread loader inside bootloader for PE32+ [IMP] Refactor KernelLoader to Thread inside loader EXE. Signed-off-by: Amlal EL Mahrouss --- Kernel/FirmwareKit/EFI/API.hxx | 10 +++++----- Kernel/KernelKit/PE.hxx | 4 ++-- Kernel/Sources/ThreadScheduler.cxx | 5 +++++ 3 files changed, 12 insertions(+), 7 deletions(-) create mode 100644 Kernel/Sources/ThreadScheduler.cxx (limited to 'Kernel') diff --git a/Kernel/FirmwareKit/EFI/API.hxx b/Kernel/FirmwareKit/EFI/API.hxx index 1466bdd1..7d06cf12 100644 --- a/Kernel/FirmwareKit/EFI/API.hxx +++ b/Kernel/FirmwareKit/EFI/API.hxx @@ -12,6 +12,8 @@ #include #include +#define kNewOSSubsystem 17 + #ifdef __NEWOSLDR__ // forward decl. class BTextWriter; @@ -65,7 +67,7 @@ Bascially frees everything we have in the EFI side. inline UInt32 Platform() noexcept { - return kPEMachineAMD64; + return kPeMachineAMD64; } /*** @@ -105,12 +107,10 @@ inline void InitEFI(EfiSystemTable* SystemTable) noexcept ST->ConOut->EnableCursor(ST->ConOut, false); } -#ifdef __BOOTLOADER__ +#ifdef __NEWOSLDR__ #include -#endif // ifdef __BOOTLOADER__ - -#define kNewOSSubsystem 17 +#endif // ifdef __NEWOSLDR__ #endif /* ifndef __EFI_API__ */ diff --git a/Kernel/KernelKit/PE.hxx b/Kernel/KernelKit/PE.hxx index 2931410f..9d30fd8e 100644 --- a/Kernel/KernelKit/PE.hxx +++ b/Kernel/KernelKit/PE.hxx @@ -21,8 +21,8 @@ #define kMagPE32 0x010b #define kMagPE64 0x020b -#define kPEMachineAMD64 0x8664 -#define kPEMachineARM64 0xaa64 +#define kPeMachineAMD64 0x8664 +#define kPeMachineARM64 0xaa64 typedef struct ExecHeader final { diff --git a/Kernel/Sources/ThreadScheduler.cxx b/Kernel/Sources/ThreadScheduler.cxx new file mode 100644 index 00000000..b2d0b934 --- /dev/null +++ b/Kernel/Sources/ThreadScheduler.cxx @@ -0,0 +1,5 @@ +/* ------------------------------------------- + + Copyright ZKA Technologies + +------------------------------------------- */ \ No newline at end of file -- cgit v1.2.3