Linux 内核或至少部分内核是否已经移植到 JavaScript 了?我想在linux内核上编程,但不想使用c。
答案1
Javascript 不是一种系统编程语言,它不适合内核。
此外,内核是一个非常大的代码体,将其“移植”到另一种语言并不是一件容易完成的事情,并且可能需要数年甚至数十年的时间。如果内核被移植到另一种语言,它很可能是 Rust,而不是 javascript。
实际上,如果您想扩展 Linux 内核但不使用 C,Rust 是一个有效的替代方案。内核已经有 Rust 接口。然而,如果你想修改现有的内核代码,除非你想用 Rust 重写整个部分,否则你只能使用 C,而且我不确定内核的任意部分是否已经准备好。
答案2
不,它不太可能在 JavaScript 中重新实现。谁来做这项工作?会得到什么?在 C 语言中,内核可以移植到几乎任何硬件(只需为 Portable CC 编写一个代码生成器,99% 就可以了)。 JavaScript 是否支持指针、位碰撞、标准化子例程调用、结构等?在 JavaScript 内核中可以完成在 C 内核中很难完成的事情。用 JavaScript 编写小而高效的代码有多难?可加载内核模块、设备驱动程序等怎么样?
答案3
考虑操作系统中除内核之外的部分。许多操作系统是用其他语言编写的。 Linux 内核只是系统的一小部分。