Operating Systems: Internals and Design Principles, 9th edition

  • William Stallings

Your access includes:

  • Search, highlight, notes, and more
  • Easily create flashcards
  • Use the app for access anywhere
  • 14-day refund guarantee

$10.99per month

Minimum 4-month term, pay monthly or pay $43.96 upfront

Learn more, spend less

  • Study simpler and faster

    Use flashcards and other study tools in your eTextbook

  • Listen on the go

    Learn how you like with full eTextbook audio

  • Find it fast

    Quickly navigate your eTextbook with search

  • Stay organized

    Access all your eTextbooks in one place

  • Easily continue access

    Keep learning with auto-renew

Overview

For one- or two-semester undergraduate courses in operating systems for computer science, computer engineering, and electrical engineering majors

 

An introduction to operating systems with up-to-date and comprehensive coverage

Now in its 9th Edition, Operating Systems: Internals and Design Principles provides a comprehensive, unified introduction to operating systems topics aimed at computer science, computer engineering, and electrical engineering majors. Author William Stallings emphasizes both design issues and fundamental principles in contemporary systems, while providing readers with a solid understanding of the key structures and mechanisms of operating systems. He discusses design trade-offs and the practical decisions affecting design, performance and security. The text illustrates and reinforces design concepts, tying them to real-world design choices with case studies in Linux, UNIX, Android, and Windows 10.

 

With an unparalleled degree of support for integrating projects into the course, plus comprehensive coverage of the latest trends and developments in operating systems, including cloud computing and the Internet of Things (IoT), the text provides everything students and instructors need to keep pace with a complex and rapidly changing field. The 9th Edition has been extensively revised and contains new material, new projects, and updated chapters.

 

Published by Pearson (July 14th 2021) - Copyright © 2018

ISBN-13: 9780137516742

Subject: Industrial Engineering

Category: Operating Systems

Overview

Table of Contents

  • Online Chapters and Appendices
  • VideoNotes
  • Preface
  • About the Author

I. Background

  1. Computer System Overview
    • 1.1. Basic Elements
    • 1.2. Evolution of the Microprocessor
    • 1.3. Instruction Execution
    • 1.4. Interrupts
    • 1.5. The Memory Hierarchy
    • 1.6. Cache Memory
    • 1.7. Direct Memory Access
    • 1.8. Multiprocessor and Multicore Organization
    • 1.9. Key Terms, Review Questions, and Problems
    • 1A. Performance Characteristics of Two-Level Memories
  2. Operating System Overview
    • 2.1. Operating System Objectives and Functions
    • 2.2. The Evolution of Operating Systems
    • 2.3. Major Achievements
    • 2.4. Developments Leading to Modern Operating Systems
    • 2.5. Fault Tolerance
    • 2.6. Os Design Considerations for Multiprocessor and Multicore
    • 2.7. Microsoft Windows Overview
    • 2.8. Traditional Unix Systems
    • 2.9. Modern Unix Systems
    • 2.10. Linux
    • 2.11. Android
    • 2.12. Key Terms, Review Questions, and Problems

II. Processes

  1. Process Description and Control
    • 3.1. What is a Process?
    • 3.2. Process States
    • 3.3. Process Description
    • 3.4. Process Control
    • 3.5. Execution of the Operating System
    • 3.6. Unix Svr4 Process Management
    • 3.7. Summary
    • 3.8. Key Terms, Review Questions, and Problems
  2. Threads
    • 4.1. Processes and Threads
    • 4.2. Types of Threads
    • 4.3. Multicore and Multithreading
    • 4.4. Windows Process and Thread Management
    • 4.5. Solaris Thread and Smp Management
    • 4.6. Linux Process and Thread Management
    • 4.7. Android Process and Thread Management
    • 4.8. Mac OS X Grand Central Dispatch
    • 4.9. Summary
    • 4.10. Key Terms, Review Questions, and Problems
  3. Concurrency: Mutual Exclusion and Synchronization
    • 5.1. Mutual Exclusion: Software Approaches
    • 5.2. Principles of Concurrency
    • 5.3. Mutual Exclusion: Hardware Support
    • 5.4. Semaphores
    • 5.5. Monitors
    • 5.6. Message Passing
    • 5.7. Readers/Writers Problem
    • 5.8. Summary
    • 5.9. Key Terms, Review Questions, and Problems
  4. 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 Concurrency Mechanisms
    • 6.11. Android Interprocess Communication
    • 6.12. Summary
    • 6.13. Key Terms, Review Questions, and Problems

III. Memory

  1. Memory Management
    • 7.1. Memory Management Requirements
    • 7.2. Memory Partitioning
    • 7.3. Paging
    • 7.4. Segmentation
    • 7.5. Summary
    • 7.6. Key Terms, Review Questions, and Problems
    • 7A. Loading and Linking
  2. 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 Memory Management
    • 8.6. Android Memory Management
    • 8.7. Summary
    • 8.8. Key Terms, Review Questions, and Problems

IV. Scheduling

  1. Uniprocessor Scheduling
    • 9.1. Types of Processor Scheduling
    • 9.2. Scheduling Algorithms
    • 9.3. Traditional Unix Scheduling
    • 9.4. Summary
    • 9.5. Key Terms, Review Questions, and Problems
  2. Multiprocessor, Multicore, and Real-Time Scheduling
    • 10.1. Multiprocessor and Multicore Scheduling
    • 10.2. Real-Time Scheduling
    • 10.3. Linux Scheduling
    • 10.4. Unix Svr4 Scheduling
    • 10.5. Unix Freebsd Scheduling
    • 10.6. Windows Scheduling
    • 10.7. Summary
    • 10.8. Key Terms, Review Questions, and Problems

V. Input/Output and Files

  1. 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 Svr4 I/O
    • 11.9. Linux I/O
    • 11.10. Windows I/O
    • 11.11. Summary
    • 11.12. Key Terms, Review Questions, and Problems
  2. File Management
    • 12.1. Overview
    • 12.2. File Organization and Access
    • 12.3. B-Trees
    • 12.4. File Directories
    • 12.5. File Sharing
    • 12.6. Record Blocking
    • 12.7. Secondary Storage Management
    • 12.8. Unix File Management
    • 12.9. Linux Virtual File System
    • 12.10. Windows File System
    • 12.11. Android File Management
    • 12.12. Summary
    • 12.13. Key Terms, Review Questions, and Problems

VI. Embedded Systems

  1. Embedded Operating Systems
    • 13.1. Embedded Systems
    • 13.2. Characteristics of Embedded Operating Systems
    • 13.3. Embedded Linux
    • 13.4. Tinyos
    • 13.5. Key Terms, Review Questions, and Problems
  2. Virtual Machines
    • 14.1. Virtual Machine Concepts
    • 14.2. Hypervisors
    • 14.3. Container Virtualization
    • 14.4. Processor Issues
    • 14.5. Memory Management
    • 14.6. I/O Management
    • 14.7. Vmware Esxi
    • 14.8. Microsoft Hyper-V and Xen Variants
    • 14.9. Java Vm
    • 14.10. Linux Vserver Virtual Machine Architecture
    • 14.11. Summary
    • 14.12. Key Terms, Review Questions, and Problems
  3. Operating System Security
    • 15.1. Intruders and Malicious Software
    • 15.2. Buffer Overflow
    • 15.3. Access Control
    • 15.4. Unix Access Control
    • 15.5. Operating Systems Hardening
    • 15.6. Security Maintenance
    • 15.7. Windows Security
    • 15.8. Summary
    • 15.9. Key Terms, Review Questions, and Problems
  4. Cloud and IoT Operating Systems
    • 16.1. Cloud Computing
    • 16.2. Cloud Operating Systems
    • 16.3. The Internet of Things
    • 16.4. IoT Operating Systems
    • 16.5. Key Terms and Review Questions

Appendix A. Topics in Concurrency

Appendix B. Programming and Operating System Projects

References

Credits

Index

Your questions answered

Pearson+ is your one-stop shop, with eTextbooks and study videos designed to help students get better grades in college.

A Pearson eTextbook is an easy‑to‑use digital version of the book. You'll get upgraded study tools, including enhanced search, highlights and notes, flashcards and audio. Plus learn on the go with the Pearson+ app.

Your eTextbook subscription gives you access for 4 months. You can make a one‑time payment for the initial 4‑month term or pay monthly. If you opt for monthly payments, we will charge your payment method each month until your 4‑month term ends. You can turn on auto‑renew in My account at any time to continue your subscription before your 4‑month term ends.

When you purchase an eTextbook subscription, it will last 4 months. You can renew your subscription by selecting Extend subscription on the Manage subscription page in My account before your initial term ends.

If you extend your subscription, we'll automatically charge you every month. If you made a one‑time payment for your initial 4‑month term, you'll now pay monthly. To make sure your learning is uninterrupted, please check your card details.

To avoid the next payment charge, select Cancel subscription on the Manage subscription page in My account before the renewal date. You can subscribe again in the future by purchasing another eTextbook subscription.

Channels is a video platform with thousands of explanations, solutions and practice problems to help you do homework and prep for exams. Videos are personalized to your course, and tutors walk you through solutions. Plus, interactive AI‑powered summaries and a social community help you better understand lessons from class.

Channels is an additional tool to help you with your studies. This means you can use Channels even if your course uses a non‑Pearson textbook.

When you choose a Channels subscription, you're signing up for a 1‑month, 3‑month or 12‑month term and you make an upfront payment for your subscription. By default, these subscriptions auto‑renew at the frequency you select during checkout.

When you purchase a Channels subscription it will last 1 month, 3 months or 12 months, depending on the plan you chose. Your subscription will automatically renew at the end of your term unless you cancel it.

We use your credit card to renew your subscription automatically. To make sure your learning is uninterrupted, please check your card details.