feat(syscall): implement lab2
系统调用
System Call Tracing
实现一个能够输出当前进程或者其子进程在使用特定系统调用的时候,打印日志出来
- proc进程需要有一个mask来记录所要打印的系统调用是哪个。
- 在fork的时候,需要将父进程所监听的mask也一同复制下来。
- 在内核进行系统调用的时候,需要通过mask来判断当前系统调用是否需要打印日志
Sysinfo
增加一个系统调用,用于打印当前空闲内存和状态非unused的进程数量
- 用户态增加接口
- 内核部分增加系统调用,当调用之后,统计内存和进程信息
- 将统计的信息存入用户传来的地址,因为用户态地址无法直接访问,所以需要页表转换来获取其物理地址,再将数据写入进去。