Deliver to your Kindle or other device

 
 
 

Try it free

Sample the beginning of this book for free

Deliver to your Kindle or other device

Read books on your computer or other mobile devices with our FREE Kindle Reading Apps.
The Design and Implementation of the FreeBSD Operating System
 
 

The Design and Implementation of the FreeBSD Operating System [Kindle Edition]

Marshall Kirk McKusick , George V. Neville-Neil
4.5 out of 5 stars  See all reviews (2 customer reviews)

Digital List Price: £39.08 What's this?
Print List Price: £50.99
Kindle Price: £28.37 includes VAT* & free wireless delivery via Amazon Whispernet
You Save: £22.62 (44%)
Unlike print books, digital books are subject to VAT.

Formats

Amazon Price New from Used from
Kindle Edition £28.37  
Hardcover £43.34  


Product Description

Product Description

As in earlier Addison-Wesley books on the UNIX-based BSD operating system, Kirk McKusick and George Neville-Neil deliver here the most comprehensive, up-to-date, and authoritative technical information on the internal structure of open source FreeBSD. 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; system administrators can learn how to maintain, tune, and configure the system; and systems programmers can learn how to extend, enhance, and interface to the system.

The authors provide a concise overview of FreeBSD's design and implementation. Then, while explaining key design decisions, they detail the concepts, data structures, and algorithms used in implementing the systems facilities. As a result, readers can use this book as both a practical reference and an in-depth study of a contemporary, portable, open source operating system.

This book:

  • Details the many performance improvements in the virtual memory system
  • Describes the new symmetric multiprocessor support
  • Includes new sections on threads and their scheduling
  • Introduces the new jail facility to ease the hosting of multiple domains
  • Updates information on networking and interprocess communication

Already widely used for Internet services and firewalls, high-availability servers, and general timesharing systems, the lean quality of FreeBSD also suits the growing area of embedded systems. Unlike Linux, FreeBSD does not require users to publicize any changes they make to the source code.



From the Back Cover

As in earlier Addison-Wesley books on the UNIX-based BSD operating system, Kirk McKusick and George Neville-Neil deliver here the most comprehensive, up-to-date, and authoritative technical information on the internal structure of open source FreeBSD. 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; system administrators can learn how to maintain, tune, and configure the system; and systems programmers can learn how to extend, enhance, and interface to the system.

The authors provide a concise overview of FreeBSD's design and implementation. Then, while explaining key design decisions, they detail the concepts, data structures, and algorithms used in implementing the systems facilities. As a result, readers can use this book as both a practical reference and an in-depth study of a contemporary, portable, open source operating system.

This book:

  • Details the many performance improvements in the virtual memory system
  • Describes the new symmetric multiprocessor support
  • Includes new sections on threads and their scheduling
  • Introduces the new jail facility to ease the hosting of multiple domains
  • Updates information on networking and interprocess communication

Already widely used for Internet services and firewalls, high-availability servers, and general timesharing systems, the lean quality of FreeBSD also suits the growing area of embedded systems. Unlike Linux, FreeBSD does not require users to publicize any changes they make to the source code.




Product details

  • Format: Kindle Edition
  • File Size: 10858 KB
  • Print Length: 720 pages
  • Publisher: Addison-Wesley Professional; 1 edition (2 Aug 2004)
  • Sold by: Amazon Media EU S.à r.l.
  • Language English
  • ASIN: B002L9MZ1K
  • Text-to-Speech: Enabled
  • Average Customer Review: 4.5 out of 5 stars  See all reviews (2 customer reviews)
  • Amazon Bestsellers Rank: #253,639 Paid in Kindle Store (See Top 100 Paid in Kindle Store)
  •  Would you like to give feedback on images?


More About the Author

Marshall Kirk McKusick
Discover books, learn about writers, and more.

Visit Amazon's Marshall Kirk McKusick Page

Tag this product

 (What's this?)
Think of a tag as a keyword or label you consider is strongly related to this product.
Tags will help all customers organise and find favourite items.
Your tags: Add your first tag
 

Customer Reviews

3 star
0
2 star
0
1 star
0
Most Helpful Customer Reviews
10 of 10 people found the following review helpful
Format:Hardcover
"The Design and Implementation of the FreeBSD Operating System" is an excellent technical review of the FreeBSD operating system kernel. This book follows in the foosteps of the D+I of 4.3 BSD (Leffler, et al) and 4.4 BSD (McKusick, et al), and provides a detailed technical description and discussion of the key kernel subsystems in FreeBSD. This version of the book is updated to include many new features introduced since the 4.4 release, including fine-grained SMP support, threading, soft updates, file system snapshots, and much more. This is a must-have purchase for anyone who works with the FreeBSD kernel, or for that matter, any operating system kernel (Linux, *BSD, Solaris, Windows, etc). This should not be your first book on operating systems: a more general introductory volume will provide the necessary background for this thorough coverage, but it should definitely be the second.
Comment | 
Was this review helpful to you?
3 of 4 people found the following review helpful
Format:Hardcover
Well, well, well. This was a surprise - an OS book that I could actually sit down and read. Not full of bullet lists, flow charts, screen shots and source code. Just for that, I have to take my hat off for the authors. My only criticism is that I think that the book could have done with a few more diagrams.
Comment | 
Was this review helpful to you?
Most Helpful Customer Reviews on Amazon.com (beta)
Amazon.com:  11 reviews
41 of 42 people found the following review helpful
Hardly a wasted word in this guide to the FreeBSD kernel 31 Aug 2004
By Richard Bejtlich - Published on Amazon.com
Format:Hardcover
I have been administering FreeBSD systems for four years, and I read 'The Design' to get a better understanding of the system 'under the hood.' This book is definitely not for beginners, and intermediate users like myself can become quickly overwhelmed. Nevertheless, I am very glad FreeBSD developers like McKusick and Neville-Neil took the time to document the kernel in this book.

Before tackling 'The Design,' I recommend reading a book like 'Modern Operating Systems, 2nd Ed' by Andrew Tannenbaum. The reader needs to be familiar with OS concepts and terms like 'mutex,' 'semaphore,' 'locking,' and so on before reading 'The Design.' If for some reason you want to read 'The Design' but are not familiar with userland FreeBSD issues, I recommend Greg Lehey's 'Complete FreeBSD, 4th Ed.'

I was unable to grasp all of the material in 'The Design,' since some of it will appeal only to those coding their own kernels or who are equipped to debate the FreeBSD core team's design choices. In that respect the book is well suited for a college course (perhaps a master's level?) where the content could be discussed by a professor and students. I was able to critically read the chapters covering networking (ch. 11-13) as I deploy FreeBSD partly for its robust TCP/IP stack. Reading 'The Design' helped me understand some of Robert Watson's recent posts concerning removal of the GIANT lock from the networking subsystem, for example.

There are many other parts of the book which non-kernel developers will find accessible. Nearly every chapter features a well-written introduction to the technology at hand, such as memory management (ch. 5) or devices (ch. 7). I found various bits of history helpful, like the development of NFS (ch. 9) or UNIX itself (ch. 1). Those trying to understand issues concerning the new ULE scheduler will find ch. 4 enlightening. The 38 page glossary is also excellent and the index is well-constructed.

'The Design' is the sort of book I expect to consult when I need greater insight to a certain aspect of the FreeBSD kernel. It's an excellent companion when one reads the freebsd-current mailing lists and needs background on the latest hot design issue. I would be happy to see other operating systems have similar books published, so that an apples-to-apples comparison of their capabilities could be made by informed users.
14 of 14 people found the following review helpful
Highly recommended for learning how a kernel works in practice 14 Aug 2005
By Daniel de Kok - Published on Amazon.com
Format:Hardcover
First of all you should be warned that this is not an introduction to get started with UNIX kernel programming. The Design of the UNIX Operating System by M.J. Bach provides a good general introduction to UNIX kernel programming. The design and implementation of the FreeBSD operating system is an excellent book to deepen knowledge of the UNIX kernel by looking how a current UNIX is implemented in practice. Even if you plan to write code for another kernel, working through the FreeBSD kernel with this book as a guide is a good excercise to become consious of the fundamental problems and solutions in kernel design. FreeBSD (or any of the other BSDs) is a good starting point, because the BSDs have relatively stable kernel subsystems and APIs due to the long cycles in BSD development.

The writing style of the authors is to the point (don't expect a novel) and clear. The troff typesetting of the book gives it a consistent style and simple, but clear diagrams (though I heard that some diagrams were hand-drawn). The book doesn't just drop the reader in a kernel subsystem. The second chapter gives a detailed explanation of the various kernel subsystems, and the relation between the subsystems. The third chapter gives a summary of what is expected from a kernel from the user level. Combined these two chapters give the reader the necessary conception of the FreeBSD kernel to start looking at individual parts of the kernel in detail. Most remaining chapters are logically ordered, in that subsystems are ordered from parts with less dependencies to parts with more dependencies (e.g. memory management and I/O are covered before filesystems).

If you are interested in UNIX programming, you should have this book on your bookshelf (as well as a CVS checkout of the FreeBSD kernel tree to read the implementation).
24 of 28 people found the following review helpful
In depth, well written and impressive 16 Aug 2004
By Jack D. Herrington - Published on Amazon.com
Format:Hardcover
This hardback academic style book is an impressive piece of work. The writing style is serious, but not overwhelming, and the use of graphics is appropriate and effective. The organization is what you would expect, it cuts the Kernel as if it were an onion and starts at the center, covering I/O and devices, goes through process management, file systems, IPC and networking. There are exercises at the end of every chapter.

This book is a genuinely impressive piece of work. It's well worth the money for anyone looking for a computer science work on operating systems construction.
Search Customer Reviews
Only search this product's reviews

Popular Highlights

 (What's this?)
&quote;
Processes that execute for the duration of their slice have their priority lowered, whereas processes that give up the CPU (usually because they do I/O) &quote;
Highlighted by 5 Kindle users
&quote;
scheduling priority of a child process is propagated back to its parent. &quote;
Highlighted by 4 Kindle users
&quote;
FreeBSD time-share scheduler uses a priority-based scheduling policy that is biased to favor interactive programs, such as text editors, over long-running batch-type jobs. &quote;
Highlighted by 3 Kindle users

Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
Topic:
First post:
Prompts for sign-in
 

Search Customer Discussions
Search all Amazon discussions
   


Look for similar items by category


Look for similar items by subject


Amazon Media EU S.à r.l. GB Privacy Statement Amazon Media EU S.à r.l. GB Delivery Information Amazon Media EU S.à r.l. GB Returns & Exchanges