l4-hurd
[Top][All Lists]
Advanced

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

Re: Contributing to the Hurd


From: Rian Hunter
Subject: Re: Contributing to the Hurd
Date: Tue, 15 Feb 2005 20:16:59 -0500
User-agent: Mozilla Thunderbird 1.0 (Macintosh/20041206)

Rian Hunter wrote:
Alfred is right, everyone has this mentality of being told what to do when it comes to the HURD. Most other projects just receive patches daily. Why?

When it comes to the HURD there is too much idealism involved (not that this is a bad thing). People think it is their duty to contribute something so that the HURD prevails and becomes as popular of a system as GNU/Linux. The reality?

[ ... ]

Contribute what you _can_, any contribution is good, documentation is good, web pages are good, it doesn't matter, any little thing, everything is important seriously, not just the code.

One last note, how can you even ask what to contribute (code-wise) if you haven't even looked at the code? How contradictory is that? Because I can guarantee that once you have you will see that there is _PLENTY_ to do.

Since I was bugged this much to write this long pointless email, I thought I would use this energy for something constructive. Attached is a sample page that could be put on the L4-Hurd Web Page that might find some use. Thanks
-rian
 [image of the Hurd logo] [ English ]
What's New
 
ChangeLogs

The GNU Hurd
 
Documentation
Installation
Getting Help
Source Code
Development
History
 
GNU Mach
 
Documentation
Installation
Source Code
 
MiG
 
Source Code
 
Related Projects


Table of Contents


How to Contribute to Hurd-L4

If you are looking to contribute to Hurd-L4 and you don't know where to start don't expect the maintainers to have a fully delineated chart of things to do next. In the current state of the project, there are so many things that need to be done that a list really isn't necessary.

If you are a programmer with at least experience with C and you've never hacked anything close to the Hurd before but you really want to start contribute some code, below are provided some readings which will help you gain familiarity with microkernel based OS design and programming for Hurd-L4.

Some other requirements for hacking Hurd-L4 are low-level knowledge of how a computer is executing a program and computer assembly, although this is not required for much of the Hurd-L4 codebase since higher-level abstractions will be/have been created.

Currently Memory Management and the Device Driver Framework are hot topics still up for discussion in the system, if you would like to start working on any of these subsystems but don't have a clue how you should read the current plans in "The Hurd on L4", read some academic papers on implementations in other systems, and look at existing code (Linux, *BSDs). You should definitely understand virtual addresses, paging, and different pros and cons to paging schemes so you are able to solve problems within our own paging scheme.

Understanding the boot process is very essential to getting started. Read the Multiboot Standard and have a look at the sample kernel provided at the GRUB webpage. Also have a look at either Kickstart (included with L4::Pistachio) or laden (in the L4-Hurd CVS tree) to see how Pistachio is getting loaded into memory.

There is much to learn to get started with hacking Hurd-L4, but consider it an enjoyable learning process.

Links pertaining to learning L4-Hurd

Some of these links are at other web sites not maintained by the FSF. The FSF is not responsible for the content of these other web sites.


[ English ]

Return to GNU's home page.

Please send FSF & GNU inquiries & questions to address@hidden. There are also other ways to contact the FSF.

Please send comments on these web pages to address@hidden, send other questions to address@hidden.

Copyright (C) 2001, 2002 Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA

Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.

Updated: $Date: 2005/01/31 00:10:41 $ $Author: marcus $



reply via email to

[Prev in Thread] Current Thread [Next in Thread]