l4-hurd
[Top][All Lists]
Advanced

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

Re: HURD to L4 todo


From: Farid Hajji
Subject: Re: HURD to L4 todo
Date: Mon, 8 Oct 2001 20:55:31 +0200 (CEST)

Hi Ed,

> > What do you mean by "system programming"? Some people mean things like
> > exercising the Unix/POSIX API, others mean kernel programming. In the
> > first case, you may want to have a look at Stevens' "Advanced Programming
> > in the Unix Environment" for a general intro to Unix programming. Other
> > books are available as well.
> Kernel hacking and immediate layers on top (with micro-kernels)
OK.

You may also want to have a thorough look at OSKit. OSKit is excellent
for kernel hackers, because it provides you with "kernel libraries"
that encapsulate typical functionality that you need in every kernel,
be it monolithic or microkernel.

> > For kernel programming, you may want to have a look at textbooks about
> > OS design like e.g. Tanenbaum's (of Minix's Fame) "Operating Systems",
> > but also kernel books like McKusick, Bostic, Karels, Quaterman "The Design
> > and Implementation of the 4.4BSD Operating System".
> I think I might be able to get a hold of Tanenbaum's "Modern Operating 
> Systems 1st Edition"
> I want to work on stuff to help get well designed software to the masses kind 
> of thing.  Fill in
> the wholes that help.  Work on this port, fiasco (flex io pages, 4GB RAM, 
> explicitly checking for
> write protection before writing to user memory), HURD itself, and stuff I'm 
> not sure where it
> belongs (irq sharing, FPU emu), etc.  I know those things are a lot 
> (ambitious) but those are what
> I would like to see done.  I might not have the skill for them but I can 
> always learn and try (and
> maybe fail).
Your best reference is the source to a working kernel, like, say,
Linux or {Free,Open,Net}BSD, but also in the OSKit mentioned earlier.

If you want to see a clean separation between architecture dependent
and independent parts, I'd recommend that you have a look at NetBSD,
which is one of the most portable kernels in the world. Other kernels
are trying to add support for more architectures as an afterthought,
but the NetBSD's project started with full portability in mind. (Well,
you'll guess that as a BSD user myself, I'm somewhat biased here ;-)).

If you want to help right away, and get a feeling about low-level
kernel hacking, you may want to have a try at a device driver for L4/x86!
You'll have to learn how to access a device (e.g. memory mapped or using
the I/O address space and reading/writing latch registers) in general
[e.g. by studying an existing device driver on either Linux or BSD]
and then try to port (or rewrite) that driver to L4 [e.g. after you've
learned how L4 passes IRQ-notifications to you and how you can access
the memory/io-space via L4]. Interested?

> Thanks for the tips.  I'll try and get a hold on some of the stuff and study 
> the source code
> Ed Page

Happy Hacking, you'll certainly enjoy it ;)

-Farid.

-- 
Farid Hajji -- Unix Systems and Network Admin | Phone: +49-2131-67-555
Broicherdorfstr. 83, D-41564 Kaarst, Germany  | address@hidden
- - - - - - - - - - - - - - - - - - - - - - - + - - - - - - - - - - - -
One OS To Rule Them All And In The Darkness Bind Them... --Bill Gates.




reply via email to

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