【发布时间】:2011-10-10 07:25:09
【问题描述】:
我不试图做任何这样的事情,但出于好奇,我想知道是否可以实现“整个操作系统”(不一定像 Linux 或 Microsoft Windows 那样大,但更像使用 C 和/或 C++ 编写的类似 DOS 的小型操作系统),不使用或只使用很少的程序集。
通过实现一个操作系统,我的意思是从头开始制作一个操作系统,启动引导加载程序和内核,再到 C 或 C++ 中的图形驱动程序(以及可选的 GUI)。我已经看到通过编译器访问低级功能在 C++ 中完成了一些低级的事情。这可以为整个操作系统完成吗?
我不是在问这是否是一个好主意,我只是在问它是否有可能?
【问题讨论】:
-
+1 - 一直想知道这是否可能
-
真正早期的 UNIX 是用 C 语言编写的 - 在 DEC PDP 上你可以从贝尔实验室获得一盘带有操作系统 C 代码的磁带。
-
@Schnommus 猜猜我不是唯一一个讨厌用 asm 编码的人。 :D
-
是的。 Microware Enhanced OS-9 几乎完全用 C 语言编写,并在绝对必要的情况下使用了一些汇编程序。仅供参考 - OS-9 是一个非常强大的多用户 *nix,类似于嵌入式 RTOS。
标签: c++ c operating-system systems-programming