From 23285ec1b8d00dd8753eefe193d0547659cc3c4d Mon Sep 17 00:00:00 2001 From: FlareCoding Date: Sun, 8 Sep 2024 13:32:11 -0400 Subject: [PATCH] added full proper smp support and integrated it into the mandatory kernel initialization sequence --- efi/OVMF_VARS.fd | Bin 540672 -> 540672 bytes kernel/src/arch/x86/ap_startup.cpp | 188 ++++++++++++++++++ kernel/src/arch/x86/ap_startup.h | 28 +++ kernel/src/arch/x86/asm/ap_startup.s | 2 +- kernel/src/entry/kernel_entry.cpp | 12 +- .../tests/kernel_entry_ap_startup_test.cpp | 147 ++------------ kernel/src/memory/kheap.cpp | 21 ++ kernel/src/sched/sched.cpp | 51 ++++- kernel/src/sched/sched.h | 8 +- 9 files changed, 301 insertions(+), 156 deletions(-) create mode 100644 kernel/src/arch/x86/ap_startup.cpp create mode 100644 kernel/src/arch/x86/ap_startup.h diff --git a/efi/OVMF_VARS.fd b/efi/OVMF_VARS.fd index b482cfec3e0cb3a40408857f1e12e64e0fcabc02..c9f629067b58f3695aed345dac0dd3d22cbeeba2 100644 GIT binary patch delta 130 zcmZo@P;6*W-0(%4xlWW}^LkTPX2$x>w))#S85hM G90~xQlq=By diff --git a/kernel/src/arch/x86/ap_startup.cpp b/kernel/src/arch/x86/ap_startup.cpp new file mode 100644 index 0000000..fc147ec --- /dev/null +++ b/kernel/src/arch/x86/ap_startup.cpp @@ -0,0 +1,188 @@ +#include "ap_startup.h" +#include +#include +#include +#include