From 995e1580f9291c5b8e95687c59b95e561c0c4569 Mon Sep 17 00:00:00 2001 From: Amlal El Mahrouss Date: Fri, 29 Mar 2024 23:10:36 +0100 Subject: Kernel: See below. - Fix ACPI. - Parsing SDT correctly now. - Fix ke_runtime_check line endings. - Update Kernel heap magic and add padding to header. - Document Code Manager add limit for process teams. - Add execute_from_image for Code Manager. - Add loop for scheduler inside RuntimeMain. - Set SMP core to 4 for testing purposes. - Check for ACPI 2.x+ Signed-off-by: Amlal El Mahrouss --- Private/KernelKit/CodeManager.hpp | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) (limited to 'Private/KernelKit/CodeManager.hpp') diff --git a/Private/KernelKit/CodeManager.hpp b/Private/KernelKit/CodeManager.hpp index 5b06e4a4..adb37ff0 100644 --- a/Private/KernelKit/CodeManager.hpp +++ b/Private/KernelKit/CodeManager.hpp @@ -21,13 +21,12 @@ #define kUPPNameLen 64 namespace NewOS { -/// \brief Much like Mac OS's UPP. -/// This is read-only by design. -/// It handles different kind of code. -/// ARM <-> AMD64 for example. -typedef struct UniversalProcedureTable final { - const Char NAME[kUPPNameLen]; - const VoidPtr TRAP; - const SizeT ARCH; -} PACKED UniversalProcedureTableType; +/// @brief Main process entrypoint. +typedef void (*MainKind)(void); + +/// @brief Executes a new process from memory. +/// @param main +/// @param processName +/// @return +bool execute_from_image(MainKind main, const char* processName); } // namespace NewOS \ No newline at end of file -- cgit v1.2.3