ethandmd / reedos

rust riscv minimal os
2 stars 6 forks source link

Advanced Syscall implementation #49

Open TCCQ opened 1 year ago

TCCQ commented 1 year ago

This issue tracks the state of syscalls in reedos. Specifically S mode calls from U mode. As of 16178fc , the skeleton is built, but more general work can be done, and specifical syscalls can be implemented as their dependencies are met.

Broadly we want to conform to the linux RISC-V syscalls. Likely we will not implement all of them, but we might as well match the number and semantics of those we do. That way we might have some hope of running things not specifically compiled for us, provided they are sufficiently minimal.

This does not preclude the possibility of adding our own syscalls. We have a whole 64 bits worth of call numbers and linux uses less than 500.