备注1被加粗的 syscall 可能导致阻塞
备注2未来考虑引入的 syscall:dup/chdir/mkdir/mknod/fstat/kill/mmap
sys_write第二章出现第六章需要支持管道的写入,轮询实现第八章至少对串口、管道改成阻塞实现
sys_exit第二章出现,与应用程序交互第五章重新实现,与进程交互
sys_yield第三章出现,与应用程序交互第五章重新实现,与进程交互
sys_get_time(not in xv6)第三章出现
sys_sbrk第四章出现,用于实现用户库的堆内存管理
sys_fork第五章出现
sys_wait第五章出现,非阻塞,需要在用户库轮询第八章改成阻塞实现
sys_exec第五章出现
sys_getpid第五章出现
sys_sleep第五章出现,用户看来阻塞,内核实现通过轮询,不满足条件时任务切换第八章改成阻塞实现
sys_read第五章出现,作用是用户终端从串口读取命令,用户看来阻塞,内核实现通过轮询,不满足条件时任务切换第六章需要支持管道的读取,轮询实现第八章至少对串口、管道改成阻塞实现
sys_pipe第六章出现
sys_close第六章出现,作用是关闭管道
sys_dup第六章出现,作用是替换进程的标准输入/输出为管道输入/输出
sys_open第七章出现
sys_lseek第七章出现(可选)
sys_link第七章出现(可选)
sys_unlink第七章出现(可选)
sys_stat第七章出现(可选)