Ebook: Operating system concepts
Author: Abraham Silberschatz, Peter B Galvin, Greg Gagne
Machine generated contents note: pt. ONE OVERVIEW -- ch. 1 Introduction -- 1.1.What Operating Systems Do -- 1.2.Computer-System Organization -- 1.3.Computer-System Architecture -- 1.4.Operating-System Structure -- 1.5.Operating-System Operations -- 1.6.Process Management -- 1.7.Memory Management -- 1.8.Storage Management -- 1.9.Protection and Security -- 1.10.Kernel Data Structures -- 1.11.Computing Environments -- 1.12.Open-Source Operating Systems -- 1.13.Summary -- Exercises -- Bibliographical Notes -- ch. 2 Operating-System Structures -- 2.1.Operating-System Services -- 2.2.User and Operating-System Interface -- 2.3.System Calls -- 2.4.Types of System Calls -- 2.5.System Programs -- 2.6.Operating-System Design and Implementation -- 2.7.Operating-System Structure -- 2.8.Operating-System Debugging -- 2.9.Operating-System Generation -- 2.10.System Boot -- 2.11.Summary -- Exercises -- Bibliographical Notes -- pt. TWO PROCESS MANAGEMENT -- ch. 3 Processes -- 3.1.Process Concept -- 3.2.Process Scheduling -- 3.3.Operations on Processes -- 3.4.Interprocess Communication -- 3.5.Examples of IPC Systems -- 3.6.Communication in Client-Server Systems -- 3.7.Summary -- Exercises -- Bibliographical Notes -- ch. 4 Threads -- 4.1.Overview -- 4.2.Multicore Programming -- 4.3.Multithreading Models -- 4.4.Thread Libraries -- 4.5.Implicit Threading -- 4.6.Threading Issues -- 4.7.Operating-System Examples -- 4.8.Summary -- Exercises -- Bibliographical Notes -- ch. 5 Process Synchronization -- 5.1.Background -- 5.2.The Critical-Section Problem -- 5.3.Peterson's Solution -- 5.4.Synchronization Hardware -- 5.5.Mutex Locks -- 5.6.Semaphores -- 5.7.Classic Problems of Synchronization -- 5.8.Monitors -- 5.9.Synchronization Examples -- 5.10.Alternative Approaches -- 5.11.Summary -- Exercises -- Bibliographical Notes -- ch. 6 CPU Scheduling -- 6.1.Basic Concepts -- 6.2.Scheduling Criteria -- 6.3.Scheduling Algorithms -- 6.4.Thread Scheduling -- 6.5.Multiple-Processor Scheduling -- 6.6.Real-Time CPU Scheduling -- 6.7.Operating-System Examples -- 6.8.Algorithm Evaluation -- 6.9.Summary -- Exercises -- Bibliographical Notes -- ch. 7 Deadlocks -- 7.1.System Model -- 7.2.Deadlock Characterization -- 7.3.Methods for Handling Deadlocks -- 7.4.Deadlock Prevention -- 7.5.Deadlock Avoidance -- 7.6.Deadlock Detection -- 7.7.Recovery from Deadlock -- 7.8.Summary -- Exercises -- Bibliographical Notes -- pt. THREE MEMORY MANAGEMENT -- ch. 8 Main Memory -- 8.1.Background -- 8.2.Swapping -- 8.3.Contiguous Memory Allocation -- 8.4.Segmentation -- 8.5.Paging -- 8.6.Structure of the Page Table -- 8.7.Example: Intel 32 and 64-bit Architectures -- 8.8.Example: ARM Architecture -- 8.9.Summary -- Exercises -- Bibliographical Notes -- ch. 9 Virtual Memory -- 9.1.Background -- 9.2.Demand Paging -- 9.3.Copy-on-Write -- 9.4.Page Replacement -- 9.5.Allocation of Frames -- 9.6.Thrashing -- 9.7.Memory-Mapped Files -- 9.8.Allocating Kernel Memory -- 9.9.Other Considerations -- 9.10.Operating-System Examples -- 9.11.Summary -- Exercises -- Bibliographical Notes -- pt. FOUR STORAGE MANAGEMENT -- ch. 10 Mass-Storage Structure -- 10.1.Overview of Mass-Storage Structure -- 10.2.Disk Structure -- 10.3.Disk Attachment -- 10.4.Disk Scheduling -- 10.5.Disk Management -- 10.6.Swap-Space Management -- 10.7.RAID Structure -- 10.8.Stable-Storage Implementation -- 10.9.Summary -- Exercises -- Bibliographical Notes -- ch. 11 File-System Interface -- 11.1.File Concept -- 11.2.Access Methods -- 11.3.Directory and Disk Structure -- 11.4.File-System Mounting -- 11.5.File Sharing -- 11.6.Protection -- 11.7.Summary -- Exercises -- Bibliographical Notes -- ch. 12 File-System Implementation -- 12.1.File-System Structure -- 12.2.File-System Implementation -- 12.3.Directory Implementation -- 12.4.Allocation Methods -- 12.5.Free-Space Management -- 12.6.Efficiency and Performance -- 12.7.Recovery -- 12.8.NFS -- 12.9.Example: The WAFL File System -- 12.10.Summary -- Exercises -- Bibliographical Notes -- ch. 13 I/O Systems -- 13.1.Overview -- 13.2.I/O Hardware -- 13.3.Application I/O Interface -- 13.4.Kernel I/O Subsystem -- 13.5.Transforrming I/O Requests to Hardware Operations -- 13.6.STREAMS -- 13.7.Performance -- 13.8.Summary -- Exercises -- Bibliographical Notes -- pt. FIVE PROTECTION AND SECURITY -- ch. 14 Protection -- 14.1.Goals of Protection -- 14.2.Principles of Protection -- 14.3.Domain of Protection -- 14.4.Access Matrix -- 14.5.Implementation of the Access Matrix -- 14.6.Access Control -- 14.7.Revocation of Access Rights -- 14.8.Capability-Based Systems -- 14.9.Language-Based Protection -- 14.10.Summary -- Exercises -- Bibliographical Notes -- ch. 15 Security -- 15.1.The Security Problem -- 15.2.Program Threats -- 15.3.System and Network Threats -- 15.4.Cryptography as a Security Tool -- 15.5.User Authentication -- 15.6.Implementing Security Defenses -- 15.7.Firewalling to Protect Systems and Networks -- 15.8.Computer-Security Classifications -- 15.9.An Example: Windows 7 -- 15.10.Summary -- Exercises -- Bibliographical Notes -- pt. SIX ADVANCED TOPICS -- ch. 16 Virtual Machines -- 16.1.Overview -- 16.2.History -- 16.3.Benefits and Features -- 16.4.Building Blocks -- 16.5.Types of Virtual Machines and Their Implementations -- 16.6.Virtualization and Operating-System Components -- 16.7.Examples -- 16.8.Summary -- Exercises -- Bibliographical Notes -- ch. 17 Distributed Systems -- 17.1.Advantages of Distributed Systems -- 17.2.Types of Network-based Operating Systems -- 17.3.Network Structure -- 17.4.Communication Structure -- 17.5.Communication Protocols -- 17.6.An Example: TCP/IP -- 17.7.Robustness -- 17.8.Design Issues -- 17.9.Distributed File Systems -- 17.10.Summary -- Exercises -- Bibliographical Notes -- pt. SEVEN CASE STUDIES -- ch. 18 The Linux System -- 18.1.Linux History -- 18.2.Design Principles -- 18.3.Kernel Modules -- 18.4.Process Management -- 18.5.Scheduling -- 18.6.Memory Management -- 18.7.File Systems -- 18.8.Input and Output -- 18.9.Interprocess Communication -- 18.10.Network Structure -- 18.11.Security -- 18.12.Summary -- Exercises -- Bibliographical Notes -- ch. 19 Windows 7 -- 19.1.History -- 19.2.Design Principles -- 19.3.System Components -- 19.4.Terminal Services and Fast User Switching -- 19.5.File System -- 19.6.Networking -- 19.7.Programmer Interface -- 19.8.Summary -- Exercises -- Bibliographical Notes -- ch. 20 Influential Operating Systems -- 20.1.Feature Migration -- 20.2.Early Systems -- 20.3.Atlas -- 20.4.XDS-940 -- 20.5.THE -- 20.6.RC 4000 -- 20.7.CTSS -- 20.8.MULTICS -- 20.9.IBM OS/360 -- 20.10.TOPS-20 -- 20.11.CP/M and MS/DOS -- 20.12.Macintosh Operating System and Windows -- 20.13.Mach -- 20.14.Other Systems -- Exercises -- Bibliographical Notes -- pt. EIGHT APPENDICES -- Appendix A BSD UNIX -- A.1.UNIX History -- A.2.Design Principles -- A.3.Programmer Interface -- A.4.User Interface -- A.5.Process Management -- A.6.Memory Management -- A.7.File System -- A.8.I/O System -- A.9.Interprocess Communication -- A.10.Summary -- Exercises -- Bibliographical Notes -- Appendix B The Mach System -- B.1.History of the Mach System -- B.2.Design Principles -- B.3.System Components -- B.4.Process Management -- B.5.Interprocess Communication -- B.6.Memory Management -- B.7.Programmer Interface -- B.8.Summary -- Exercises
Download the book Operating system concepts for free or read online
Continue reading on any device:
Last viewed books
Related books
{related-news}
Comments (0)