جزییات کتاب
کتاب مفاهیم سیستم عامل نوشته آبراهام سیلبرشاتزو همکاران ،کتابی مناسب برای دانشجویان کارشناسی و کارشناسی ارشد رشته های علوم کامپیوتر و مهندسی کامپیوتر جهت آشنایی با مفاهیم پایه ای سیستم عامل است. همچنین کتاب یاد شده برای افرادی که در محیط های کاری نیز مشغول به کار هستند مفید میباشد.این کتاب توصیفی شفاف ز مفاهیم پایه ای سیستم عامل را در بر میگیرد،در این کتاب فرض میشود که خواننده با ساختارهای داده پایه ای ،سازمان کامپیوترو یک زبان سطح بالا همانند Cآشنا هستند.موضوعات سخت افزاری مورد نیاز برای درک مفاهیم بهتر سیستم عامل در فصل 1 کتاب آورده شده است . برای کدهای برنامه نویسی در این کتاب از زبان های Cوجاوا استفاده شده است،اما خواننده بدون داشتن تسلط بر روی این زبان ها میتوانند الگوریتم کد برنامه نویسی شده را درک نماید . مفاهیم با استفاده از توصیف های شهودی بیان شده است همچنین مفاهیم تئوری ضروری در این کتاب بحث شده اند و ازاثبات های فرمولها صرفنظر گردیده است.
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