1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
|
[[!meta copyright="Copyright © 2001, 2002, 2008, 2010 Free Software Foundation,
Inc."]]
[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable
id="license" text="Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU Free Documentation License, Version 1.2 or
any later version published by the Free Software Foundation; with no Invariant
Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license
is included in the section entitled
[[GNU Free Documentation License|/fdl]]."]]"""]]
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)|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|glibc]], 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.
---
One advantage of the Hurd's separation of kernel-like functionality into
separate components ([[servers|translator]]) is that these can be constructed
using different programming lanugages, a thing that is not easily possible in a
monolithic kernel. Essentially, only an interface from the programming
environment to the RPC mechanism is required.
|