From 6a30f42d5dcd0f944262147b2806db6c14fe7ffc Mon Sep 17 00:00:00 2001 From: Amlal El Mahrouss Date: Thu, 15 May 2025 13:56:17 +0200 Subject: feat(kernel): Finalizing the first version of the user scheduler. other: - Removed DmaPool into its own Kit. - ApplicationProcessor unit has been cleaned up. - Rename functions of MemoryMgr. - Use KIB instead of MIBs of stack. - Cleanup parts of the scheduler, and hw scheduler. - Use UD handler for INT 6. Signed-off-by: Amlal El Mahrouss --- dev/kernel/HALKit/AMD64/HalInterruptAPI.asm | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) (limited to 'dev/kernel/HALKit/AMD64/HalInterruptAPI.asm') diff --git a/dev/kernel/HALKit/AMD64/HalInterruptAPI.asm b/dev/kernel/HALKit/AMD64/HalInterruptAPI.asm index a6c6bbb5..0634b0ea 100644 --- a/dev/kernel/HALKit/AMD64/HalInterruptAPI.asm +++ b/dev/kernel/HALKit/AMD64/HalInterruptAPI.asm @@ -138,7 +138,7 @@ __NE_INT_6: out 0x20, al push rcx - call idt_handle_generic + call idt_handle_ud pop rcx std @@ -235,17 +235,14 @@ IntNormal 31 __NE_INT_32: cld - - mov al, 0x20 - out 0xA0, al - out 0x20, al push rax mov rcx, rsp call idt_handle_scheduler pop rax - std + mov al, 0x20 + out 0x20, al o64 iret @@ -416,3 +413,12 @@ kInterruptVectorTable: dq __NE_INT_%+i %assign i i+1 %endrep + +section .text + +global sched_jump_to_task + +;; Jump to the task from its stack frame. +sched_jump_to_task: + mov rsp, rcx + ret \ No newline at end of file -- cgit v1.2.3