备注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 | 第七章出现(可选) | | |