Created small static library to wrap system call ABI

This commit is contained in:
2023-09-07 00:58:57 -05:00
parent 112b4204a7
commit a5ce86147d
9 changed files with 275 additions and 119 deletions

19
src/x86/do_syscall.S Normal file
View File

@@ -0,0 +1,19 @@
.global _do_syscall
.type _do_syscall, @function
_do_syscall:
push %ebp
mov %esp, %ebp
push %esi
push %edi
push %ebx
mov 0x08(%ebp), %eax
mov 0x0C(%ebp), %ebx
mov 0x10(%ebp), %ecx
mov 0x14(%ebp), %edx
int $0x80
pop %ebx
pop %edi
pop %esi
pop %ebp
ret
.size _do_syscall, . - _do_syscall

View File

@@ -20,7 +20,7 @@ isr_syscall:
mov %ax, %es
mov %ax, %fs
mov %ax, %gs
call do_syscall
call kernel_do_syscall
mov %ebp, %esp
mov $0x23, %cx
mov %cx, %ds