Customer Reviews


34 Reviews
5 star:
 (15)
4 star:
 (6)
3 star:
 (5)
2 star:
 (7)
1 star:
 (1)
 
 
 
 
 
Average Customer Review
Share your thoughts with other customers
Create your own review
 
 
Only search this product's reviews

The most helpful favorable review
The most helpful critical review


56 of 57 people found the following review helpful:
5.0 out of 5 stars OS concepts, vocabulary, and details for professionals
Tanenbaum's book is a thorough yet accessible introduction to the design and implementation of modern operating systems. This second edition explains the trade-offs developers must make and shows readers how OS' have matured since the 1960s. Knowledge of programming in C is helpful, especially if the reader wishes to complete the exercises following each chapter. I...
Published on August 19, 2002 by Richard Bejtlich

versus
30 of 33 people found the following review helpful:
3.0 out of 5 stars Very informational, but not pragmatic
It's a very useful, informative book but I found it more esoteric than it needed to be - I speak from my experience as a computer science student who then went on to write software for a living. Unfortunately, I feel the problems described below plague most popular OS books today, including "Operating System Concepts by Silberschatz, Galvin, Gagne".

I'd like...
Published on March 3, 2007 by Nagender Parimi


‹ Previous | 1 2 3 4| Next ›
Most Helpful First | Newest First

56 of 57 people found the following review helpful:
5.0 out of 5 stars OS concepts, vocabulary, and details for professionals, August 19, 2002
Tanenbaum's book is a thorough yet accessible introduction to the design and implementation of modern operating systems. This second edition explains the trade-offs developers must make and shows readers how OS' have matured since the 1960s. Knowledge of programming in C is helpful, especially if the reader wishes to complete the exercises following each chapter. I gave the book five stars for its content, delivery, and humor, all of which helped me learn a difficult subject in an enjoyable manner.

"Modern Operating Systems, 2nd Ed" (MOS:2E) is very well-written, which may surprise those who suffer while reading other hardcover college texts. The book introduces problems facing developers, then helps the reader understand both simple and complex ways to address these issues. Tanenbaum's style is lively and informative, like the cover of his books. He appears knowledgeable and opinionated -- especially concerning problems with the Windows OS -- but he can back up his assertions.

The best features of MOS:2E are found in chapters ten and eleven. Here Tanenbaum illuminates UNIX and Microsoft Windows 2000, respectively, building upon the material found in the previous nine chapters. He gives real reasons why Windows suffers security problems, such as internal complexity, code bloat, and design choices. UNIX is also critically evaluated, but stands up better to Tanenbaum's scrutiny.

I don't recommend computer novices read MOS:2E. One needs a certain amount of interest and motivation to digest this material, and Tanenbaum's explanations of some concepts did not seem sufficient. However, after having finished this 900 page tome, I feel more comfortable reading about design issues for the Linux kernel or the FreeBSD scheduler. If you're looking to learn the how and why of operating system design and implementation, I strongly recommend MOS:2E.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


18 of 18 people found the following review helpful:
5.0 out of 5 stars my favorite Computer Science book, January 28, 2005
Just finished my bachelor's degree in Computer Science and looking back this is hands down the best, most readable textbook I had in college. It has a proud place on my book shelf. I can't claim to have read the *entire* book (though I was supposed to), but I read quite a lot of it and it was fascinating.

Tanenbaum covers the material in depth, but he has a relaxed, entertaining writing style that is engaging and amazingly easy to follow considering the weighty material. There are undoubtedly occasional mistakes, but unlike other books with more obtuse, "I am smarter than you" writing styles, you're actually awake enough to spot the mistakes when they show up. I don't ever remember being baffled by any mistakes. After reading the reviews by this book's few detractors, all I can do is shrug my shoulders and say that I loved it and that every classmate I talked to (including two roommates) wholeheartedly agreed.

By the way, I concur with an earlier reviewer in highly encouraging readers to read the case studies of Unix/Linux and Windows 2000 in chapters 10 & 11... fascinating stuff.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


17 of 17 people found the following review helpful:
5.0 out of 5 stars Superb book on Operating Systems, September 23, 2001
I think this book is a great book on OS. It's easy to read (don't forget Tanenbaum humor :)), it explains difficult issues using simple analogies and is certainly an up-to-date book on the field.

It has one chapter covering Unix (and Linux) and another one for Windows 2000, two of the more important Operating Systems well explained here.

The Chapter on processes and threads is great. It really clarifies the difference between processes and threads.

Although I found the book as easy to read as it can get, I must admit that I had litle bit of a hard time reading that Memory Chapter. I'd prefer it didn't had so many algoritms. I shorter chapter would probably be better, at least for me ;).

It also has a chapter on security, a must have nowdays. If you are a first-time learner on Operating Systems I think this is the one.

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


30 of 33 people found the following review helpful:
3.0 out of 5 stars Very informational, but not pragmatic, March 3, 2007
By 
It's a very useful, informative book but I found it more esoteric than it needed to be - I speak from my experience as a computer science student who then went on to write software for a living. Unfortunately, I feel the problems described below plague most popular OS books today, including "Operating System Concepts by Silberschatz, Galvin, Gagne".

I'd like to break up the review rating into two parts:

Content and relevance to subject: 4/5
The book covers almost all aspects of what an operating system needs to to do and so is highly informational, from threads to memory management to I/O - the three most essential (and yet elusive) concepts in today's operating systems. The author does a good job of explaining, at each stage, the various design choices that an OS designer must make e.g. virtual memory - use free lists or bitmaps to do book-keeping of used and free physical memory. Most concepts are explained clearly and as such I found this book to be a good reference on OS design principles.

Applicability to real world issues: 2/5
Unfortunately a good reference is not always the best way to understand how things work in practice. The book discusses design choices at each step, but I feel what most computer science students need to learn first is how today's operating systems work - how does the threading scheduler in UNIX work? how does UNIX manage memory, so I as a software engineer can best make use of it? It's great to know all these design pricniples an OS has, but my experience was that when you're at your first job wondering why you're running out of physical memory or why your multi-threaded program keeps crashing, it helps immensely to know well exactly how your OS works, than the myriad choices that it can make. And let's face it - there aren't many OS's in the wold today - the UNIX family and Windows, which is modeled largely on UNIX (albeit not welll and with a few differences). I should point out that the book has a chapter each on UNIX and Winwos at the end, but by the time you reach the end of a 900-page book you're usually out of patience.

I have studied from the book by Silberschatz et al. as well, and I have the same complaint with each book - as a student I felt there was a huge disconnect between what the books talk about and knowing the guts of your UNIX or Windows system. Put it simply, I found the books were too "bookish". Unfortunately, I am not aware of any other mainstream OS book that does any better. I would love to see a book that discusses this critical subject in a different (and more enlightening) way - that discusses in detail how, say threads work in UNIX, and then elaborates on how else it could be done. So that at the end of it, you atleast know to make best use of the OS you work with (even if you don't fully understand how to design the next one).
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


12 of 12 people found the following review helpful:
4.0 out of 5 stars Table of Contents for the 3rd Edition, November 16, 2010
Since Amazon doesn't have it, here's the table of contents for the 3rd Edition to the second header level. More detailed table of contents can be found by clicking of the "Description" link at:

[...]

1 INTRODUCTION
1.1 WHAT IS AN OPERATING SYSTEM?
1.2 HISTORY OF OPERATING SYSTEMS
1.3 COMPUTER HARDWARE REVIEW
1.4 THE OPERATING SYSTEM ZOO
1.5 OPERATING SYSTEM CONCEPTS
1.6 SYSTEM CALLS
1.7 OPERATING SYSTEM STRUCTURE
1.8 THE WORLD ACCORDING TO C
1.9 RESEARCH ON OPERATING SYSTEMS
1.10 OUTLINE OF THE REST OF THIS BOOK
1.11 METRIC UNITS
1.12 SUMMARY

2 PROCESSES AND THREADS
2.1 PROCESSES
2.2 THREADS
2.3 INTERPROCESS COMMUNICATION
2.4 SCHEDULING
2.5 CLASSICAL IPC PROBLEMS
2.6 RESEARCH ON PROCESSES AND THREADS
2.7 SUMMARY

3 MEMORY MANAGEMENT
3.1 NO MEMORY ABSTRACTION
3.2 A MEMORY ABSTRACTION: ADDRESS SPACES
3.3 VIRTUAL MEMORY
3.4 PAGE LACEMENT ALGORITHMS
3.5 DESIGN ISSUES FOR PAGING SYSTEMS
3.6 IMPLEMENTATION ISSUES
3.7 SEGMENTATION
3.8 RESEARCH ON MEMORY MANAGEMENT
3.9 SUMMARY

4 FILE SYSTEMS
4.1 FILES
4.2 DIRECTORIES
4.3 FILE SYSTEM IMPLEMENTATION
4.4 FILE SYSTEM MANAGEMENT AND OPTIMIZATION
4.5 EXAMPLE FILE SYSTEMS
4.6 RESEARCH ON FILE SYSTEMS
4.7 SUMMARY

5 INPUT/OUTPUT
5.1 PRINCIPLES OF I/O HARDWARE
5.2 PRINCIPLES OF I/O SOFTWARE
5.3 I/O SOFTWARE LAYERS
5.4 DISKS
5.5 CLOCKS
5.6 USER INTERFACES: KEYBOARD, MOUSE, MONITOR
5.7 THIN CLIENTS
5.8 POWER MANAGEMENT
5.9 RESEARCH ON INPUT/OUTPUT
5.10 SUMMARY

6 DEADLOCKS
6.1 RESOURCES
6.2 INTRODUCTION TO DEADLOCKS
6.3 THE OSTRICH ALGORITHM
6.4 DEADLOCK DETECTION AND RECOVERY
6.5 DEADLOCK AVOIDANCE
6.6 DEADLOCK PREVENTION
6.7 OTHER ISSUES
6.8 RESEARCH ON DEADLOCKS
6.9 SUMMARY

7 MULTIMEDIA OPERATING SYSTEMS
7.1 INTRODUCTION TO MULTIMEDIA
7.2 MULTIMEDIA FILES
7.3 VIDEO COMPRESSION
7.4 AUDIO COMPRESSION
7.5 MULTIMEDIA PROCESS SCHEDULING
7.6 MULTIMEDIA FILE SYSTEM PARADIGMS
7.7 FILE PLACEMENT
7.8 CACHING
7.9 DISK SCHEDULING FOR MULTIMEDIA
7.10 RESEARCH ON MULTIMEDIA
7.11 SUMMARY

8 MULTIPLE PROCESSOR SYSTEMS
8.1 MULTIPROCESSORS
8.2 MULTICOMPUTERS
8.3 VIRTUALIZATION
8.4 DISTRIBUTED SYSTEMS
8.5 RESEARCH ON MULTIPLE PROCESSOR SYSTEMS
8.6 SUMMARY

9 SECURITY
9.1 THE SECURITY ENVIRONMENT
9.2 BASICS OF CRYPTOGRAPHY
9.3 PROTECTION MECHANISMS
9.4 AUTHENTICATION
9.5 INSIDER ATTACKS
9.6 EXPLOITING CODE BUGS
9.7 MALWARE
9.8 DEFENSES
9.9 RESEARCH ON SECURITY
9.10 SUMMARY

10 CASE STUDY 1: LINUX
10.1 HISTORY OF UNIX AND LINUX
10.2 OVERVIEW OF LINUX
10.3 PROCESSES IN LINUX
10.4 MEMORY MANAGEMENT IN LINUX
10.5 INPUT/OUTPUT IN LINUX
10.6 THE LINUX FILE SYSTEM
10.7 SECURITY IN LINUX
10.8 SUMMARY

11 CASE STUDY 2: WINDOWS VISTA
11.1 HISTORY OF WINDOWS VISTA
11.2 PROGRAMMING WINDOWS VISTA
11.3 SYSTEM STRUCTURE
11.4 PROCESSES AND THREADS IN WINDOWS VISTA
11.5 MEMORY MANAGEMENT
11.6 CACHING IN WINDOWS VISTA
11.7 INPUT/OUTPUT IN WINDOWS VISTA
11.8 THE WINDOWS NT FILE SYSTEM
11.9 SECURITY IN WINDOWS VISTA
11.10 SUMMARY

12 CASE STUDY 3: SYMBIAN OS
12.1 THE HISTORY OF SYMBIAN OS
12.2 AN OVERVIEW OF SYMBIAN OS
12.3 PROCESSES AND THREADS IN SYMBIAN OS
12.4 MEMORY MANAGEMENT
12.5 INPUT AND OUTPUT
12.6 STORAGE SYSTEMS
12.7 SECURITY IN SYMBIAN OS
12.8 COMMUNICATION IN SYMBIAN OS
12.9 SUMMARY

13 OPERATING SYSTEMS DESIGN
13.1 THE NATURE OF THE DESIGN PROBLEM
13.2 INTERFACE DESIGN
13.3 IMPLEMENTATION
13.4 PERFORMANCE
13.5 PROJECT MANAGEMENT
13.6 TRENDS IN OPERATING SYSTEM DESIGN
13.7 SUMMARY

14 READING LIST AND BIBLIOGRAPHY
14.1 SUGGESTIONS FOR FURTHER READING
14.2 ALPHABETICAL BIBLIOGRAPHY
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


12 of 12 people found the following review helpful:
5.0 out of 5 stars Do not skip PART II on case studies !, February 12, 2001
By 
Steve Uhlig (Berlin, Germany) - See all my reviews
(REAL NAME)   
This review is from: Modern Operating Systems (Hardcover)
From what i recall (i read this book 3 years ago, when i was a graduate student), this book is good for introduction as well as for advanced concepts in operating systems. I fully aggree with the reviewer from 1997. I don't think this book being sloppy nor difficult for beginners (sorry other reviewers). It certainly requires some time to be read (i recall having read it at a pace of about two or three evenings for one chapter, with about 2-3 hours per evening so i don't think it is that difficult for beginners). In addition, Tanenbaum's style is always good and his sense of humor makes the text full of those subtle remarks that make you dive into the subject with less pain.

Probably that the third part of the book about Distributed OS is not a good reading for beginners but just skip it on your first reading and go back to it when you'll be ready.

An important thing is that Part II which is about case studies should not be skipped by newcomers ! This is exactly while reading this part of the book that you'll understand all the concepts you learned in the first part, by applying all this theoretical stuff on actual OS implementations. Probably the reviewer that states this book is not for beginners didn't make it to Part II because one cannot understand OS just by learning concepts, like everything else in computer science...

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


18 of 20 people found the following review helpful:
4.0 out of 5 stars Comprehensive and Interesting, but Radically Restructured, June 8, 2001
By 
"microtherion" (Sim City, CA (Somewhere in the Bay Area)) - See all my reviews
The 2nd edition of this book is nearly as interesting and as much fun as the first edition, but it's a very different book. I liked the first edition for its case studies of edgy systems like Mach and Amoeba and was quite surprised to see them gone in this edition. Apparently, due to the expanding size of the overall material, Tanenbaum is only covering these in his Distributed Systems books anymore, and the case studies left in this book are UNIX and Windows 2000, OSes that I would classify as "contemporary" rather than "modern". Also, I was very disappointed not to find a single mention of MacOS X in the book.

Still, this is a superb book. It covers a wide range of material, and ties textbook material to the latest research papers in an area (for its literature survey value alone, this is a great starting point for any in-depth study of an OS topic). Tanenbaum also suffuses all of the material with humorous anecdotes and sly asides which make the book a delight to read cover to cover.

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


17 of 20 people found the following review helpful:
5.0 out of 5 stars Excellent Intro to Practical OS Design and Implementation, July 4, 1997
By A Customer
This review is from: Modern Operating Systems (Hardcover)
Andrew Tanenbaum ( http://www.cs.vu.nl/~ast/ ) boots your neural network in the right direction in his classic introductory text to Operating Systems and the pre-cursor to his more recent "Distributed Operating Systems" (ISBN: 0132199084). He presents bit-level discussions addressing the core OS issues of processes, memory management, file systems and I/O (among others). He then buffers the information with in-depth, case study comparisons of unix, ms-dos, mach and amoeba (which Tanenbaum co-developed; see: http://www.am.cs.vu.nl/ ). Tanenbaum does not ignore theory altogether, but puts most of his effort into relaying practical concerns and solutions to real OS's.

Tanenbaum's sense of humor never flags or fails to register; a most desirable quality in a technical book one is reading after 8-10 hours in the cubicle world. For instance, regarding the POSIX standard, "The [RFC] 1003.1 document is written in such a way that both operating system implementers and software writers can understand it, [a] novelty in the standards world, although work is already underway to remedy this."

The book assumes the reader has basic programming knowledge, though nothing beyond first year C. Tanenbaum has included numerous clear and helpful diagrams, as well as problem sets at the end of each chapter.

Thoroughly enjoyed - highly recommended.

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


5 of 5 people found the following review helpful:
4.0 out of 5 stars A modern classic, January 13, 2010
I've taught from another text, but this one seems to provide the most solid foundation of any around. It covers all of the basics of operating system responsibilities in a thorough and orderly way, starting with processes, memory, file systems, and security, including information about malicious attacks. This new edition also addresses multiprocessor systems, which have become prevalent in the form of multi-core processors, and the special needs of media processing systems. Toward the end, it also presents case studies of three contemporary OSs, in enough detail to understand the differences between the different OS philosophies and structures. After a relatively brief chapter summarizing Tanenbaum's beliefs about OS design, this ends with a bibliography that even researchers and advanced practitioners will appreciate.

But, if you haven't already found out the hard way, OSs raise surprisingly strong feelings. In my case, the feeling is that the book ignores about 99% of all processors - the ones in your cell phone, car systems, appliances, and everything else that doesn't look like a computer, i.e. the embedded processors. These systems impose critical constraints on timing, memory, and performance, and impose different kinds of constraints according to their usage. It also skims lightly over the server farms that prevail in banking, industry, and commerce, and over the massive demands addressed by things like the Google file system.

Still, this book presents all of the basics. Even when programming an embedded system too small to support an OS, the principles taught here will still be useful. And, when the reader graduates to more specialized topics, like massively parallel supercomputers, high reliability systems, or multi-tierd enterprise systems, this provides a solid foundation on which to build the more unusual structures. There's only so much you can pack into a one-term introduction to operating systems, and this book does a great job of it.

- wiredweird
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


5 of 5 people found the following review helpful:
5.0 out of 5 stars Interesting, accessible, humorous, September 29, 2008
By 
LN (San Francisco, CA USA) - See all my reviews
This book was assigned for my Operating Systems course in college this semester. It is truly a great textbook, and this is coming from a student who has read (and avoided) a lot of textbooks. It makes the subject matter very easy to understand in a variety of ways that help illustrate the concepts for various types of learners. Among these are clear diagrams, very succinct snippets of well-documented code, and real-life examples and illustrative analogies that help you both understand and recall the material. Unlike many textbooks there is a healthy dose of humor in the book. I've actually laughed out loud a number of times at the witty remarks and silly examples Tanenbaum includes in the book (the illustration on the cover should have been the first clue that the author knows how to lighten things up). Bottom line, it's a great book if you want to learn about Operating Systems, be amused while doing it, and have the knowledge actually "stick".
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


‹ Previous | 1 2 3 4| Next ›
Most Helpful First | Newest First

This product

Modern Operating Systems
Modern Operating Systems by Andrew S. Tanenbaum (Hardcover - February 4, 1992)
Used & New from: $0.09
Add to wishlist See buying options