# want to study FreeBSD kernel, which book is best?



## mansoda (Dec 27, 2010)

want to study FreeBSD kernel,which book is best?

The Design and Implementation of FreeBSD by Marshall and George ?
or
Absolute FreeBSD: The Complete Guide to FreeBSD by Lucas?

Thanks!


----------



## UNIXgod (Dec 27, 2010)

Brian Kernighan
Rob Pike

The UNIX Programming Environment 

'tis the bible


----------



## vdvluc (Dec 27, 2010)

The Design and Implementation of the FreeBSD Operating System by Marshall and George.


----------



## vermaden (Dec 27, 2010)

@mansoda

Check these also:
http://ftp.freebsd.org/pub/FreeBSD/doc/en/books/arch-handbook/
http://ftp.freebsd.org/pub/FreeBSD/doc/en/books/corp-net-guide/
http://ftp.freebsd.org/pub/FreeBSD/doc/en/books/design-44bsd/
http://ftp.freebsd.org/pub/FreeBSD/doc/en/books/dev-model/
http://ftp.freebsd.org/pub/FreeBSD/doc/en/books/developers-handbook/
http://ftp.freebsd.org/pub/FreeBSD/doc/en/books/porters-handbook/
http://ftp.freebsd.org/pub/FreeBSD/doc/en/books/

... and browse /usr/src ;p


----------



## gordon@ (Dec 27, 2010)

The Design and Implementation book is a dive through the kernel intended as a developer's walkthrough. The Absolute book is more geared toward users.


----------



## UNIXgod (Dec 27, 2010)

There is also this one for kernel hackers: http://nostarch.com/rootkits.htm


----------



## hansivers (Dec 27, 2010)

You got already many excellent answers! 

My suggestion : 

Like others posts, you should first read The Design and Implementation of the FreeBSD Operating System (2004) by Dr McKusick, to get an overview and a good understanding of the various kernel subsystems. 

After that, Advanced Programming in the UNIX Environment (2nd ed., 2005) by R. Stevens is an excellent and classic read. This second edition cover four Unix "implementations" : 

+ FreeBSD 5.2.1
+ Linux 2.4.22 kernel
+ Solaris 9
+ Darwin 7.4.0 (FreeBSD/Mach hybrid underlying Apple's Mac OS X 10.3)

I really appreciate this reading since it gave me a solid understanding of the particularities of the "BSD" UNIX implementation.

Various books have compared the BSD kernel with Solaris kernel and other implementations (e.g., UNIX internals : The New Frontiers, Vahalia, 1995). 

Good reading!!


----------



## mansoda (Dec 28, 2010)

Thanks everyone.
I am reading  Dr McKusick's book now. And will follow others later~
Thank you guys.


----------



## mnlnl4 (Feb 22, 2011)

Beautiful Code by Andy Oram contains a chapter about stackable VFS design in FreeBSD.


----------

