This book describes the design and implementation of the BSD operating system--previously known as the Berkeley version of UNIX. Today, BSD is found in nearly every variant of UNIX, and is widely used for Internet services and firewalls, timesharing, and multiprocessing systems. Readers involved in technical and sales support can learn the capabilities and limitations of the system; applications developers can learn effectively and efficiently how to interface to the system; systems programmers can learn how to maintain, tune, and extend the system. Written from the unique perspective of the system's architects, this book delivers the most comprehensive, up-to-date, and authoritative technical information on the internal structure of the latest BSD system. As in the previous book on 4.3BSD (with Samuel Leffler), the authors first update the history and goals of the BSD system. Next they provide a coherent overview of its design and implementation. Then, while explaining key design decisions, they detail the concepts, data structures, and algorithms used in implementing the system's facilities. As an in-depth study of a contemporary, portable operating system, or as a practical reference, readers will appreciate the wealth of insight and guidance contained in this book. Highlights of the
This textbook is something of a classic in the field, and is engaging enough to read in your free time. There were some passages that I thought a good editor could have tightened up, but overall it's an enjoyable book. Regardless of whether you've taken a class on operating systems, I believe you can benefit from reading about the design of 4.4 BSD. And used copies are easy enough to find at a decent price.
Additionally, I can't help but notice that this book was published in 1996. I remember hearing that it was possible to get "free operating systems" on the Internet back then, but I never truly believed it. 4.4 BSD was one of those operating systems, and it was far more advanced than Windows 95 (the system I used at the time). If only I had known better, I could have saved myself an incredible amount of frustration by switching to the UNIX world three years (or more) earlier. As it was, I discovered Linux in '99.
Needs a better editor. Or a ghostwriter. It's full of the sort of mangled writing that academics seem to love. The contents are interesting, but sometimes the overview gets too detailed. The level of familiarity assumed seems inconsistent: some fairly basic concepts are discussed at length, while other not-so-basic concepts are assumed common knowledge.