kernel hack

Stefan Sperling stsp at
Sun Sep 25 09:36:15 PDT 2005

On Sun, Sep 25, 2005 at 03:31:51AM -0700, kamal kc wrote:
> does anybody know what is the best way
> to start kernel hack.

IMHO, the best way to start kernel hacking is to invest
an awful lot of time into reading books.

I presume you know C _really_ well already :)
And by really well I also mean you know what is wrong about C!

Any modern book on writing device drivers should be a good starting point.
It does not really matter which UNIX-derivative the book is about.
Hint: There are a lot of these books about Linux.

Read programmer's datasheets, preferably for devices you own,
and learn how to talk to registers from C. has datasheets for sound cards, for example.

Make sure you also learn about multi-threading (mutexes, semaphores etc).
A lot of kernels are multi-threaded these days.

A very good overview of the FreeBSD kernel is given in "The Design
and Implementation of the FreeBSD Operating System", by Mr. McKusick
and Mr. Neville-Neil. Read all of it. Having learned about drivers
and multi-threading beforehand helps a lot.

> Any references to any web page would 
> be appreciated

Get books, it's worth it! You really don't want to read this much
material on your monitor! (Unless you have a 28" TFT of course ;).
Plus books are often much better written, easier to understand,
and a lot more detailed than tutorials on the web. also has an interesting kernel
section to get you started before your books arrive :)

stefan                                 PGP Key: 0xF59D25F0

More information about the freebsd-current mailing list