用C++编写操作系统

dil*_*epa 31 c++

什么是使用c ++创建自己的操作系统的方法.我已经创建了启动加载器(使用nasm,qemu),但我不知道为这个启动加载器添加内核.

Kor*_*icz 14

这里有大量您最终需要的信息,可怕的操作系统编程FAQ.


Pot*_*ter 13

要小心,C++对于操作系统内核来说非常重要.

  • 有一些服务,例如您必须使用运行时库支持的异常.
  • 在添加堆之前,它不会像C++一样.
  • 内核对于分配对象的位置非常敏感; 通常在C++中使用的单堆模型并不适合.
  • 将API与数据结构耦合是一个坏主意.BeOS遇到了这个问题.您需要从用户隐藏内部结构的大小,这意味着当API是成员函数时,跳过箍(Pimpl,私有构造函数,虚函数).

听起来你已经比大多数人更进一步了,所以继续提问,你可能最终会在某个地方变得更好!:VD


sud*_*03r 7

另外,Tanenbaum的这本书,他在那里解释了minix的实现细节.


Gre*_*ill 5

您可以考虑查看MINIX,它是x86系统的小型操作系统.它最初被设计为一个教学项目,并已发展成为在现实世界中有用的东西.