summaryrefslogtreecommitdiff
path: root/news/2011-q2-ps.mdwn
blob: f62a23aecbe2fd2270f1478eda4585e0736f717d (plain)
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
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
[[!meta copyright="Copyright © 2011, 2013 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]]."]]"""]]

[[!meta date="2011-10-13 10:00 UTC"]]

A quarter of the Hurd, Q2 of 2011, PS: *GNU Hurd Truths and Myths*.
[[!if test="included()" then="""[[!toggle id=full_news
text="Details."]][[!toggleable id=full_news text="[[!paste id=full_news]]"]]"""
else="
[[!paste id=full_news]]"]]

[[!cut id="full_news" text="""

After our last *[[Quarter of the Hurd, Q2 of 2011|2011-q2]]* has been picked
up by a bunch of news sites, blogs, and so on, discussions and speculations
have been running all over the net:

  * {{$news/2011-q2#lwn}};
  * {{$news/2011-q2#phoronix-1}};
  * {{$news/2011-q2#phoronix-2}};
  * {{$news/2011-q2#golem}};
  * {{$news/2011-q2#h-online}};
  * {{$news/2011-q2#innocenthacker}};
  * {{$news/2011-q2#netzwelt}};
  * {{$news/2011-q2#osnews}};
  * {{$news/2011-q2#pro-linux}};
  * {{$news/2011-q2#reddit-1}};
  * {{$news/2011-q2#reddit-2}};
  * {{$news/2011-q2#slashdot}};
  * and a lot more.

We are happy to see that there is
considerable interest in the Hurd; but we also saw some
misunderstandings, false rumors, and outdated information floating
around.  Thus we will try to clarify the situation regarding some of
the more common misunderstandings.

  * **Debian GNU/Hurd strives to become an official Debian port**:
    The Debian GNU/Hurd team is working hard to prepare a technology
    preview/release candidate for the next Debian release (Wheezy), to
    eventually become an official port alongside GNU/Linux and GNU/kFreeBSD --
    but we don't know yet whether we will make it.  This is also the
    understanding of (for example) Debian's spokesperson
    {{$news/2011-q2#schmehl}}.
    There is still substantial work necessary to indeed become a release candidate.
    If you
    want to help, please see our [[contributing]] page and the *to do*
    list maintained on <http://wiki.debian.org/Debian_GNU/Hurd>.  We'd
    be happy to have you on board!

  * **Java support for GNU Hurd is nearby**: Jérémie Koenig is working
    on making a versatile Java programming environment available on
    GNU/Hurd as part of his
    [[Google Summer of Code project|user/jkoenig/java]], focusing on
    OpenJDK 7.  [Experimental
    packages](http://jk.fr.eu.org/debian/experimental/)
    are already available.
    Also, Java support in GCC (via GCJ/ECJ) has been available before,
    which Jérémie also improved.

  * **GNU Hurd supports X.Org, though a bit unstable**:
    X support has been present for ages
    (anyone remember
    [1998's
    XFree86](http://cvsweb.xfree86.org/cvsweb/xc/programs/Xserver/hw/xfree86/os-support/hurd/hurd_video.c?rev=1.1&content-type=text/vnd.viewcvs-markup)?),
    and X.Org also has been supported for a long time (for example, GNU Hurd
    support is explicitly mentioned in the [X.Org 7.2 release
    announcement](http://www.x.org/wiki/Other/Press/X11R72Released?action=show&redirect=PressReleases%2FX11R72Released)).
    It is true though that many modern graphic card drivers don't work anymore,
    as they require DRM (Direct Rendering Manager) support,
    so often only VESA is available.
    Also, X on the Hurd is [[somewhat_unstable|hurd/status]].

  * **GNU Hurd has weaker device driver support than the Linux kernel**:
    Most of the drivers we use today were imported from Linux 2.0 series.
    For network cards,
    Linux 2.6.29 drivers are available through [[DDE|hurd/dde]] --
    however, this is not fully integrated yet,
    so using these drivers needs manual setup for now ([[hurd/dde/guide]]).
    Support for other driver types is also possible with DDE in principle,
    but it requires some not-trivial work for each additional class of drivers,
    so this can take some time to become available.
    (An additional benefit provided by DDE is that the device drivers run as
    regular user-space processes --
    unlike the old drivers we were using so far,
    which are part of the underlying GNU Mach microkernel.)

  * **The Hurd has SMP, but needs support for new chipsets**:
    Both GNU Mach (the microkernel used by the Hurd),
    and the Hurd servers themselves come with SMP support.
    However, GNU Mach [[misses drivers for modern SMP chipsets|faq/smp]], and
    there are also some SMP-related bugs in the implementation,
    so further work is needed
    for the Hurd to take advantage of multicore processors.

  * **Installation can still be challenging**:
    Please [[take notice|http://xkcd.com/293/]] of the
    [README file](http://people.debian.org/~sthibault/hurd-i386/installer/cdimage/YES_REALLY_README.txt) --
    just like with any software in development,
    there are some known pitfalls to avoid.
    (Or better yet, help to fix.)  :-)
    Alternatively, you can simply use the the
    [preinstalled
    image](http://people.debian.org/~sthibault/hurd-i386/debian-hurd.img.tar.gz)
    in QEMU/KVM/VirtualBox/...

  * **GNU Hurd is not the same as GNU/Hurd**:
    The GNU project set out in 1983 to create a complete free operating system.
    When a distribution such as Debian combines their GNU-based userland
    with the GNU kernel (named [[*GNU Hurd*|hurd/what_is_the_gnu_hurd]]),
    the result is more or less a full GNU system.
    However, such third-party distributions are distinct
    from what an official complete GNU system release would be;
    and thus we often call them *GNU/Hurd* for clarity, similar to *GNU/Linux*
    or *GNU/kFreeBSD*.

  * **Performance**:
    The benchmarks conducted by Phoronix (as reported by
    {{$2011-q2#phoronix-3}}) (Phoronix/Michael: thanks for doing these!)
    attest very good performance to the Hurd.
    Keep in mind though that these benchmarks were almost completely CPU-bound,
    so they essentially just confirm that we don't do anything stupid
    regarding CPU initialization (cache setup, etc.).
    The results would be different for benchmarks
    that actually exercise the operating system functionality more.
    The fact that the tests were performed in a virtualized environment,
    might also have helped the results,
    for example by mitigating the effects of our unoptimized I/O paths --
    which are currently the major bottleneck in most situations.
    Nevertheless, these results are a hint
    that the extra IPC required in microkernel systems
    [[doesn't necessarily hamper performance|ipc#performance]]
    quite as much as often believed.
    We are glad to see such solid benchmarks
    help dispel some of the myths around the Hurd and other microkernel-based
    systems.

  * **Given the available manpower, the progress is very good**:
    Over the past decade,
    there were seldom more than [[*half a dozen developers* at any given
    time|faq/how_many_developers]]
    hacking on the Hurd, in their spare time --
    not hundreds of paid developers like Linux has nowadays.
    Considering this, the progress made is quite encouraging
    with the system being [[pretty usable|hurd/status]] for many day-to-day tasks now.
    It is generally understood that the ambitious architecture of the Hurd
    requires a lot of effort to get it working at all,
    but the recent progress shows that once the foundations are in place,
    the Hurd design indeed allows the developers to be very productive.
    To see the progress over the last few years, you can have a look at our 
    [[news archive|news]].  If you're interested, you can find various ways of
    [[contributing]].  We'd be happy to see you join in, because for the Hurd,
    every single helping hand makes a big difference!

"""]]