GNU Hurd
2015-05-08 11:10:13 阿炯

GNU Hurd 是一系列基于 GNU Mach 或者 L4 微内核的守护进程,这一套守护进程最终形成了 GNU 操作系统。GNU 计划从1990年开始开发 GNU Hurd,并且将它作为一个遵循 GPL 的自由软件发布。Hurd 的目标是从功能、安全性和稳定性上全面超越 Unix 内核,而同时又能保持对其的兼容性,为此 Hurd 遵守 POSIX 标准。为此它经历漫长的开发周期,主要采用C语言开发并在GPL协议下授权。


The GNU Hurd is the GNU project's replacement for the Unix kernel. It is a collection of servers that run on the Mach microkernel to implement file systems, network protocols, file access control, and other features that are implemented by the Unix kernel or similar kernels (such as Linux).

“HURD”是一个间接递归缩写,来自“HIRD of Unix Replacing Daemons”,其中“HIRD”表示“HURD of Interfaces Representing Depth”。

Hurd基于GNU Mach作微内核进行开发,这是由Richard Stallman做出的技术决定。早在2005年,Hurd开发者Neal Walfield完成了L4/Hurd基本的内存管理框架,Marcus Brinkmann移植了glibc的重要部分;如果没有Hurd的出现而已经有Linux的话,FSF可能不会研发Hurd。但在Linux之前,Hurd就已经被做出来了,而GNU希望这先进的架构能够让自由软件更具有威力。

事实上,GNU的操作系统中预期的核心就是Hurd。而不是Linux,一般常见的Linux平台又可称为GNU/Linux操作系统,而真正的GNU OS则是维持Hurd作为未来的发展计划。

目前其开发和使用大都在Debian上进行,版本情况可参见Debian GNU/Hurd 发行录

常见误区

Hurd经常被人误认为是一个内核,事实上它只是一套微内核守护进程,而真正的内核部分则是在其下方。而关于最底层的内核,除了Mach外,Hurd开发团队还曾选择过L4。

与Linux的区别

如果没有Hurd的计划,而Linux内核已经出现的话,GNU可能不会有这一计划。但在Linux之前,GNU Mach就已经被计划。GNU则希望这先进的架构能够让自由软件更具有威力。GNU的操作系统中预期的核心就是Hurd/GNU Mach。而不是Linux,一般常见的Linux操作系统又可称为GNU/Linux。而GNU操作系统则是维持以Hurd和GNU Mach作为未来的发展项目。

最新版本:0.6
GNU Hurd 运行在 32 位的 x86 机器中,正在开发支持 64 位 x86 的版本。GNU Hurd 0.6 主要是 bug 修复和功能增强:
大量代码清理
改进 Hud 服务器消息调度代码
移除了嵌入式的 gz 和 bz2 decompressor 代码,使用 libz 和 libbz2 代替
改进原生 fakeroot 工具
整型哈希库性能提升
初始服务器分离成启动服务器和一个 SysV 风格的初始化系统
合并了 procfs 和 random translators

项目主页:
http://www.gnu.org/software/hurd/

http://www.debian.org/ports/hurd/