Skip to content

Implement All xv6 Syscalls

Created by: tjhu

Implement all of the of xv6 syscalls and their proxies in rv6.

  1. SYS_fork(merge with exec as sys_spawn_domain)
    • syscall
    • proxy
  2. SYS_exit(need discussion)
    • syscall
    • proxy
  3. SYS_wait(implemented as Thread::join)
    • syscall
    • proxy
  4. SYS_pipe
    • syscall
    • proxy
  5. SYS_read
    • syscall
    • proxy
  6. SYS_kill
    • syscall
    • proxy
  7. SYS_exec
    • syscall
    • proxy
  8. SYS_fstat
    • syscall
    • proxy
  9. SYS_chdir
    • syscall
    • proxy
  10. SYS_dup
    • syscall
    • proxy
  11. SYS_getpid
    • syscall
    • proxy
  12. SYS_sbrk(no need; we use memory allocator)
    • syscall
    • proxy
  13. SYS_sleep(for ns instead for ticks)
    • syscall
    • proxy
  14. SYS_uptime
    • syscall
    • proxy
  15. SYS_open
    • syscall
    • proxy
  16. SYS_write
    • syscall
    • proxy
  17. SYS_mknod
    • syscall
    • proxy
  18. SYS_unlink
    • syscall
    • proxy
  19. SYS_link
    • syscall
    • proxy
  20. SYS_mkdir
    • syscall
    • proxy
  21. SYS_close
    • syscall
    • proxy