我想学习如何编写可以在不启动操作系统的情况下运行的程序,比如Norton Ghost或Paragon程序。我希望能够从CD或U盘上运行该程序。
你能给我一些建议吗?
发布于 2012-02-02 06:37:49
基本上-除非你使用现有的操作系统-你必须编写自己的操作系统-它可能很小,但它是一个操作系统。
编写它与编写应用程序有点不同,因为您必须直接(或通过BIOS)与硬件交互。它需要对底层编程、硬件设备规范和处理器体系结构有很好的了解,特别是当你需要内存并且必须将x86处理器切换到使用相当复杂的机制的保护模式(尽管可以使用“虚幻模式”)时。某些部分可能需要在汇编程序中编写,以访问在保护模式下以最高特权级别(“环0")运行的”内核“所使用的特殊”特权“指令,并处理中断。
你可以从这里开始,http://wiki.osdev.org/Main_Page。
发布于 2012-02-02 05:25:28
Delphine是一种使用freepascal编写原语操作系统的尝试。它不再是一个活动的项目,但是有代码可以让你尝试。
ClassiOS是用Delphi语言编写的操作系统。
一个更专业的解决方案是使用像On Time RTOS-32这样的win32兼容操作系统,购买一个许可证,然后用Delphi语言制作一个可启动的stick/CD程序。注意,这是一个昂贵的解决方案,但在许多实时关键系统中使用。我们实现了一个或多或少的DOS克隆,用于从U盘启动任何X86系统。
https://stackoverflow.com/questions/9103034
复制相似问题