- Save 10% on Books for Schools offered by Amazon.co.uk when you purchase 10 or more of the same book. Here's how (terms and conditions apply) Enter code SCHOOLS2016 at checkout. Here's how (terms and conditions apply)
The Design and Implementation of the FreeBSD Operating System Hardcover – 5 Sep 2014
|New from||Used from|
- Choose from over 13,000 locations across the UK
- Prime members get unlimited deliveries at no additional cost
- Find your preferred location and add it to your address book
- Dispatch to this address when you check out
Special Offers and Product Promotions
Frequently Bought Together
Customers Who Bought This Item Also Bought
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
About the Author
Marshall Kirk McKusick writes books and articles, consults, and teaches classes on UNIX- and BSD-related subjects. While at the University of California at Berkeley, he implemented the 4.2BSD fast filesystem and was the Research Computer Scientist at the Berkeley Computer Systems Research Group (CSRG), overseeing the development and release of 4.3BSD and 4.4BSD. His particular areas of interest are the virtual-memory system and the filesystem. He earned his undergraduate degree in electrical engineering from Cornell University and did his graduate work at the University of California at Berkeley, where he received master’s degrees in computer science and business administration, and a doctoral degree in computer science. He has twice been president of the board of the Usenix Association, is currently a member of the FreeBSD Foundation Board of Directors, a member of the editorial board of ACM’s Queue magazine, a senior member of the IEEE, and a member of the Usenix Association, ACM, and AAAS. In his spare time, he enjoys swimming, scuba diving, and wine collecting. The wine is stored in a specially constructed wine cellar (accessible from the Web at http://www.McKusick.com/cgi-bin/readhouse) in the basement of the house that he shares with Eric Allman, his partner of 35-and-some-odd years and husband since 2013.
George V. Neville-Neil hacks, writes, teaches, and consults in the areas of Security, Networking, and Operating Systems. Other areas of interest include embedded and real-time systems, network time protocols, and code spelunking. In 2007, he helped start the AsiaBSDCon series of conferences in Tokyo, Japan, and has served on the program committee every year since then. He is a member of the FreeBSD Foundation Board of Directors, and was a member of the FreeBSD Core Team for 4 years. Contributing broadly to open source, he is the lead developer on the Precision Time Protocol project (http://ptpd.sf.net) and the developer of the Packet Construction Set (http://pcs.sf.net). Since 2004, he has written a monthly column, ‘‘Kode Vicious,’’ that appears both in ACM’s Queue and Communications of the ACM. He serves on the editorial board of ACM’s Queue magazine, is vice-chair of ACM’s Practitioner Board, and is a member of the Usenix Association, ACM, IEEE, and AAAS. He earned his bachelor’s degree in computer science at Northeastern University in Boston, Massachusetts. He is an avid bicyclist, hiker, and traveler who has lived in Amsterdam, The Netherlands, and Tokyo, Japan. He is currently based in Brooklyn, New York, where he lives with his husband, Kaz Senju.
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 doctoral students and postdoctoral researchers in cross-layer research projects spanning computer architecture, compilers, program analysis, program transformation, operating systems, networking, and security. Dr. Watson is a member of the FreeBSD Foundation Board of Directors, was a member of the FreeBSD Core Team for 10 years, and has been a FreeBSD committer for 15 years. His open-source contributions include work on FreeBSD networking, security, and multiprocessing. Having grown up in Washington, D. C., he earned his undergraduate degree in Logic and Computation, with a double major in Computer Science, at Carnegie Mellon University in Pittsburgh, Pennsylvania, and then worked at a series of industrial research labs investigating computer security. He earned his doctoral degree at the University of Cambridge, where his graduate research was in extensible operating system access control. Dr. Watson and his wife Dr. Leigh Denault have lived in Cambridge, England, for 10 years.
What Other Items Do Customers Buy After Viewing This Item?
Top Customer Reviews
There are some books that the word 'comprehensive' doesn't even come near to describing. This is one such book! If you want to know the details of any part of the FreeBSD operating system then this, together with the source code, is the reference book for you.
The book doesn't just cover the workings of the kernel, it also goes into details of the I/O systems, IPC, and startup/shutdown (init, of course. If you want the newfangled, monolithic, systemd, you need to look elsewhere). I found the IPC section particularly useful. I have other books that cover the issue, but I found the exposition in this book very clear and in depth.
Since FreeBSD is a 'nix, much of what is in this book is relevant to other variants of Unix, and while an application programmer might not need to know what's going on under the hood, any more than you need to be a car mechanic to drive a car, it certainly helps to write efficient programs.
For someone studying operating systems at college, this book should be high on the 'must have' list, you would have to buy several other books to cover the topics in the depth it does. Even then, the coverage wouldn't have the cohesiveness this book has.
All in all, I would definitely recommend this book to anyone with an interest in modern Unix operating systems. You may be able to get cheaper books, but you won't get one that's so comprehensive!
I love the fact that with over 900 pages + hard cover, it's relatively thin, thinner than one of my books that's 400 pages with soft cover! The paper itself is great too. I'm yet to find anything that I don't like.
If you are using FreeBSD, then you definitely need a copy.
If you just have an interest in how operating systems work, then you will find this book fascinating.
Most Helpful Customer Reviews on Amazon.com (beta)
The way I see it, the kernel has two faces- one close to the hardware, and the other close to the person writing an application using system calls. And a big chunk in between. Here's the ? If FreeBSD and it's beautiful sister PC-BSD boot up into zfs, zfs is in the kernel, it's the mounted filesystem, why only 30-something pages in this edition on zfs ? This is a kernel book. If someone is writing system calls to work on or with the file system, they're working on the face of the kernel close to them, isn't that the face zfs presents itself via system calls to a programmer? Or is zfs on the face closest to the hardware? Not clear on this myself.
I am still trying to understand what is being said in Chapter 7, but do see that excellent kernel diagram at the start of Chapter 7! I was hoping there would be more of a description of how zfs actually stitched into the kernel, on both faces and in the big chunk in the middle. It's probably closer to the hardware than I imagine. As I posted on the PC-BSD forums, the on-disk specification of zfs is complex. I don't see how the system calls you make have anything to do with zfs, unless I guess you are writing extensions to it.
I would appreciate someone clarifying this issue for me, someone that does that kind of programming.
***It doesn't seem as if the entire chapter, Chapter 9 on the Fast File System, is applicable any more to the two current BSD's. Perhaps historically. Too bad they didn't add those pages to zfs explication.***
Just as a postscript, the only two UNIX systems that ship with zfs in the kernel that I know of are FreeBSD/PCBSD and Oracle Solaris/ OpenIndie. I know you can build it from openzfs source, into a Steve, Linus, or probably even Bill machine. But the only two families that have it pre-built in are the ones I mentioned.
I only use Solaris 11.2 and PC-BSD 10.0.3. I have FreeNas, Nexentastor, and I never run a virtual machine or jails. Don't believe in it. Also only build from DVD from www.osdisc.com.
Thanks for reading this!
Haven't read it cover to cover or anything like that, so who knows, maybe its a pretty good read as well.
Between this and the Stevens "TCP/IP Illustrated" series, you've got good material.
Its worth noting that this book is not a generic OS design book. The focus of the book relates to FreeBSD-specific details. This book is also not really an exploration of POSIX or any other attempt to standardize system interfaces. This book is definitely not a programming guide....for that, I recommend "Advanced Programming in the Unix Environment" (aka APUE) which has coverage of BSD apis (as well as linux)...which is an excellent companion for this work.
I would like to see a perpetual electronic version of this book...on the back cover there was only a reference to free 45 day access. That is disappointing in 2014.
Many technical books focus on "how". There are plenty of excellent biographical accounts of teams or individuals -- the "who". This book focuses more on the "what" and, more importantly, the "why". Not everyone needs to have this depth of understanding, but when you've hit a plateau in understanding infrastructure, this book will definitely help you "level up". Even if you're not a big user of FreeBSD there is a ton of useful information about a wide variety of topics relevant to other Unix/Linux systems, networking, storage, and even Windows.