Operating Systems: Internals and Design Principles, 6/E
ISBN-10: 0136006329
ISBN-13: 9780136006329
Publisher: Prentice Hall
Copyright: 2009
Format: Cloth; 840 pp
Published: 04/09/2008
Description
For a one-semester undergraduate course in operating systems for computer science, computer engineering, and electrical engineering majors.
¿
Winner of the 2009 Textbook Excellence Award from the Text and Academic Authors Association (TAA)!
¿
Operating Systems: Internals and Design Principles is a comprehensive and unified introduction to operating systems. By using several innovative tools, Stallings makes it possible to understand critical core concepts that can be fundamentally challenging. The new edition includes the implementation of web based animations to aid visual learners. At key points in the book, students are directed to view an animation and then are provided with assignments to alter the animation input and analyze the results.
¿
The concepts are then enhanced and supported by end-of-chapter case studies of UNIX, Linux and Windows Vista. These provide students with a solid understanding of the key mechanisms of modern operating systems and the types of design tradeoffs and decisions involved in OS design. Because they are embedded into the text as end of chapter material, students are able to apply them right at the point of discussion. This approach is equally useful as a basic reference and as an up-to-date survey of the state of the art.
¿
Resources
¿
William Stallings has prepared¿a robust suite of student and instructor resources, including¿a rich set of Animations to illustrate key functions and algorithms in OS design.¿ (Icons are placed at relevant points in the text¿to indicate that an animation is available.)¿Access them via the Prentice Hall page www.prenhall.com/stallings¿ or directly¿at the author's website http://www.williamstallings.com/OS/OS6e.html¿under the link "Useful Websites."¿ Visit Stalllings Computer Science Student Resource page at http://williamstallings.com/StudentSupport.html.
¿
Please note, GOAL is no longer available with this book.
Features
Makes extensive use of a number of tools to boost student understanding critical basic concepts. This includes describing algorithms using plain English and C++ language fragments, the liberal use of illustrations, and an effort to avoid formal proofs.
• Running case studies focused on how specific operating systems implement specific concepts are embedded throughout the text instead of end of book case studies. This enhances the student understanding of relevant concepts at the point of study.
• A copy of all algorithms in an easy-to-read Pascal pseudocode is available on the author’s Web site.
• Several types of projects are supported by the text, including:
— Simulations, which students access via the Web, with no programming or platform involved.
— Small projects, designed to take a week or two to complete.
— Two major programming projects, one to build a shell (or command line interpreter) and one to build a process dispatcher, are included. The text describes the projects, and step-by-step exercises are included at the Instructors Resource Center. The exercises can be uploaded to the instructor’s Web site.
—A more extensive set of seven programming projects provide for more substantial two-person assignments
• Projects are evenly split between system-level projects and kernel-level projects.
• Detailed treatment of threads — one of the most important developments in operating systems — is included. The text helps students to understand the relationship between process and thread and the way in which threads are managed and used.
• A unique comprehensive treatment of scheduling covers key recent developments in scheduling theory and design in the areas of multiprocessor scheduling and real-time scheduling.
• Comprehensive, unified treatment of I/O offers broad and thorough coverage of this critical part of any operating system.
• Companion Website -- Access textbook-related resources and support materials for students and instructors maintained by the author.
• Student Resource Site -- Access a wealth of computer science-related information including mathematics reviews, how-to documents, research resources, and career explorations maintained by the author.
New To This Edition
Web-based animations illustrate important and complex OS mechanisms, incorporated into the text via icons which indicate when an animation is available to accompany a topic. In the animation, students can change the parameters and see how the animation behaves in hypothetical situations.
• Simulation projects cover key areas of OS design and enable students to perform in-depth analysis of these areas.
• Greatly expanded programming projects are included. In addition to the projects defined for the previous edition the new edition includes support for a more extensive set of projects that cover key principles in the book.
• The material specific to Windows now focuses on Windows Vista rather than Windows XP. The other example OSs are Unix and Linux with the Sidebar that compares the tradeoffs of each.
• A new chapter on embedded Operating Systems has been added, highlighting eCos and TinyOS. Used in wireless devices and other small hardware devices, these increasingly important OSs have unique requirements and technical approaches.
• All of the material has been updated and revised for greater clarity.
• Networking and Distributed Process Management chapters have been moved online. Putting these secondary topics online reduces the cost and size of the book without loss of content or pedagogy on these topics.
• Expanded coverage of security is embedded throughout the book as well as in two new standalone chapters.
• Additional text and figures have been added to enhance clarity, with many existing figures redone. New homework problems have also been added.
•An additional set of homework problems with solutions is available to students to enhance their understanding of the material.
• Companion Website -- Access textbook-related resources and support materials for students and instructors maintained by the author.
• Student Resource Site -- Access a wealth of computer science-related information including mathematics reviews, how-to documents, research resources, and career explorations maintained by the author.
Table of Contents
WEB SITE FOR OPERATING SYSTEMS, INTERNALS AND DESIGN PRINCIPLES
PREFACECHAPTER 0 READER'S GUIDE
0.1 Outline of the Book
0.2 Topic Ordering
0.3 Internet and Web Resources
PART ONE BACKGROUND
Chapter 1 Computer System Overview
1.1 Basic Elements
1.2 Processor Registers
1.3 Instruction Execution
1.4 Interrupts
1.5 The Memory Hierarchy
1.6 Cache Memory
1.7 I/O Communication Techniques
1.8 Recommended Reading and Web Sites
1.9 Key Terms, Review Questions, and Problems
Appendix 1A Performance Characteristics of Two-Level Memory
Appendix 1B Procedure Control
Chapter 2 Operating System Overview
2.1 Operating System Objectives and Functions
2.2 The Evolution of Operating Systems
2.3 Major Achievements
2.4 Characteristics of Modern Operating Systems
2.5 Windows Vista Overview
2.6 Traditional UNIX Systems
2.7 Modern UNIX Systems
2.8 Linux
2.9 Recommended Reading and Web Sites
2.10 Key Terms, Review Questions, and Problems
PART TWO PROCESSES
Chapter 3 Process Description and Control
3.1 What is a Process?
3.2 Process States
3.3 Process Description
3.4 Process Control
3.5 UNIX FreeBSD Process Management
3.6 Summary
3.7 Recommended Reading
3.8 Key Terms, Review Questions, and Problems
Programming Project 1 Developing a Shell Chapter 4 Threads, SMP, and Microkernels
4.1 Processes and Threads
4.2 Symmetric Multiprocessing (SMP)
4.3 Microkernels
4.4 Windows Vista Thread and SMP Management
4.5 Solaris Thread and SMP Management
4.6 Linux Process and Thread Management
4.7 Summary
4.8 Recommended Reading
4.9 Key Terms, Review Questions, and Problems
Chapter 5 Concurrency: Mutual Exclusion and Synchronization
5.1 Principles of Concurrency
5.2 Mutual Exclusion: Hardware Support
5.3 Semaphores
5.4 Monitors
5.5 Message Passing
5.6 Readers/Writers Problem
5.7 Summary
5.8 Recommended Reading
5.9 Key Terms, Review Questions, and Problems
Chapter 6 Concurrency: Deadlock and Starvation
6.1 Principles of Deadlock
6.2 Deadlock Prevention
6.3 Deadlock Avoidance
6.4 Deadlock Detection
6.5 An Integrated Deadlock Strategy
6.6 Dining Philosophers Problem
6.7 UNIX Concurrency Mechanisms
6.8 Linux Kernel Concurrency Mechanisms
6.9 Solaris Thread Synchronization Primitives
6.10 Windows Vista Concurrency Mechanisms
6.11 Summary
6.12 Recommended Reading
6.13 Key Terms, Review Questions, and Problems
PART THREE MEMORY
Chapter 7 Memory Management
7.1 Memory Management Requirements
7.2 Memory Partitioning
7.3 Paging
7.4 Segmentation
7.5 Summary
7.6 Recommended Reading
7.7 Key Terms, Review Questions, and Problems
Appendix 7A Loading and Linking
Chapter 8 Virtual Memory
8.1 Hardware and Control Structures
8.2 Operating System Software
8.3 UNIX and Solaris Memory Management
8.4 Linux Memory Management
8.5 Windows Vista Memory Management
8.6 Summary
8.7 Recommended Reading and Web Sites
8.8 Key Terms, Review Questions, and Problems
Appendix 8A Hash Tables
PART FOUR SCHEDULING
Chapter 9 Uniprocessor Scheduling
9.1 Types of Scheduling
9.2 Scheduling Algorithms
9.3 Traditional UNIX Scheduling
9.4 Summary
9.5 Recommended Reading
9.6 Key Terms, Review Questions, and Problems
Appendix 9A Response Time
Appendix 9B Queuing Systems
Programming Project 2 The HOST Dispatcher Shell
Chapter 10 Multiprocessor and Real-Time Scheduling
10.1 Multiprocessor Scheduling
10.2 Real-Time Scheduling
10.3 Linux Scheduling
10.4 UNIX FreeBSD Scheduling
10.5 Windows Vista Scheduling
10.6 Summary
10.7 Recommended Reading
10.8 Key Terms, Review Questions, and Problems
PART FIVE INPUT/OUTPUT AND FILES
Chapter 11 I/O Management and Disk Scheduling
11.1 I/O Devices
11.2 Organization of the I/O Function
11.3 Operating System Design Issues
11.4 I/O Buffering
11.5 Disk Scheduling
11.6 RAID
11.7 Disk Cache
11.8 UNIX FreeBSD I/O
11.9 Linux I/O
11.10 Windows Vista I/O
11.11 Summary
11.12 Recommended Reading
11.13 Key Terms, Review Questions, and Problems
Appendix 11A Disk Storage Devices
Chapter 12 File Management
12.1 Overview
12.2 File Organization and Access
12.3 File Directories
12.4 File Sharing
12.5 Record Blocking
12.6 Secondary Storage Management
12.7 UNIX File Management
12.8 Linux File Management
12.9 Windows Vista File System
12.10 Summary
12.11 Recommended Reading
12.12 Key Terms, Review Questions, and Problems
PART SIX EMBEDDED SYSTEMS
Chapter 13 Embedded Operating Systems
13.1 The Role of Embedded Operating Systems
13.2 Embedded OS Requirements
13.3 Scheduling
13.4 Other Embedded OS Functions
13.5 Example System: eCOS
13.6 Example System: TinyOS
13.7 Recommended Reading and Web Sites
13.8 Key Terms, Review Questions, and Problems
PART SEVEN DISTRIBUTED SYSTEMS (ONLINE)
Chapter 14 Networking
14.1 The Need for a Protocol Architecture
14.2 The TCP/IP Protocol Architecture
14.3 Sockets
14.4 Linux Networking
14.5 Summary
14.6 Recommended Reading and Web Sites
14.7 Key Terms, Review Questions, and Problems
Appendix 14A The Trivial File Transfer Protocol
Chapter 15 Distributed Processing, Client/Server, and Clusters
15.1 Client/Server Computing
15.2 Distributed Message Passing
15.3 Remote Procedure Calls
15.4 Clusters
15.5 Windows Vista Cluster Server
15.6 Sun Cluster
15.7 Beowulf and Linux Clusters
15.8 Summary
15.9 Recommended Reading
15.10 Key Terms, Review Questions, and Problems
Chapter 16 Distributed Process Management
16.1 Process Migration
16.2 Distributed Global States
16.3 Distributed Mutual Exclusion
16.4 Distributed Deadlock
16.5 Summary
16.6 Recommended Reading
16.7 Key Terms, Review Questions, and Problems
PART EIGHT SECURITY (ONLINE)
Chapter 17 Computer Security
17.1 Security Threats
17.2 Protection
17.3 Intruders
17.4 Malicious Software
17.5 Trusted Systems
17.6 Windows Vista Security
17.7 Summary
17.8 Recommended Reading
17.9 Key Terms, Review Questions, and Problems
Appendix 17A Encryption
APPENDICES
Appendix A Topics in Concurrency
A.1 Mutual Exclusion: Software Approaches
A.2 Race Conditions and Semaphores
A.3 A Barbershop Problem
A.4 Problems
Appendix B Object-Oriented DesignB.1 Motivation
B.2 Object-Oriented Concepts
B.3 Benefits of Object-Oriented Design
B.4 CORBA
B/5 Recommended Reading and Web Site
Appendix C Programming and Operating System Projects
C.1 Projects for Teaching Operating Systems
C.2 NACHOS
C.3 Research Projects
C.4 Programming Projects
C.5 Reading/Report Assignments
Appendix D OSP: An Environment for Operating Systems Projects
D.1 Overview
D.2 Innovative Aspects of OSP
D.3 Comparison with Other Operating System Courseware
Appendix E BACI: The Ben-Ari Concurrent Programming System
E.1 Introduction
E.2 BACI
E.3 Examples of BACI Programs
E.4 BACI Projects
E.5 Enhancements to the BACK System
GLOSSARY
REFERENCES
INDEX
ACRONYMS
Next Edition(s)
Product Tours
GOAL, Where Virtual Office Hours are 24/7!Author Bios
William Stallings has made a unique contribution to understanding the broad sweep of technical developments in computer networking and computer architecture. He has authored 17 titles, and counting revised editions, a total of 41 books on various aspects of these subjects. In over 20 years in the field, he has been a technical contributor, technical manager, and an executive with several high-technology firms. Currently he is an independent consultant whose clients have included computer and networking manufacturers and customers, software development firms, and leading-edge government research institutions.
He has seven times received the award for the best Computer Science textbook of the year from the Text and Academic Authors Association.
Bill has designed and implemented both TCP/IP-based and OSI-based protocol suites on a variety of computers and operating systems, ranging from microcomputers to mainframes. As a consultant, he has advised government agencies, computer and software vendors, and major users on the design, selection, and use of networking software and products.
As evidence of his commitment to providing a broad range of support to students, Bill created and maintains the Computer Science Student Resource Site at WilliamStallings.com/StudentSupport.html. This site provides documents and links on a variety of subjects of general interest to computer science students (and professionals).
He is a member of the editorial board of Cryptologia, a scholarly journal devoted to all aspects of cryptology. He is a frequent lecturer and author of numerous technical papers. His books include Data and Computer Communications, Eighth Edition (Prentice Hall, 2007), which has become the standard in the field.
Dr. Stallings holds a PhD from M.I.T. in Computer Science and a B.S. from Notre Dame in electrical engineering.
Stallings
©2009
|
Prentice Hall
|
On-line Supplement
|
Live
ISBN-10: 0136006345 |
ISBN-13: 9780136006343
|
| | | More Info |
Stallings
©2009
|
Prentice Hall
|
On-line Supplement
|
Live
ISBN-10: 0136074499 |
ISBN-13: 9780136074496
|
| | | More Info |
Stallings
©2009
|
Prentice Hall
|
On-line Supplement
|
Live
ISBN-10: 0132462176 |
ISBN-13: 9780132462174
|
| | | More Info |
Stallings
©2009
|
Prentice Hall
|
On-line Supplement
|
Live
ISBN-10: 0137002661 |
ISBN-13: 9780137002665
|
| | | More Info |
Give your students a choice! PearsonChoices products are designed to give your students more value and flexibility by letting them choose from a variety of text and media formats to best match their learning style and their budget.
Pearson Higher Education offers special pricing when you choose to package your text with other student resources. If you're interested in creating a cost-saving package for your students, see the Packages Tab.
Log in to the Instructor Resource Center
Login name:
Password:
Forgot login/password? | Need to redeem an access code?
Instructor Resource Center File Download
This work is protected by local and international copyright laws and is provided solely for the use of instructors in teaching their courses and assessing student learning. Dissemination or sale of any part of this work (including on the World Wide Web) will destroy the integrity of the work and is not permitted. The work and materials from this site should never be made available to students except by instructors using the accompanying text in their classes. All recipients of this work are expected to abide by these restrictions and to honor the intended pedagogical purposes and the needs of other instructors who rely on these materials.| Cancel | I accept, proceed with download |
Pearson Higher Education offers special pricing when you choose to package your text with other student resources. If you're interested in creating a cost-saving package for your students contact your Pearson Higher Education representative.