第0天:笔者的一些经验

开发操作系统的方法:

  • 最节省时间:在现存OS中找一个跟自己想做的OS最接近的,然后在此基础上加以改造
  • 从零开始:不要一开始就一心想着要开发多完整的OS,先做一个有OS-like的demonstration就行了,然后再逐步完善。其实,开发其他大型软件也一样

 

先学习?先开发?

  • 完成一些工作,为了避免不必要的失败,先学习再开发
  • 因为兴趣而学习,可以先开发,碰壁后再回头学习相关知识

 

概念:

  • 映像文件(.img):简单地说就是软盘的备份数据

 

开发操作系统的语言选择:

  • 对于C语言:对OS功能依赖比较少,基本上只要不用函数就可以了。
  • 对于汇编语言:在开发OS时不会受到限制的语言大概就只有汇编语言了。
  • 开发OS中C语言会遇到的困难

    1. 例如像printf这种C库函数,在开发OS的过程中是不能使用的。

    2. 开发OS时,需要用到CPU上的许多控制OS的寄存器,一般C编译器都是用于开发应用程序的,所以没有任何操作这些寄存器的命令。

    3. C编译器的自动优化功能对开发OS带来麻烦

  • 基于以上原因,在C语言无法编写的部分,我们只好用汇编语言来写。故开发OS的语言选择:汇编语言 + C语言。

 

posted @ 2014-02-24 22:17  吉吉的轨迹  阅读(147)  评论(0编辑  收藏  举报