Books

From NetBSD Wiki

Jump to: navigation, search

Here are some books that come highly recommended:

Contents

Introductory

The "Unleashed" series from Sams publishing 
Quite in-depth books, they tend to "grow" with you as you take your first steps in the Unix world. There's a FreeBSD Unleashed and several distro-specific Linux Unleashed books.
Michael W. Lucas -- "Absolute OpenBSD" 

Very usefull, expecially if you are an experienced Linux user or system manager and you want to try the (Open|Net)BSD world.

Jacek Artymiak -- "Building Firewalls with OpenBSD and PF" 

Clean and well organized explain exactly what the title says. It has a good general introduction to firewalling and is a good choice is you want to implement (or learn) firewalls (packet filtering, NATting, traffic shaping etc.) with PF. Before buying check that your NetBSD release of chioce support well PF. NetBSD-4.0 should be ok.

Advanced

Eric S. Raymond -- The Art of Unix Programming Book homepage Complete text online 
Discusses design principles of Unix and its programs. Despite the name, it does not really discuss programming. You can read it easily if you're not a hacker. It's a little opiniated, so take some of it with a grain of salt.
The Unix Haters Handbook PDF (the book's out of print) 
Yes, we all agree that Unix rocks, but you still must read this. It provides you with some perspective (and ammo against real Unix-haters :) ) "Unix survives only because everyone else has done so badly." Thought-provoking indeed...
Diomidis Spinellis -- Code Quality: The Open Source Perspective 
Intriguing discussion about the aspects of code quality from a FreeBSD developer. Uses NetBSD as an example.

Programming

David R. Butenhof -- Programming with POSIX(R) Threads 
Your mileage may vary, but a good introduction to threaded programming in C.
W. Richard Stevens -- Advanced Programming in the Unix Environment 
A true classic known as "APUE". Best described as a valuable learning material for beginners and as a ultimate reference guide for experts.
W. Richard Stevens, Bill Fenner and Andy Rudoff -- UNIX Network Programming, Volume 1: The Sockets Networking API (3rd Edition)
Still the best available book on socket programming. Should be in a shelf of any serious programmer.
W. Richard Stevens -- UNIX Network Programming, Volume 2: Interprocess Communications (2nd Edition) 
The second part of the Stevens' classical networking book, familiarly known as "UNP". May feel now outdated in some parts (published in 1998), but still introduces the basic concepts of IPC in Stevens' superior pedagogical style.
The UNIX Programming Environment 
This books describe all aspects for programming and documenting Unix programs.

Kernel

Marshall Kirk McKusick -- The Design and Implementation of the FreeBSD Operating System 
Every developer should have this on his bookshelf, even though it's not strictly about NetBSD. (supercedes The Design and Implementation of the 4.4BSD Operating System)
Maurice J. Bach -- The Design of the Unix Operating System 
A little dated, but still very much worth the read. Very System V-centered, though. Useful if you'd like to know more about the "other" family branch :)
Jim Mauro and Richard McDougall -- Solaris Internals: Core Kernel Architecture 
A good introduction to Solaris kernel internals. Focuses on multi-threaded architecture, scheduling, and synchronization. Used as a reference for the new SMP framework in NetBSD 5.0.
John Lions -- Commentary on the Sixth Edition UNIX Operating System Complete text and sources online 
An introductory level discussion of the original UNIX sources. That version of UNIX consisted of just 44 files, which means you can fully understand the entire kernel, especially after reading this book.

Security

The OpenBSD PF Packet Filter Book Book homepage 
This book covers the use of the PF packet filter and related tools on NetBSD, FreeBSD, DragonFly, and OpenBSD. ISBN-13: 978-0-9790342-0-6.
Joseph Kong -- Designing BSD Rootkits: An Introduction to Kernel Hacking 
If you can ignore the certain hax0r elements in some parts of the book, an enjoyable journey to the world of FreeBSD kernel internals. Not for fainthearted.
Retrieved from "http://wiki.netbsd.se/Books"
Personal tools