可以使用Ruby语言构建操作系统吗?

Ksh*_*mal 5 ruby operating-system build

Ruby语言可以用来创建一个全新的移动操作系统或桌面操作系统,即它可以用于系统编程吗?

Chr*_*rle 8

那么现在有一些操作系统使用比C更高级的语言.基本上,ruby解释器本身需要以低级别编写,并且需要一些加载的引导加载代码作为独立内核的全功能ruby解释器作为内存.一旦ruby解释器被引导并以内核模式(或其中一个内环)运行,就没有什么能阻止你在它上面构建一个完整的操作系统.

不幸的是,它可能会非常缓慢.每个操作系统功能的垃圾收集可能会相当明显.ruby解释器将负责基本的事情,如任务调度和网络堆栈,使用垃圾收集框架会大大减慢速度.要解决这个问题,"性能至关重要"的部分仍然用C语写成的可能性很大.

所以是的,从技术上讲,这是可能的.但是没有一个心智正常的人会尝试它(在3 ... 2中排队疯狂的人......)


小智 5

出于所有实际目的:不.

虽然语言本身并不适合这样的任务,但可以想象(在其他一些宇宙中;-)可以想象出一个Ruby 运行时就是为了这个目标而开发的.

唯一的"高级" - 是的,引用是有原因的,我不认为C这些天非常"高级" - 我知道为系统编程设计的语言是BitC.(这与Ruby完全不同.)

快乐的编码.


编辑:这是"基于Lisp的操作系统"的列表.虽然不是Ruby,但(很多)Lisp实现的动态类型/垃圾收集性质有利于比较:如果那些疯狂的Lispers可以做/尝试它,那么一些Ruby狂热者......或者至少他们可以希望对于它 ;-)甚至有一个链接到列表上的OCaml操作系统...