Kernel 消除操作系统以最大化高性能代码?

Kernel 消除操作系统以最大化高性能代码?,kernel,bootloader,Kernel,Bootloader,假设我想要运行一些计算实验,可能是一些数学模拟,并且我想要获得系统的最佳性能。我不希望操作系统占用大量的物理内存,也不希望系统服务无休止地争夺CPU访问权 将计算机引导到某种超小型环境中的最佳方式是什么?在这种环境中,我可以运行我用C编写的编译程序。我需要访问物理内存,可能还需要访问硬盘驱动器(我可以不使用文件系统,只需按绝对地址读/写东西) 我试着写我自己的引导程序,结果喜忧参半。我想我能够进入64位模式(长模式),但我不确定从那里开始,在运行更多代码和与全套物理内存和硬盘交互方面 这可能要求

假设我想要运行一些计算实验,可能是一些数学模拟,并且我想要获得系统的最佳性能。我不希望操作系统占用大量的物理内存,也不希望系统服务无休止地争夺CPU访问权

将计算机引导到某种超小型环境中的最佳方式是什么?在这种环境中,我可以运行我用C编写的编译程序。我需要访问物理内存,可能还需要访问硬盘驱动器(我可以不使用文件系统,只需按绝对地址读/写东西)

我试着写我自己的引导程序,结果喜忧参半。我想我能够进入64位模式(长模式),但我不确定从那里开始,在运行更多代码和与全套物理内存和硬盘交互方面


这可能要求有点高,但GP-GPU可能也很方便。

听起来像是一个有趣的项目,但我认为使用现有的众多超小型Linux发行版中的一个会更好(google around for JEOS,Linxu from scratch等)或者——如果你的代码足够小——为什么不使用像HX这样的32位扩展器的freedos呢


至少从通用计算平台开始,尽管非常精简,但您不必担心底层硬件、网络、基本显示和命令行界面等琐碎的事情。不必编程就能获得成功的所有时间都可以投资于完善数学模型本身。

裸金属操作系统如何?@user1002358我不知道,看起来很有趣。然而,在目前的状态下,它看起来非常裸露,只有有限的磁盘支持和非常基本的网络支持(仅支持2个芯片组)。它是否对您有用取决于您在这些限制范围内满足您的需求的程度-根据经验(从使用PC风格的硬件进行嵌入式风格的应用),我只能说,不要低估现有工具和对各种硬件的支持的重要性。