Have one to sell? Sell yours here
Operating Systems: A Modern Perspective
 
See larger image
 
Tell the Publisher!
I'd like to read this book on Kindle

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

Operating Systems: A Modern Perspective [Hardcover]

Gary J. Nutt (Author)
2.1 out of 5 stars  See all reviews (28 customer reviews)


Available from these sellers.


Textbook Student FREE Two-Day Shipping for Students. Learn more

Formats

Amazon Price New from Used from
Hardcover --  
Hardcover, March 1997 --  
Paperback $127.57  

Book Description

0805312951 978-0805312959 March 1997
Operating Systems: A Modern Perspective brings a balanced approach to the study of operating systems combining a careful examination of theoretical issues with real-world, hands-on problems and examples. Throughout the text, discussions of theory are enhanced with detailed code and algorithm examples to allow students to see the theory as it has been implemented in modern operating systems.In addition to covering operating system fundamentals the author, Gary Nutt, considers issues of performance and discusses how various parts of the system are related to real-world demand and hardware constraints. The text also includes coverage of modern topics such as concurrency, distributed systems, and networking. Examples from UNIX and Linux give students an opportunity to examine and learn from the source code of actual commercial operating systems.Features: * Reinforces and reviews the important concepts students need to know from computer organization and architecture courses. * Highlights performance issues as a fundamental factor affecting how operating systems are designed. * Includes implementation examples drawn from the source code of commercial operating systems like Linux and a case study on Windows NT. * Utilizes Linux source code to provide hands-on exercises modifying and constructing components of actual systems. * Provides an author-maintained World Wide Web page with links to current OS technical material and references. * Offers additional instructional resources to qualified instructors through Addison-Wesley. 0805312951B04062001

Customers Who Viewed This Item Also Viewed


Editorial Reviews

From the Author

Undergraduate OS textbooks vary in style from those that focus on a detailed discussion of a single OS to those that provide descriptions of concepts and issues for any OS. OS textbook styles also vary from conversational discussions to detailed discussions of meaty content on the details of an OS. Traditionally, books with meaty content are either very theoretical or mathematical, or address only a single OS; conversely, books that are easy to read tend to be so due to lack of content. Contemporary operating systems are very complex software. A book that lacks content fails to convey the requisite understanding to cope with actual operating systems; a book that focuses on only one OS does not provide the proper perspective on the discipline.

This book was written 6 years after writing a dense and formal book on OS concepts. It preserves the deep concepts, but pushes the formal treatment into later chapters (and even then, it is simplified over the earlier material). The student begins with informal explanations for the initial concepts, then gradually works up to subject matter that is described in more formal and precise terms.

The second edition of the book* also includes an extensive set of exercises for UNIX systems as well as extended discussions and examples from Windows NT, Mach, and other research OSes. This approach was taken to balance the conceptual material with concrete exercises to apply the concepts to UNIX. There are also complementary lab manuals for Windows NT exercises and Linux kernel exercises, if the student wishes to perform more in-depth experiments.

This material is reaching maturity; it has been reviewed by many professional reviewers, used by many instructors and many students. Most "errors" that remain in the code examples are due to misinterpretation of pseudo code rather than faulty algorithms.

------------ * Note: All comments dated before January 2000 refer to the first edition of the book. --This text refers to an alternate Hardcover edition.

From the Inside Flap

Operating systems is an exciting software area because the design of an operating system exerts a major influence on the overall function and performance of the entire computer. Today there are basically three types of books that introduce this topic to undergraduates:

The first type provides a detailed description of one or more different operating systems. This approach is particularly useful if you just want to know how a particular operating system works without learning much about how all operating systems work. The second type is an evolution of the first in that it bases all its explanation around a single pedagogical system. It usually provides enough information to derive the underlying principles of good operating systems, but these principles often are obscured by the explanation of the pedagogical system. The third type is written to be independent of any particular operating system. It focuses on the theory behind all operating systems. It tends to leave you without that important link to how an operating system is really built.

I strongly believe that it is important to understand the principles behind the designs of all operating systems and to see how those principles are put into practice in real operating systems. The goal of this book is to provide a complete discussion of theory, along with an extensive set of coding and algorithm examples. The material presented is so that the student can easily differentiate among operating systems fundamentals and the detailed coding examples. Highlighted throughout are issues of performance, since that is a fundamental factor affecting how an operating system is designed. However, the coverage of performance is not intended to be comprehensive in nature. Additional emphasis is also placed on how various parts of the system are related to real-world demand and hardware constraints. I decided to forego extensive coverage of analysis and performance theory in favor of explanation of performance issues. Students should have plenty of time to study analysis techniques in a graduate-level operating system course.

The main part of the text presents operating systems fundamentals, along with general examples. It also includes three types of examples: IN THE COCKPIT examples illustrate how to use concepts being explained in the chapter. IN THE HANGAR examples focus on how these concepts can be implemented and performance issues are highlighted in PERFORMANCE TUNING boxes. If desired, the reader could ignore these examples and and focus only on operating systems theory. Or one could browse the main text but focus primarily on these examples for a course that emphasizes a hands-on approach to operating systems.

Code Examples. The intent of including a variety of code examples is to describe operating system more concretely and provide samples of the implementation of OS theory. Sometimes these examples include descriptions at the level of programs and algorithms. A few of these code examples are complete programs that have been compiled and executed. Most examples, however, are simply descriptions of algorithms or techniques using the C programming language. These descriptions deliberately omit detail that would be necessary in an actual implementation but that do not contribute to the understanding of the algorithm. The context in which the code appears should make clear when the code is an actual implementation; otherwise it should always be assumed to be a description of an algorithm or technique. I believe that detailed descriptions are mandatory for describing operating systems. I also believe that full implementations contain so many code-specific details that the essence of the ideas being illustrated are difficult to abstract and separate from the details of the language implementation. I have experimented with using pseudo code languages for these descriptions, but students and reviewers have consistently preferred the use of C. Be careful not to interpret the descriptions in C as complete implementations

Topic Order

The order of presentation is based on my experience teaching operating systems courses with input from many experienced OS instructors. This organization thus reflects the combined knowledge and experience of many different teachers and I believe the result is logical, conducive to learning, and generally accepted by most operating system instructors.

Each chapter begins with a transition from the previous chapter and a preview of what is covered in the current chapter. Students can look at this material as well as the summary at the end of the chapter to get a quick idea what a chapter is about. Chapters 1-4 consist of important introductory material that provides a solid foundation for the study of operating systems. Teachers may decide to go over this material rather quickly, perhaps assigning it as outside reading material, especially if this was covered in other courses. However, understanding this material is critical before one dives into the further study of meat of operating systems starting in Chapter 5.

Chapter 1 shows how operating system; fix into software technology, in earlier drafts, an historical perspective had been included. Instructors tend to like a little history and context but many students think it is boring, so we have dispensed with history.

Chapter 2 is unique among operating system books in that it considers how to use an operating system, particularly how to use multiple processes. This chapter was added because my experience with computer science juniors and seniors is that they may have written considerable single-threaded code but are far less likely to have written or studied multithreaded software. This chapter offers an immediate opportunity to learn this new material.

Chapter 3 describes the fundamental organization of operating systems, including implementation strategies.

Chapter 4 finishes the preliminaries for studying operating systems-computer organization. For students who have already taken a computer organization class, the first half of Chapter 4 will be elementary. The second half describes interrupts, emphasizing the aspects that are critical to operating systems.

Chapter 5 describes device management, specifically general techniques, buffering, and device drivers. It is tempting to become completely immersed in Linux device drivers. However, I resisted this temptation to focus instead on a macro-level view of the purpose and general organization of interrupt-driven I/O. Included are extensive boxed sections on device drivers, but these stop short of providing an actual Linux driver. The chapter examines devices before considering processes because devices provide an elementary case in which physical concurrency exists in the computer and the software must be carefully designed to control that concurrency. This provides a natural introduction to process management.

Chapters 6-10 are devoted to process management. They start from the basic tasks and organization of process and resource managers (Chapter 6) and move to scheduling ( Chapter 7), synchronization (Chapters 8 and 9), and deadlock (Chapter 10).

Chapter 11 deals with traditional issues in memory management, while Chapter 12 covers the contemporary approach to memory manager's using virtual memory. Because of the popularity of paging, most of the discussion is directed at this technology. However, with the current trends in memory technology, it would be a mistake to ignore segmentation. Thus part of this discussion deals with segmentation. Unfortunately, the best example of a robust segmentation system is still the (now obsolete) Multics system.

Chapter 13 describes file management. Less space is devoted to file management than is customary in operating systems books because it is not as difficult to understand as process management and memory management. This discussion is augmented in Chapter 16, which deals with remote files.

Chapter 14 provides a general discussion of protection mechanisms and security policies. It might be argued that this section belongs in the process management discussion, although much of the technology is just as closely related to files, memory, and other resources. It is much easier for someone to appreciate the need for protection and security after they have seen the process, memory, and file managers.

Chapters 15-17 introduce operating system technology to support distributed computing. Distributed computing is a dominant aspect of modern operating systems and I feel strongly that coverage of this important issue belongs in all introductory texts on operating systems.

The study of operating systems has traditionally been one of the most challenging and exciting software disciplines in computer science. I hope this book makes complex aspects of operating systems easy to understand and avoids making simple aspects boring. Good luck in your study of operating systems; I hope you enjoy it as much as I do!

To the Instructor

Thank you for choosing this book as your aide in teaching undergraduates about operating systems. Operating systems continues to be an


Product Details

  • Hardcover: 630 pages
  • Publisher: Addison-Wesley Pub (Sd) (March 1997)
  • Language: English
  • ISBN-10: 0805312951
  • ISBN-13: 978-0805312959
  • Product Dimensions: 9.4 x 7.6 x 1.3 inches
  • Shipping Weight: 2.4 pounds
  • Average Customer Review: 2.1 out of 5 stars  See all reviews (28 customer reviews)
  • Amazon Best Sellers Rank: #1,325,137 in Books (See Top 100 in Books)

More About the Author

Discover books, learn about writers, read author blogs, and more.

 

Customer Reviews

28 Reviews
5 star:
 (2)
4 star:
 (4)
3 star:
 (2)
2 star:
 (7)
1 star:
 (13)
 
 
 
 
 
Average Customer Review
2.1 out of 5 stars (28 customer reviews)
 
 
 
 
Share your thoughts with other customers:
Most Helpful Customer Reviews

18 of 21 people found the following review helpful:
1.0 out of 5 stars Reading this book does more harm than good., October 28, 1999
By A Customer
This review is from: Operating Systems: A Modern Perspective (Hardcover)
I am using this book because i'm taking the ugrad OS course at CU Boulder. Guess what university the author is from. yeah, that's right. This is, quite possibly, one of the worst books ever written by a human being. If, hypothetically, one were to forgive the book for blatantly incorrect examples that obviously haven't even been checked or reviewed and have spawned more than a few bewildered discussions among my fellow students and I, for rediculous project suggestions, for its condescending tone, for the obnoxious little graphics and second-rate dull grey paper on which they're printed, it still remains that the book does an atrocious job of treating the history and current practice of operating systems. It seems to be leaving us with a horribly skewed general prospective on the field and a paucity of actual knowledge--thus, not only are we ill-prepared to design an operating system, but we are worse programmers for having adopted Nutt's sick and deviant way of thinking. If this seems too vague for you, let me simply say that more than a few vague, general discussions are clearly based not on UNIX, not even on NT, but on MS-DOS. The fact that i recognize the lineage of his thinking is a major source of embarrassment for me, but I must share it with you lest this book corrupt yet more fresh young minds. Those who enjoy kneeling and worshiping before mistakes IBM made twenty years ago will get a real kick out of this book--there are detailed discussions of bizzare things IBM did on old two-ton mainframes, extensive discussions of batch job scheduling and seek algorithms for ten-inch disk packs. Yet, for the rest of us, I can only say: if you have a copy of this book, I advise you to burn it immediately. I sure wish I could. If i can save just one poor soul from this book, I will die a happy man.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


10 of 11 people found the following review helpful:
1.0 out of 5 stars Nice Draft, December 7, 1999
By 
Rob F. (Nashua, New Hampshire) - See all my reviews
This review is from: Operating Systems: A Modern Perspective (Hardcover)
The content is well organized and the relevant information seems to be present. However, a lot of the pseudocode is blatantly wrong. This would be very misleading for an initiate to operating system design and implementation, the target audience for this book. If you know enough to recognize the errors in the pseudocode, you're too advanced to be reading this book. If you know less, you shouldn't be reading this book because its errors will undermine the foundation you're hoping to build. Your money is better spent on another book.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


6 of 6 people found the following review helpful:
1.0 out of 5 stars One of the worst books ever, July 1, 2003
By A Customer
I'm a systems researcher myself. I can't believe this book is allowed to be in publication. The writing is shoddy, and the relevancy of the material is fragmented. The poor quality is perfectly encapsulated by the two luminaries praising the book on the back cover. One is from Centre College, some liberal arts college I had never heard of; the other is supposedly a professor from the University of California, but upon closer investigation, he's only a staff member, not a real professor. This book has a second-hand feel to it throughout. If you're a student forced to use this book in college, I suggest you change colleges.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No

Share your thoughts with other customers: Create your own review
 
 
 
Most Recent Customer Reviews











Only search this product's reviews




Suggested Tags from Similar Products

 (What's this?)
Be the first one to add a relevant tag (keyword that's strongly related to this product).
 
(283)
(284)
(320)

Your tags: Add your first tag
 

Sell a Digital Version of This Book in the Kindle Store

If you are a publisher or author and hold the digital rights to a book, you can sell a digital version of it in our Kindle Store. Learn more

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
 


Active discussions in related forums
Search Customer Discussions
Search all Amazon discussions
   
Related forums



So You'd Like to...



Look for Similar Items by Category


Look for Similar Items by Subject