gpt4 book ai didi

c - 为什么操作系统内核通常用 C 或 C++ 编写?

转载 作者:行者123 更新时间:2023-11-30 21:16:49 26 4
gpt4 key购买 nike

已经有用多种语言编写的实验性操作系统,包括 C#( SingularitySharpOS )、Java( JavaOSJX )和 Lisp(各种 Lisp machines )。

为什么 C(以及较小程度上的 C++)是用于开发操作系统内核的主要语言? C 是否有什么东西使它特别适合在内核编程中使用,还是因为历史原因?

最佳答案

使用 C 语言作为操作系统内核的一些(不是全部)原因:

性能对于操作系统来说很重要,因此解释性语言已经过时,而编译性语言则流行起来。此外,无论如何,您都必须用其他语言将解释器编写为操作系统的一部分,所以...

直接访问硬件资源和进行低级位“摆弄”的简单方法对于操作系统也很重要,C 和 C++ 都涵盖了这一点。

您通常还需要直接在汇编中为您所针对的特定处理器架构编写一些位。在 C 和 C++ 中,在内联汇编中编写一些片段很简单。

此外,大多数其他语言都支持 C 的调用约定,因此用 C 编写操作系统可以轻松地以易于交互的方式将系统调用公开给用户空间。

关于c - 为什么操作系统内核通常用 C 或 C++ 编写?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55676142/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com