HURD

GNU Hurd 是一系列基于GNU Mach的守护进程,这一套守护进程最终形成了GNU操作系统。GNU项目从1990年开始开发GNU Hurd,并且将它作为一个遵循GPL的自由软件发布。Hurd的目标是从功能、安全性和稳定性上全面超越Unix内核,而同时又能保持对其的兼容性,为此Hurd遵守POSIX标准。

概念

GNU Hurd 是一组运行在GNU Mach或L4上的守护进程,用来实现unix 实现了的文件系统、网络协议、及文件访问控制等其他功能。

简介

据Thomas Bushnell ,BSG,Hurd 的主设计师所述:‘Hurd’代表‘Hird of Unix-Replacing Daemons’,而‘Hird’又代表了‘Hurd of Interfaces Representing Depth’。据我所知,这里,我们拥有了第一个以一对双关语命名的软件。

GNU Hurd 始于1990年,基于麻省理工学院计算机科学实验室 Steve Ward 教授和他的团队开发的用于研究的TRIX 操作系统,是GNU工程 中取代unix 的核心。

GNU计划 打算将 GNU Hurd 作为一个遵循GPL的自由软件发布, Hurd 打算从功能、安全性和稳定性上全面超越 UNIX 内核,而同时又能保持对其的兼容性,为此Hurd 遵守POSIX标准。

特性

希望在开发和测试新的Hurd 内核组件时,不需重新启动机器(即使是意外的)。运行自己的内核组件不会妨碍其他用户,而且这并不需要特殊的系统权限。由于这种设计,扩展内核的程序是安全的:除非他们认可这种改动或者你是系统管理员,否则你的修改不可能影响到其他用户。

与其他流行的内核软件不同,Hurd 打算拥有面向对象的结构,这就使得它不断发展而不用改变当前的设计。这种结构将有助于完成Hurd 主要的重设计和修改而不必完全重写代码。

Hurd 打算实现强有力的多线程,以便它在单处理器和对称多处理器上都可以高效运行。Hurd 的接口设计成允许透明网络组的共有,但这个特性尚未实现。

与Linux

1964年左右,受到软硬件专利的刺激,麻省理工学院的黑客(不同于日常理解的靠搞破坏而获利的“黑客”)自由软件精神逐渐萌芽并发展,他们谴责专利软硬件在道德层面的罪恶,并试图打破软硬件专利对人类智慧结晶的封锁,从此,不断有UNIX 某些软件的替代品出现。随后 Richard M. Stallman 于1984年开创GNU计划,取代unix 的工作取得良好的进展,GNU工具逐渐取代了UNIX 专有程序,其BASH、GCC、GDB、Emacs等软件也已经足够成熟。GNU计划 以GNU Hurd为整个GNU 操作系统的核心,然而,GNU 操作系统的核心 Hurd 直至1991年仍不可使用。而在1991年,当年的计算机业余爱好者Linus Torvalds(如今为世界顶级计算机科学家),通过对教学用的Minix操作系统的研究扩展,独立发表了开源的 Linux内核。当时 Linus Torvalds 已经成功将GNU的工具链GCC等核心软件运行于Linux内核之上,从1992年开始,Linux 受到广泛关注,大量使用Linux 内核以及GNU软件 的整套操作系统开始出现,并且发展壮大。GNU计划 为Linux 等新内核的产生及发展创造了合适的土壤,而Linux等新内核弥补了GNU计划 的内核Hurd 发展迟缓的缺憾。

Hurd 的架构设计理念先进,但是Hurd 的开发历程走得并不顺利,至今为止,Hurd仍无法应用于普通应用,更无法用于生产。如果没有Hurd 的出现而已经有Linux 内核的话,自由软件基金会可能不会研发Hurd ,但是在Linux 内核发布之前,Hurd 的蓝图就已经被设计出来了,而 GNU计划 希望这先进的架构能够让自由软件更具有威力,所以GNU计划 仍维持Hurd 作为未来的发展计划。不同于GCC等众多GNU组件,Hurd微内核更纯粹地代表着RMS的开源理念。

可用

当前 GNU/Hurd 仅支持ext2、UFS、iso9660、和Linux swap这几个文件系统。即使是用途广泛GNU/Linux,开发力量也有限。相对 GNU/Linux ,GNU/Hurd 的开发力量微乎其微(无任何商业支持成分)。尽管如此,GNU/Hurd 也开始进入测试阶段。Debian GNU/Hurd计划随 Debian 7 正式发布,其最新测试版本发布于2013年01月07日,提供ISO测试镜像和QEMU测试镜像。

总体看来GNU/Hurd基本功能不完善,基础功能实现严重依赖Linux内核(比如文件系统、网络层),不能稳定使用更谈不上高性能。

参考资料