did some restructuring, got multitasking almost working

This commit is contained in:
2026-06-26 20:05:01 -05:00
parent 57d7d34c6d
commit 43bc0df81a
35 changed files with 481 additions and 307 deletions

36
kernel/syscall.S Normal file
View File

@@ -0,0 +1,36 @@
.code32
.global syscall_handler
.extern syscall
syscall_handler:
cli
push $0
push $0x80
pusha
push %ds
push %es
push %fs
push %gs
mov $0x10, %ax
mov %ax, %ds
mov %ax, %es
mov %ax, %fs
mov %ax, %gs
push %esp
call syscall
add $4, %esp
mov 28(%esp), %eax
pop %gs
pop %fs
pop %es
pop %ds
popa
add $8, %esp
iret