xv6 CPU alarm
要求:添加alarm系统调用
1) 使用grep命令筛选出出现uptime字样的文件和文件中所在行号,以便仿照uptime系统调用实现alarm系统调用:
2) 在syscall.c中添加系统调用函数的外部声明,共有两处地方需要添加:
3) 在syscall.h中添加系统调用号:
4) 在sysproc.c中添加系统调用函数sys_alarm()的实现:
5) 在user.h中添加用户态函数的定义:
6) 在usys.S中添加用户态函数的实现:
7) 由于我们还需要在用户空间来对内核提供的系统命令进行调用,新建用户程序alarmtest.c文件,写入以下代码:
8) 在Makefile文件UPROGS处添加_alarmtest:
9) 在proc.h文件的proc结构体中,添加以下三个属性:
10) 在trap.c文件中的“case T_IRQ0 + IRQ_TIMER”位置处添加以下代码:
运行qemu: