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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
|
[[!meta copyright="Copyright © 2001, 2002, 2007, 2008, 2009 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, 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 may not be 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.
The Hurd team doesn't create Hurd-only releases, but instead relies
on a distribution done by folks from *Debian*.
That Debian version closely tracks the progress of the Hurd
(and often includes many new features),
so little would be gained by creating an official pure Hurd release.
The Debian GNU/Hurd [[distribution|running/debian]] offers *LiveCDs and QEMU images*
to test-drive the Hurd in a real life system with access to about
50% of the Debian software archive.
The most recent version of the Debian port at the time of writing
is *Debian GNU/Hurd K16*.
That said, the last official release of the Hurd
without the Debian parts was 0.2 done in 1997.
New official releases will be done, as soon as
the Hurd is sufficently stable and feature
complete. If an official release of the Hurd were made
now, people would try the Hurd and be disappointed. People
already expect delays; to disappoint them in this way as
well would be unfortunate. Moreover, it would lessen the
possibility that they would want to try the Hurd again in the future.
## Usability Reports
### Olaf Buddenhagen, 2009-06-11
> I have been using the Hurd for most of my everyday work for some two
> years now. Most of the time it's pretty OK, but occasionally programs
> crash, or the screen session dies, or even the whole system. Also,
> various programs simply don't work at all, or don't work in certain
> situations.
>
> While I have learned to work around many of these issues, I don't
> believe I would be able to use it as my primary system, without having a
> GNU/Linux system running in parallel, as a fallback for all the stuff
> that doesn't work on the Hurd.
>
> [...]
>
> One particular problem for desktop use is the fact that while X does
> work, it works very poorly -- it's not only slow and jerky all the time,
> but also tends to lock up completely. (At least with the local socket
> transport... Haven't tried whether forcing TCP works better.)
>
> Note that while many of the stability problems are simply bugs to fix,
> the system will still be very fragile in the absence of these -- a
> simple port leak is sufficient to kill it within seconds. This is
> something that can't be easily solved. Properly fixing this will require
> a sound resource accounting framework, i.e. very fundamental changes to
> the system... Though I tend to believe that it could be improved at
> least partially, at the expense of flexibility, by enforcing certain
> fixed limits on users, processes etc. like other UNIX systems do.
>
> [...]
>
> [But] unlike a few years back [...] the system is stable enough under
> load nowadays [...].
|