os

An operating system
git clone https://erai.gay/code/os/
Log | Files | Refs | README | LICENSE

commit d5f4cba15457120d1a87029ff1a05d47a98226fd
parent 5a64354c094e9837ed559da68e658f2a57e8ceda
Author: erai <erai@omiltem.net>
Date:   Mon, 27 May 2024 11:08:00 -0400

kernel is larger than 1MB now

Diffstat:
Mas.c | 2+-
Mkernel.c | 15+++++++++++++++
2 files changed, 16 insertions(+), 1 deletion(-)

diff --git a/as.c b/as.c @@ -416,7 +416,7 @@ emit_kstart(c: *assembler) { as_jmp(c, OP_JCC + CC_NE, hang); // Setup an early stack - as_modri(c, OP_MOVI, R_RSP, 0x00200000); // FIXME bss + as_modri(c, OP_MOVI, R_RSP, 0x00300000); // FIXME bss // Align stack to page as_modri(c, OP_ANDI, R_RSP, -0x1000); diff --git a/kernel.c b/kernel.c @@ -3542,9 +3542,15 @@ _ssr(r: *regs) { } else if r.rax == 3 { kputs("close\n"); r.rax = -1; + } else if r.rax == 5 { + kputs("fstat\n"); + r.rax = -1; } else if r.rax == 9 { kputs("mmap\n"); r.rax = -1; + } else if r.rax == 22 { + kputs("pipe\n"); + r.rax = -1; } else if r.rax == 33 { kputs("dup2\n"); r.rax = -1; @@ -3572,9 +3578,18 @@ _ssr(r: *regs) { } else if r.rax == 61 { kputs("wait\n"); r.rax = -1; + } else if r.rax == 82 { + kputs("rename\n"); + r.rax = -1; + } else if r.rax == 87 { + kputs("mkdir\n"); + r.rax = -1; } else if r.rax == 87 { kputs("unlink\n"); r.rax = -1; + } else if r.rax == 217 { + kputs("getdirents\n"); + r.rax = -1; } else { r.rax = -1; }