这个是在版本1内核编译的前置步骤(应该是)。
如果题目要求在版本0,则直接 cd 0/linux 后 make 。
第1关:版本1内核执行的完整系统调用序列
在输入 b system_call 后直接 commands 2 ,不要直接 c (czj原话)
感谢czj,没有他的指导我是做不出来的
第2关:在版本1中输出系统调用信息
在94和95行间插入红圈三句(czj特别提醒是 %eax ,不是 $eax )
让我们一起大声喊:谢谢czj!
第3关:在版本0中输出系统调用信息
第4关:为版本0内核增加一个系统调用getjiffies
第5关:在用户程序中使用新增的系统调用
这里直接 ./run 就能进入虚拟机 不需要 ./rungdb (感谢xhx)
./rungdb 进来 bochs 一直是 loading system
敲了几下 c 很神奇的进来了
然后继续敲 c ,之后所有在 bochs 里敲完命令,都要在 mygdb 中敲 c 才能进行(所以为什么)
重启虚拟机
谢谢xhx