|
|
Table of Contents
* Introduction to the Hurd
* Advantages of the Hurd
* What the Hurd means
* Status of the project
Introduction to the Hurd
The GNU Hurd is the GNU project's replacement for the Unix kernel. The Hurd 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).
Currently, the Hurd runs on IA32 machines. The Hurd should, and probably will, be ported to other
hardware architectures or other microkernels in the future.
Advantages of the Hurd
The Hurd is not the most advanced kernel known to the planet (yet), but it does have a number of enticing
features:
it's free software
Anybody can use, modify, and redistribute it under the terms of the GNU General Public License (GPL).
it's compatible
The Hurd provides a familiar programming and user environment. For all intents and purposes, the Hurd
is a modern Unix-like kernel. The Hurd uses the GNU C Library, whose development closely tracks
standards such as ANSI/ISO, BSD, POSIX, Single Unix, SVID, and X/Open.
it's built to survive
Unlike other popular kernel software, the Hurd has an object-oriented structure that allows it to evolve
without compromising its design. This structure will help the Hurd undergo major redesign and
modifications without having to be entirely rewritten.
it's scalable
The Hurd implementation is aggressively multithreaded so that it runs efficiently on both single
processors and symmetric multiprocessors. The Hurd interfaces are designed to allow transparent network
clusters (collectives), although this feature has not yet been implemented.
it's extensible
The Hurd is an attractive platform for learning how to become a kernel hacker or for implementing new
ideas in kernel technology. Every part of the system is designed to be modified and extended.
it's stable
It is possible to develop and test new Hurd kernel components without rebooting the machine (not even
accidentally). Running your own kernel components doesn't interfere with other users, and so no special
system privileges are required. The mechanism for kernel extensions is secure by design: it is impossible to
impose your changes upon other users unless they authorize them or you are the system administrator.
it exists
The Hurd is real software that works Right Now. It is not a research project or a proposal. You don't
have to wait at all before you can start using and developing it.
What the Hurd means
According to Thomas Bushnell, BSG, the primary architect of the Hurd:
`Hurd' stands for `Hird of Unix-Replacing Daemons'. And, then, `Hird' stands for `Hurd of Interfaces
Representing Depth'. We have here, to my knowledge, the first software to be named by a pair of mutually
recursive acronyms.
Status of the project
The Hurd, together with the GNU Mach microkernel, the GNU C Library and the other GNU and non-GNU
programs in the GNU system, provide a rather complete and usable operating system today. It is not
ready for production use, as there are still many bugs and missing features. However, it should be a good
base for further development and non-critical application usage.
The GNU system (also called GNU/Hurd) is completely self-contained (you can compile all parts of it using
GNU itself). You can run several instances of the Hurd in parallel, and debug even critical servers in one
Hurd instance with gdb running on another Hurd instance. You can run the X window system, applications
that use it, and advanced server applications like the Apache webserver.
On the negative side, the support for character devices (like sound cards) and other hardware is mostly
missing. Although the POSIX interface is provided, some additional interfaces like POSIX shared memory or
semaphores are still under development.
All this applies to the current development version, and not to the last release (0.2). We encourage
everybody who is interested to try out the latest development version, and send feedback to the Hurd
developers.
-----------------------------------------
內容列表
* Hurd 簡介
* Hurd 的優點
* Hurd 的含義
* 此計畫的重要地位
Hurd 簡介
GNU Hurd 是 GNU 計畫中取代 Unix 的核心。 Hurd 是一組運行在 Mach 微內核上的服務器,用來實現 Unix 或其他核心(如 Linux)實現了的文件系統、網路協議、及文件訪問控制等其他功能。
目前,Hurd 運行在 IA32 系統上。未來 Hurd 應該,而且可能會被移植到其他硬體系統或微內核上。
Hurd 的優點
Hurd 不是一個已知的最先進的內核,但它有一些誘人的特點:
它是自由軟體
任何人在遵守 GNU General Public License (GPL) 的條件下,都可以使用、修改或重新發布它。
它的兼容性
Hurd 提供了一個熟悉的編程和用戶環境。對於所有的意圖和目的來說,Hurd 都是一個現代的類 Unix 的內核。 Hurd 使用了 GNU C 庫,而此庫的開發緊緊追蹤 ANSI/ISO、BSD、POSIX、Single Unix、SVID 及 X/Open 等標準。
可持續發展的構造
與其他流行的內核軟體不同,Hurd 擁有面向對象的結構,這就使得它不斷發展而不用改變當前的設計。這種結構將有助於完成 Hurd 主要的重設計和修改而不必完全重寫代碼。
它的規模很大
Hurd 實現了強有力的多線程,以便它在單處理器和對稱多處理器上都可以高效運行。 Hurd 的接口設計成允許透明網路組的共有,但這個特性尚未實現。
它是可擴展的
對於學習怎樣成為一個內核黑客或者在內核技術中實現新想法來說, Hurd 是一個有吸引力的平台。系統的每一個部分都設計成可修改和擴展的。
它是穩定的
在開發和測試新的 Hurd 內核組件時,可能不需重新啟動機器(即使是意外的)。運行自己的內核組件不會妨礙其他用戶,而且這並不需要特殊的系統權限。由於這種設計,擴展內核的程式是安全的:除非他們認可這種改動或者你是系統管理員,否則你的修改不可能影響到其他用戶。
它已經存在
Hurd 是正在工作中的真實的軟體。不是一個研究項目或提案。你可以開始使用並開發它,而根本不必等待。
Hurd 的含義
據 Thomas Bushnell,BSG,Hurd 的主設計師所述:
『Hurd』代表『Hird of Unix-Replacing Daemons』,而『Hird』又代表了『Hurd of Interfaces Representing Depth』。據我所知,這裡,我們擁有了第一個以一對雙關語命名的軟體。
此計畫的重要地位
今天,Hurd 與 GNU Mach 微內核、GNU C 庫和其他 GNU 系統中的 GNU 以及非 GNU 程式一起,提供了一個相當完整且可用的作業系統。因為還有許多錯誤和未完成的特性,所以 Hurd 還不能用作生產。然而,它應該為更深入的開發和非關鍵性程式的使用提供了一個良好的基礎。
GNU 系統 (也稱作 GNU/Hurd) 完全是自我包含的(你可以使用 GNU 自身編譯它的所有部分)。你可以並行運行若幹個 Hurd ,甚至可以用在另一個 Hurd 上運行的的 gdb 來除錯某一 Hurd 上運行的關鍵服務。你可以運行 X 窗口系統,使用它的應用程式和 Apache 等高級服務器應用程式。
反過來看,對塊設備(如聲卡)和其他設備的支持大部分還處在短缺之中。即使提供了 POSIX 接口,一些額外的接口,像 POSIX 共享內存或旗語等都仍在開發之中。
所有這些適用於目前正在開發的版本,而不是上次的發布(0.2)。我們鼓勵每一個感興趣的人試用最新的開發版,並將反饋信息發送給 Hurd 的開發者。 |
|