[[!meta copyright="Copyright © 2011 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]]."]]"""]] A quarter of the Hurd, Q2 of 2011, PS: *GNU Hurd Truths and Rumors*. [[!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|news/2011-q2]]* has been picked up by a bunch of news sites, blogs, and so on, discussions have been running all over the net. While we are happy to see that there obviously is quite some interest in the GNU Hurd, we also saw some rumors and outdated information flowing around. In the following, we try to clear the situation up a bit. * **Debian GNU Hurd works to become a port in Debian**: We plan to get into Wheezy as an additional port besides GNU/Linux and GNU/kFreeBSD -- but we don't know whether we will make it. It mostly depends on a lot of work which is still to be done. If you want to help, please see our [[contributing]] page and the *to do* list maintained on . 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 the GNU/Hurd as part of his [[Google Summer of Code project|user/jkoenig/java]], focussing on OpenJDK 7. Also, we already do have support by the GCJ/ECJ platform, but this is not fully functional, and Jérémie is improving that, too. * **GNU/Hurd supports X.org, though a bit unstable**: X.Org *does* work, and has worked for a long time. (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), by chance?) It is correct however that not a lot of advanced drivers work, due to missing DRM (Direct Rendering Manager) support and that it is [[somewhat_unstable|hurd/status]]. * **The Hurd has weaker device support than Linux**: Currently most drivers are from Linux 2.0. For network cards, Linux 2.6+ drivers are available through DDE, though (needs manual setup for now). With a good amount of work, DDE also allows porting other classes of drivers to allow using the drivers from recent Linux releases — and push them into userspace. * **The Hurd has SMP, but Mach needs drivers for new chipsets**: The **Hurd servers support SMP** and **GNU Mach has SMP support**. But the latter [[does_not_yet_have_drivers_for_nowadays_chipsets|faq/smp]], so the Hurd currently can’t take advantage of multiple cores. * **The good design of the Hurd allowed a tiny group of enthusiasts to make it work**: For the last decade, the Hurd had on average 5 hobby developers. That these developers managed to get the Hurd into a state where it actually gets not too far from the Linux kernel in performance — which has about 1000 developers, many of them full time — shows the efficiency of the Hurd’s design. * **Manual Installation is still challenging**: Please read the [[README|http://people.debian.org/~sthibault/hurd-i386/installer/cdimage/YES_REALLY_README.txt]] ([[file|http://xkcd.com/293/]])? Just like any beta piece of software, there are known pitfalls to avoid (or better, help to fix). You can also simply use the the [[preinstalled image|http://people.debian.org/~sthibault/hurd-i386/debian-hurd.img.tar.gz]]. * **The system is called GNU**: The GNU userland (glibc, coreutils, …) and the GNU Hurd together form the GNU system. To avoid being mistaken for GNU/Linux, we normally use the name GNU/Hurd or GNU Hurd. The *correct* name is simply GNU. **Test results** The results of the test from Phoronix were quite good. We expected that the microkernel design of the Hurd would have a far more severe performance hit. Some possible explanations include: * The tests were mostly CPU bound, so the kernel was not that relevant. * IPCs [are no more such a problem on recent hardware][ipc]. Note: The emulation layer should rather make the context switches worse, so it’s likely not a reason for the unexpectedly good performance. We hope to see more tests like that in the future! [ipc]: http://citeseer.ist.psu.edu/viewdoc/summary?doi=10.1.1.51.16 """]]