GetTextbooks.co.uk  
 Compare Prices & Save up to 90%
Search by ISBN, title, author, etc ...

Login | Sign up | My Wish List 


Operating Systems: Design and Implementation (Second Edition)

by Andrew S. Tanenbaum, Albert S. Woodhull

ISBN-10: 9780136386773
ISBN-10: 0-13-638677-6
ISBN-13: 9780136386773
ISBN-13: 978-0-13-638677-3
Hardcover
1997-01-15
Prentice Hall


Find Lowest Price

Editorials


Product Description

Most books on operating systems deal with theory while ignoring practice. While the usual principles are covered in detail, the book describes a small, but real UNIX-like operating system: MINIX. The book demonstrates how it works while illustrating the principles behind it. Operating Systems: Design and Implementation Second Edition provides the MINIX source code. The relevant selections of the MINIX code are described in detail. When it first came out, MINIX caused something of a revolution. Within weeks, it had its own newsgroup on USENET, with 40,000 people. Most wanted to make MINIX bigger and fancier. Instead, Linux was created. That has become quite popular, very large, and complicated. MINIX, on the other hand, has remained small and suitable for instruction and example. The book has been revised to include updates in MINIX, which started out as a v 7 unix clone for a floppy-disk only 8088. It is now aimed at 386, 486, and pentium machines and is based on the international posix standard instead of on v7. There are now also versions of MINIX for the Macintosh and SPARC available. Professional programmers will find this book to be a valuable resource and reference book.


Reviews


I like Minix3, not the book
I like the microkernel approach to implement a UNIX-like OS. It is simple and elegant although it does sacrifice a little performance. However, the book is not particularly well-written. It lacked clarity in its explanation of both theory and implementation.

a road not taken
There is a whiff of "what-might-have-been" about this book, using the benefit of hindsight. Minix is thoroughly described as a small and impressively documented operating system. It is small enough that if you took the time, you could understand every nook and cranny. From a pedagogic standpoint, it is of great help in nailing down abstract design concepts. Amazingly, the kernel spans only 4000 lines. Nothing at all, compared to linux or other operating systems.

Tanenbaum criticises those, for a lack of modularity. With millions of lines of code put into one monolithic build running in kernel mode. But you might seriously wonder about this, especially where linux is concerned. In general, it is stable. Yes, with bugs that are inevitable with large code bases. But bugs that are severe enough to crash the OS are rare. Certainly rarer than Microsoft Windows. Anyhow, the book demonstrates the use of a microkernel. While linux uses a monolithic kernel.

But the "what-might-have-been" arises from how linux was inspired by minix. The marketplace has overwhelmingly preferred linux to minix. Industry giants like IBM and HP have now standardised on linux. No major company has done this for minix. It suggests a major design flaw in minix. Not a flaw in terms of not working. But a flaw at a higher level. Perhaps in extensibility or licensing. Tanenbaum must surely wonder that had he taken a different route with minix, it would have become what is linux today. Linus Torvalds is now far better known than him, and there is an entire industry of startups built using linux. Minix is something obscure, even amongst many computer programmers.

A great introduction to operating systems
This book is written by Tanenbaum, the main guy behind Minix, which is what Linux was based on. It provides good overviews for basic OS concepts like memory management, file systems, processes, etc. The concepts in this book book are intimately tied to examples of the Minix OS, which is a good thing.

To those who would rather see examples from Linux: Minix is a compact and modular OS, which is why it's a good choice for examples. The book contains the entire source code at the back for easy reference. Yes, the OS is that small. That's a good thing when you're trying to figure out how virtual memory works or what have you. You'd be lost trying to learn this stuff from Linux. Above everything else, the code is ***well-commented*** compared to Linux, a major plus. You won't find any "/* major hack */" comments, either. ;) Minix leaves out all the crap that Microsoft and Linux throw into the kernel that make it unstable in the first place. Learn about the bells and whistles later when you can do the basics.

I encountered two instances where the book wasn't updated to reflect changes in the OS, which were annoying to deal with. Also, I found a spelling or punctuation error about every ten pages, which was annoying for such a pricey book. Overall, however, the book is extremely usable and understandable. It's easy to pick up concepts from this text.

Not the best basis for Operating System design
While this book is good explaining theory and demonstrating it in the author's operating system, MINIX, MINIX is an insanely small OS. Now there's nothing wrong with that by default, just keep in mind that any OS you were to write in industry, etc would be way more complex.

Also, beware, of the 1000+ pages, at least a quarter of that is a print out, line by line, of the MINIX 3 source code. (Approximately 30,000 lines...)

Bottom line: Good for basic theory and understanding, but you would need to know much more to write a friendly OS.

An excellent text book, well written and informative
This was the text for an OS course that I took for my Masters. We had to implement 11 significant OS features for Minix (e.g. floppy disk cache, VGA driver, interprocess communication server,...) -- bugs were unacceptable (i.e. fail), as OSs must work. This class was 4 times more work that an other class I took for my Masters but I learned so much. I was already a very experienced Unix programmer when I took this, so I found it facinating to finally see what was under the hood (Minix/Unix is surprisingly small an compact -- very elegant). Tanenbaum is a real authority on the subject of operating systems and has a very engaging style. Probably the best computer science text book that I have read (I read this cover to cover, not just scanning but really reading). There is room for improvement though: the format could benefit from being updated, I had to use a lot of high-lighter. Clearer separation and indexing of key theories and sections would help. The OS basics are still relevant today (and could perhaps benefit from some expansion/clarification). I believe Tanenbaum has brought out new books since that go into some more contemporary / more advance areas.


Home | Browse | Professors | Merchants | Webmasters | Contact Us

[ United States | Canada ]

Copyright © 2003-2008 GetTextbooks.co.uk