summaryrefslogtreecommitdiffhomepage
path: root/dev/kernel/HALKit/AMD64/HalKernelMain.cc
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal@nekernel.org>2025-04-19 08:40:12 +0200
committerGitHub <noreply@github.com>2025-04-19 08:40:12 +0200
commitf87797692777540eede1d4739199b444bd15340a (patch)
tree646ae3f61ebcd3f83c888912c5f72efc0a8c25b0 /dev/kernel/HALKit/AMD64/HalKernelMain.cc
parentee1edba85ea13627871e1ed005931bd502b86ab8 (diff)
parent1740a0dff822d7666b8c1f056b6c411ef6b0f9fd (diff)
NeKernel: 0.0.10.0.1-release
# NeKernel: 0.0.1 ## Features (not all included): - New extended File System. - Kernel and Bootloader (NeKernel and BootZ) - Process Scheduler. - NeKernel's Preferred Executable Format. - SysChk. - Explicit Partition Map scheme. #### NOTE: The GPT scheme is in WiP! Please run NeKernel on QEMU!
Diffstat (limited to 'dev/kernel/HALKit/AMD64/HalKernelMain.cc')
-rw-r--r--dev/kernel/HALKit/AMD64/HalKernelMain.cc17
1 files changed, 8 insertions, 9 deletions
diff --git a/dev/kernel/HALKit/AMD64/HalKernelMain.cc b/dev/kernel/HALKit/AMD64/HalKernelMain.cc
index b716279d..7f3d4137 100644
--- a/dev/kernel/HALKit/AMD64/HalKernelMain.cc
+++ b/dev/kernel/HALKit/AMD64/HalKernelMain.cc
@@ -4,7 +4,6 @@
------------------------------------------- */
-#include "modules/CoreGfx/CoreGfx.h"
#include <StorageKit/AHCI.h>
#include <ArchKit/ArchKit.h>
#include <KernelKit/ProcessScheduler.h>
@@ -15,16 +14,15 @@
#include <CFKit/Property.h>
#include <modules/CoreGfx/TextGfx.h>
#include <KernelKit/Timer.h>
-
+#include <modules/CoreGfx/CoreWindow.h>
#include <FirmwareKit/EFI/API.h>
#include <FirmwareKit/EFI/EFI.h>
-
EXTERN_C Kernel::VoidPtr kInterruptVectorTable[];
EXTERN_C Kernel::VoidPtr mp_user_switch_proc;
EXTERN_C Kernel::Char mp_user_switch_proc_stack_begin[];
-STATIC Kernel::Void hal_init_scheduler_team()
+STATIC Kernel::Void hal_pre_init_scheduler()
{
for (Kernel::SizeT i = 0U; i < Kernel::UserProcessScheduler::The().CurrentTeam().AsArray().Count(); ++i)
{
@@ -47,13 +45,9 @@ EXTERN_C Int32 hal_init_platform(
FB::fb_clear_video();
- (Void)(Kernel::kout << "Welcome to NeKernel.\r");
-
fw_init_efi((EfiSystemTable*)handover_hdr->f_FirmwareCustomTables[1]);
Boot::ExitBootServices(handover_hdr->f_HardwareTables.f_ImageKey, handover_hdr->f_HardwareTables.f_ImageHandle);
- hal_init_scheduler_team();
-
/************************************** */
/* INITIALIZE BIT MAP. */
/************************************** */
@@ -92,6 +86,8 @@ EXTERN_C Int32 hal_init_platform(
EXTERN_C Kernel::Void hal_real_init(Kernel::Void) noexcept
{
+ hal_pre_init_scheduler();
+
Kernel::NeFS::fs_init_nefs();
Kernel::HAL::mp_init_cores(kHandoverHeader->f_HardwareTables.f_VendorPtr);
@@ -103,5 +99,8 @@ EXTERN_C Kernel::Void hal_real_init(Kernel::Void) noexcept
idt_loader.Load(idt_reg);
- dbg_break_point();
+ while (YES)
+ {
+ ;
+ }
}