[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Hurd Advocacy?



> On the advocacy issue it is the above which is a good part of the reasons
> I'm watching two OS development projects. The Hurd of course being one of
> them, and by far the larger. The other, and to use the analogy of a smart
> terminal vs. dumb terminal... the other is the Amiga clone project AROS
> which besides being targeted to be a standalone, is currently running
> hosted on Linux. But I think the two (The Hurd and AROS) can make for an
> interesting pair running together.
[snip]

The Hurd's project's objectives can be seen from two perspectives:
  1. being technically superior, innovative, bleeding-edge, ...
  2. being popular among mainstream (Linux?-)users.

This is similar to BSDs vs. Linux. Both are excellent projects and I
like using both kinds of OSes. Both are also excellent cultures, which
cross-polineate each other, and personally I feel pretty much at home
in both. However, they are not the same and their objectives are quite
different. They are both very strong open source (or free software)
representatives, but their approaches differ somewhat. While BSDs focus
more on technicalities (and have a culture of their own), Linux
has a broader user-base with more diverse interests. Sure, both
projects contribute greatly to open source and free software, but
they do so from different directions.

The Hurd, being work-in-progress, needs developers (and users to
test and help spread the word) from both camps. We need kernel hackers
which are paying very close attention to architectural issues, because
the Hurd needs a redesign, not only to adapt it to L4, but also to
get rid of some crippling assumptions which have been made in the past,
before we learned more on OS design and implementation. OTOH, we also
need innovative grass-roots developers, who are ready to jump in and
contribute new ideas and code in a Linux-like manner.

We've got a pretty good contact to L4 developers at l4ka.org as well.
While the Hurd has been a long time in limbo, we now have a very good
potential to use the experiences learned from Hurd/Mach to create a
new and much better version of the Hurd (here: Hurd/L4) which could
even be quite uKernel independent (the Holy Grail of OS design...).
Now would be a really good time to jump in. The complete infrastructure
is finally in place (L4Ka::Pistachio, IDL4 compiler, a device framework
from DROPS or e.g. NetBSD sources, ...) to build the framework on which
a new Hurd could be build upon.

To attract talented developers (from both camps), we need
  * a useable development environment: We have that, thanks to
    debian-hurd, and Phil for the CDs.
  * a modern microkernel that is at the bleeding edge of kernel
    design. Mach is somewhat antiquated and if you look at HotOS
    conferences, you'll know what I mean. OTOH L4 is being actively
    developed, and many papers are being written on it right now.
    The Hurd/L4 challenge will help a great deal to attract serious
    hackers who are willing to test their skills against a truly
    innovative OS/uKernel architecture combo.
  * developers of user-space applications, distributions etc...,
    which would port applications to the Hurd, extend the Hurd
    by writing more translators, device drivers, ... People with
    this set of skills are probably most represented in the Linux
    community and I'm confident that we'll find enough hackers who
    are willing to help (in addition to those already working on
    debian-hurd).

The Hurd, and especially Hurd/L4 are both very stimulating
challenges. Everyone is invited to participate in the redesign
and implementation of Hurd/L4. You don't need to be a kernel
guru to start working on the project.

All you need to contribute to the core development, is code
reading skills. See "Code Reading: The open source perspective"
by Diomidis Spinellis. Then dig in Hurd sources and play around.
It is really fun to write a translator that generates a file system
on-the-fly using Hurd libraries. The more you dig in the Hurd,
the easier it will be to really appreciate what needs to be done
in the Hurd/L4 port.

If you're interested in contributing code to Hurd/L4, please consider
subscribing to the l4-hurd@gnu.org mailing list.

P.S.: As far as AROS is concerned: Did you have a look at NetBSD,
including their amiga port? Actually, I personally think that one
way to refactor the Hurd would be to do some kind of NetBSD/L4
port (or partial port) first and then use as much as possible from
NetBSD's very clean architecture (MD vs. MI code, drivers, ...)
as framework for the Hurd/L4.

Regards,

-Farid.

-- 
Farid Hajji. http://www.farid-hajji.net/address.html



Reply to: