geek OS project 0 (下)

现在我们环境已经搭好了,参考 geekos实验环境的搭建

在main.c中新加个函数,命名为projecto,函数的代码如下:

 

 

再修改Main函数,将TODO(“…..这一行替换为以下代码:

struct Kernel_Thread *thread;
thread = Start_Kernel_Thread(&project0,0,PRIORITY_NORMAL,false);

替换的意思是,要把TODO那一行注释掉。。。

TODO语句的定义在src/project0/include/geekos/kassert.h中

可以看到,这是一个宏打印错误提示后,就直接进入一个死循环中,也就是执行到TODO之后程序就不会继续往下运行了,所以要继续进行调试project0就必须删除或者注释掉那条TODO。

 

保存代码,按上一篇文章中的方法编译,并在bochs中引导系统。
运行效果如下图所示:

选区_121

 

 

参考博客:参考博客1
参考博客2

作者: CrazyKK

ex-ACMer@hust,stackoverflow-engineer@sensetime

说点什么

您将是第一位评论人!

提醒
wpDiscuz