summaryrefslogtreecommitdiffhomepage
path: root/dev/kernel/HALKit/AMD64/HalKernelMain.cc
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal@nekernel.org>2025-11-22 09:31:21 -0500
committerAmlal El Mahrouss <amlal@nekernel.org>2025-11-22 09:32:01 -0500
commitab37adbacf0f33845804c788b39680cd754752a8 (patch)
treea533c6f0256d3067ed0e050dae59a54a6f37342b /dev/kernel/HALKit/AMD64/HalKernelMain.cc
parentefefa7221a3fea3636a64f2bf067e2af75626f34 (diff)
fix: kernel: Important kernel fixes for SMP. Adding 'NeKernel' process as well.
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
Diffstat (limited to 'dev/kernel/HALKit/AMD64/HalKernelMain.cc')
-rw-r--r--dev/kernel/HALKit/AMD64/HalKernelMain.cc6
1 files changed, 6 insertions, 0 deletions
diff --git a/dev/kernel/HALKit/AMD64/HalKernelMain.cc b/dev/kernel/HALKit/AMD64/HalKernelMain.cc
index dfd71777..e23c5bc1 100644
--- a/dev/kernel/HALKit/AMD64/HalKernelMain.cc
+++ b/dev/kernel/HALKit/AMD64/HalKernelMain.cc
@@ -142,6 +142,12 @@ EXTERN_C Kernel::Void hal_real_init(Kernel::Void) {
NeFS::fs_init_nefs();
#endif
+ UserProcessScheduler::The().SwitchTeam(kHighUserTeam);
+
+ rtl_create_user_process([]() -> void { while (YES); }, "NeKernel");
+
+ HAL::mp_init_cores(kHandoverHeader->f_HardwareTables.f_VendorPtr);
+
HAL::Register64 idt_reg;
idt_reg.Base = reinterpret_cast<UIntPtr>(kInterruptVectorTable);