The most complete, authoritative technical guide to the FreeBSD kernel's
internal structure has now been extensively updated to cover all major
improvements between Versions 5 and 11. Approximately one-third of this
edition's content is completely new, and another one-third has been
extensively rewritten.
Three long-time FreeBSD project leaders begin with a concise overview of
the FreeBSD kernel's current design and implementation. Next, they cover
the FreeBSD kernel from the system-call level down-from the interface to
the kernel to the hardware. Explaining key design decisions, they detail
the concepts, data structures, and algorithms used in implementing each
significant system facility, including process management, security,
virtual memory, the I/O system, filesystems, socket IPC, and networking.
This Second Edition
- Explains highly scalable and lightweight virtualization using FreeBSD
jails, and virtual-machine acceleration with Xen and Virtio device
paravirtualization
- Describes new security features such as Capsicum sandboxing and GELI
cryptographic disk protection
- Fully covers NFSv4 and Open Solaris ZFS support
- Introduces FreeBSD's enhanced volume management and new journaled
soft updates
- Explains DTrace's fine-grained process debugging/profiling
- Reflects major improvements to networking, wireless, and USB support
Readers can use this guide as both a working reference and an in-depth
study of a leading contemporary, portable, open source operating system.
Technical and sales support professionals will discover both FreeBSD's
capabilities and its limitations. Applications developers will learn how
to effectively and efficiently interface with it; system administrators
will learn how to maintain, tune, and configure it; and systems
programmers will learn how to extend, enhance, and interface with it.
Marshall Kirk McKusick writes, consults, and teaches classes on
UNIX- and BSD-related subjects. While at the University of California,
Berkeley, he implemented the 4.2BSD fast filesystem. He was research
computer scientist at the Berkeley Computer Systems Research Group
(CSRG), overseeing development and release of 4.3BSD and 4.4BSD. He is a
FreeBSD Foundation board member and a long-time FreeBSD committer. Twice
president of the Usenix Association, he is also a member of ACM, IEEE,
and AAAS.
George V. Neville-Neil hacks, writes, teaches, and consults on
security, networking, and operating systems. A FreeBSD Foundation board
member, he served on the FreeBSD Core Team for four years. Since 2004,
he has written the "Kode Vicious" column for Queue and Communications
of the ACM. He is vice chair of ACM's Practitioner Board and a member
of Usenix Association, ACM, IEEE, and AAAS.
Robert N.M. Watson is a University Lecturer in systems, security,
and architecture in the Security Research Group at the University of
Cambridge Computer Laboratory. He supervises advanced research in
computer architecture, compilers, program analysis, operating systems,
networking, and security. A FreeBSD Foundation board member, he served
on the Core Team for ten years and has been a committer for fifteen
years. He is a member of Usenix Association and ACM.