我们真的可以 运行 没有内核的程序吗?
Is it true we can run programs without kernel?
我刚刚读了下面这本书中的句子 "The Linux Programming Interface",
"虽然可以在没有内核的计算机上 运行 程序,但是
内核的存在极大地简化了其他程序的编写和使用,并且
增加了程序员可用的能力和灵活性。 “
我们可以 运行 没有内核的程序是真的吗?请给我一些适当的解释。
当然你可以 运行 没有内核的计算机上的程序。
但这意味着您必须自己做所有事情。
计算机通常会启动某种 BIOS,然后找个地方启动。 (引导扇区,从 USB 引导,网络,...)
这个启动代码包含的可以是内核,也可以是您的应用程序。
然后您的应用程序将负责处理所有事情,而且列表很大:
- 中断
- 硬件IO
- 设备
- 内存 (RAM) 管理
- CPU 调度
- 网络IO
- 磁盘 IO
- 显卡
- HDI(人机界面/Keyboard/Mouse/Brail/...)
- 音频
- ...
所以从技术上讲这是可能的,但通常这不是您的主要关注点(除非您正在编写下一个大项目 OS)
我刚刚读了下面这本书中的句子 "The Linux Programming Interface",
"虽然可以在没有内核的计算机上 运行 程序,但是 内核的存在极大地简化了其他程序的编写和使用,并且 增加了程序员可用的能力和灵活性。 “
我们可以 运行 没有内核的程序是真的吗?请给我一些适当的解释。
当然你可以 运行 没有内核的计算机上的程序。
但这意味着您必须自己做所有事情。
计算机通常会启动某种 BIOS,然后找个地方启动。 (引导扇区,从 USB 引导,网络,...)
这个启动代码包含的可以是内核,也可以是您的应用程序。
然后您的应用程序将负责处理所有事情,而且列表很大:
- 中断
- 硬件IO
- 设备
- 内存 (RAM) 管理
- CPU 调度
- 网络IO
- 磁盘 IO
- 显卡
- HDI(人机界面/Keyboard/Mouse/Brail/...)
- 音频
- ...
所以从技术上讲这是可能的,但通常这不是您的主要关注点(除非您正在编写下一个大项目 OS)