본문 바로가기
꺼리/읽을꺼리

Operating System Concepts

by rokwha 2025. 5. 15.

 

https://www.os-book.com/

 

Operating System Concepts

 

www.os-book.com

 

 Operating System Concepts. OSC 나 운영체제 이론서로 표지에 공룡이 있어서 일명 공룡책 으로도 불리기도 한다. 

표지는 여기서 구경 

오래전부터 운영체제 쪽으로 거의 표준 교재 와 레퍼런스 교재로 쓰이고 있다. 구할수 있으면 한번쯤 봐도 좋겟.......다. 

 

2025년 현재 최신버전은 10 번째 판본이며, 글로벌, 아시아, 에션셜 에디션 과 zyBook 버전 과 자바 버전이 따로 있다.

글로벌 과 아시아 에디션은 거의 차이가 없고 아시아 에디션은 아시아쪽 지역에서 책의 단가를 낮출목적이라고 되어 있는데 그 때문인지 일부 국가에서는 판매가 되지 않는다고 한다. 

 

에션설 에디션은 글로벌 에디션 에서 일부 챕터를 빼거나 줄여서 출간 되었다. 페이지수로만 봐도 400쪽 이상 차이가 나는거 같고 에션설이 현재 2번째 판본인데 이는 정규 판의 의 9번째 판을 기반으로 하는것 같다. ( 1은 8판 )

zyBook 버전은 zyBook 이라는 교육 프로그램에 연동된것 이다. 해당 사이트에서 저렴한 가격으로 사용가능하며 실습도 가능하다.

자바 버전은 말 그대로 책에서 다루는 내용을 자바를 기준으로 해서 나온 버전이다.  C/POSIX 대신 자바 API 로 대체 되어졌기 때문에 C 대신 자바가 편하거나 자바위주로 해당내용이 필요하다면 이 버전을 먼저 접해도 괜찮겟다.  2025년 현재 8번째 에디션이 있는데 출간 년도를 보면 정규 8번째 판 과 같은것 같다.  

학교/학원 에서 정규 수업에 텍스트 북 이나 레퍼런스 북 으로 사용하지 않는다면 입문/초급자는 에센셜 에디션 이나 시중에 나오는 다양한 책들이 많으므로 접하기 쉬운것을 먼저 보는것을 추천한다.

 

10번째 판본의 목차 


PART ONE OVERVIEW


Chapter 1 Introduction
1.1 What Operating Systems Do 4
1.2 Computer-System Organization 7
1.3 Computer-System Architecture 15
1.4 Operating-System Structure 21
1.5 Resource Management 27
1.6 Protection and Security 33
1.7 Virtualization 34
1.8 Distributed Systems 35
1.9 Kernel Data Structures 36
1.10 Computing Environments 40
1.11 Free/Libre and Open-Source Operating Systems 46
     Practice Exercises 53
     Further Reading 54
        
Chapter 2 Operating-System Structures
2.1 Operating-System Services 55
2.2 User and Operating-System Interface 58
2.3 System Calls 62
2.4 System Services 74
2.5 Linkers and Loaders 75
2.6 Why Applications Are Operating-System Specific 77
2.7 Operating-System Design and Implementation 79
2.8 Operating-System Structure 81
2.9 Building and Booting an Operating System 92
2.10 Operating-System Debugging 95
     Practice Exercises 154
     Further Reading 101

PART TWO PROCESS MANAGEMENT

Chapter 3 Processes
3.1 Process Concept 105
3.2 Process Scheduling 110
3.3 Operations on Processes 115
3.4 Interprocess Communication 123
3.5 IPC in Shared-Memory Systems 125
3.6 IPC in Message-Passing Systems 127
3.7 Examples of IPC Systems 132
3.8 Communication in Client-Server Systems 145
    Practice Exercises 154
    Further Reading 156       

Chapter 4 Threads & Concurrency
4.1 Overview 160
4.2 Multicore Programming 162
4.3 Multithreading Models 166
4.4 Thread Libraries 168
4.5 Implicit Threading 176
4.6 Threading Issues 188
4.7 Operating-System Examples 194
4.8 Summary 196
    Practice Exercises 154
    Further Reading 198    
    
Chapter 5 CPU Scheduling
5.1 Basic Concepts 200
5.2 Scheduling Criteria 204
5.3 Scheduling Algorithms 205
5.4 Thread Scheduling 217
5.5 Multi-Processor Scheduling 220
5.6 Real-Time CPU Scheduling 227
5.7 Operating-System Examples 234
5.8 Algorithm Evaluation 244
5.9 Summary 250
    Practice Exercises 154
    Further Reading 254

PART THREE PROCESS SYNCHRONIZATION

Chapter 6 Synchronization Tools
6.1 Background 257
6.2 The Critical-Section Problem 260
6.3 Peterson’s Solution 262
6.4 Hardware Support for Synchronization 265
6.5 Mutex Locks 270
6.6 Semaphores 272
6.7 Monitors 276
6.8 Liveness 283
6.9 Evaluation 284
6.10 Summary 286
    Practice Exercises 154
    Further Reading 288
    
Chapter 7 Synchronization Examples
7.1 Classic Problems of Synchronization 289
7.2 Synchronization within the Kernel 295
7.3 POSIX Synchronization 299
7.4 Synchronization in Java 303
7.5 Alternative Approaches 311
7.6 Summary 314
    Practice Exercises 154
    Further Reading 315    
    
Chapter 8 Deadlocks
8.1 System Model 318
8.2 Deadlock in Multithreaded
Applications 319
8.3 Deadlock Characterization 321
8.4 Methods for Handling Deadlocks 326
8.5 Deadlock Prevention 327
8.6 Deadlock Avoidance 330
8.7 Deadlock Detection 337
8.8 Recovery from Deadlock 341
8.9 Summary 343
    Practice Exercises 154
    Further Reading 346

Chapter 9 Main Memory
9.1 Background 349
9.2 Contiguous Memory Allocation 356
9.3 Paging 360
9.4 Structure of the Page Table 371
9.5 Swapping 376
9.6 Example: Intel 32- and 64-bit Architectures 379
9.7 Example: ARMv8 Architecture 383
9.8 Summary 384
    Practice Exercises 154
    Further Reading 387    
    
PART FIVE STORAGE MANAGEMENT

Chapter 11 Mass-Storage Structure
11.1 Overview of Mass-Storage Structure 449
11.2 HDD Scheduling 457
11.3 NVM Scheduling 461
11.4 Error Detection and Correction 462
11.5 Storage Device Management 463
11.6 Swap-Space Management 467
11.7 Storage Attachment 469
11.8 RAID Structure 473
11.9 Summary 485
    Practice Exercises 154
    Further Reading 487
    
Chapter 12 I/O Systems
12.1 Overview 489
12.2 I/O Hardware 490
12.3 Application I/O Interface 500
12.4 Kernel I/O Subsystem 508
12.5 Transforming I/O Requests to Hardware Operations 516
12.6 STREAMS 519
12.7 Performance 521
12.8 Summary 524
    Practice Exercises 154
    Further Reading 526
    
PART SIX FILE SYSTEM

Chapter 13 File-System Interface
13.1 File Concept 529
13.2 Access Methods 539
13.3 Directory Structure 541
13.4 Protection 550
13.5 Memory-Mapped Files 555
13.6 Summary 560
    Practice Exercises 154
    Further Reading 561
    
Chapter 14 File-System Implementation
14.1 File-System Structure 564
14.2 File-System Operations 566
14.3 Directory Implementation 568
14.4 Allocation Methods 570
14.5 Free-Space Management 578
14.6 Efficiency and Performance 582
14.7 Recovery 586
14.8 Example: The WAFL File System 589
14.9 Summary 593
    Practice Exercises 154
    Further Reading 594
    
Chapter 15 File-System Internals
15.1 File Systems 597
15.2 File-System Mounting 598
15.3 Partitions and Mounting 601
15.4 File Sharing 602
15.5 Virtual File Systems 603
15.6 Remote File Systems 605
15.7 Consistency Semantics 608
15.8 NFS 610
15.9 Summary 615
    Practice Exercises 154
    Further Reading 617    
    
PART SEVEN SECURITY AND PROTECTION
Chapter 16 Security
16.1 The Security Problem 621
16.2 Program Threats 625
16.3 System and Network Threats 634
16.4 Cryptography as a Security Tool 637
16.5 User Authentication 648
16.6 Implementing Security Defenses 653
16.7 An Example: Windows 10 662
16.8 Summary 664
    Further Reading 665    

Chapter 17 Protection
17.1 Goals of Protection 667
17.2 Principles of Protection 668
17.3 Protection Rings 669
17.4 Domain of Protection 671
17.5 Access Matrix 675
17.6 Implementation of the Access Matrix 679
17.7 Revocation of Access Rights 682
17.8 Role-Based Access Control 683
17.9 Mandatory Access Control (MAC) 684
17.10 Capability-Based Systems 685
17.11 Other Protection Improvement Methods 687
17.12 Language-Based Protection 690
17.13 Summary 696
    Practice Exercises 154
    Further Reading 697    
    
PART EIGHT ADVANCED TOPICS
Chapter 18 Virtual Machines
18.1 Overview 701
18.2 History 703
18.3 Benefits and Features 704
18.4 Building Blocks 707
18.5 Types of VMs and Their Implementations 713
18.6 Virtualization and Operating-System Components 719
18.7 Examples 726
18.8 Virtualization Research 728
18.9 Summary 729
    Further Reading 730
    
Chapter 19 Networks and Distributed Systems
19.1 Advantages of Distributed Systems 733
19.2 Network Structure 735
19.3 Communication Structure 738
19.4 Network and Distributed Operating Systems 749
19.5 Design Issues in Distributed Systems 753
19.6 Distributed File Systems 757
19.7 DFS Naming and Transparency 761
19.8 Remote File Access 764
19.9 Final Thoughts on Distributed File Systems 767
19.10 Summary 768
    Practice Exercises 154
    Further Reading 770

PART NINE CASE STUDIES

Chapter 20 The Linux System
20.1 Linux History 775
20.2 Design Principles 780
20.3 Kernel Modules 783
20.4 Process Management 786
20.5 Scheduling 790
20.6 Memory Management 795
20.7 File Systems 803
20.8 Input and Output 810
20.9 Interprocess Communication 812
20.10 Network Structure 813
20.11 Security 816
20.12 Summary 818
    Practice Exercises 154
    Further Reading 819
    
Chapter 21 Windows 10
21.1 History 821
21.2 Design Principles 826
21.3 System Components 838
21.4 Terminal Services and Fast User Switching 874
21.5 File System 875
21.6 Networking 880
21.7 Programmer Interface 884
21.8 Summary 895
    Practice Exercises 154
    Further Reading 897    
    
PART TEN APPENDICES

Appendix A Influential Operating Systems
A.1 Feature Migration 1
A.2 Early Systems 2
A.3 Atlas 9
A.4 XDS-940 10
A.5 THE 11
A.6 RC 4000 11
A.7 CTSS 12
A.8 MULTICS 13
A.9 IBM OS/360 13
A.10 TOPS-20 15
A.11 CP/M and MS/DOS 15
A.12 Macintosh Operating System and Windows 16
A.13 Mach 16
A.14 Capability-based Systems–Hydra and CAP 18
A.15 Other Systems 20
    Practice Exercises 21
    Exercises 21
    Further Reading 22
    
Appendix B Windows 7
B.1 History 1
B.2 Design Principles 3
B.3 System Components 10
B.4 Terminal Services and Fast User Switching 34
B.5 File System 35
B.6 Networking 41
B.7 Programmer Interface 46
B.8 Summary 55
    Practice Exercises 56
    Exercises 56
    Further Reading 57
    
Appendix C BSD UNIX
C.1 UNIX History 1
C.2 Design Principles 6
C.3 Programmer Interface 8
C.4 User Interface 15
C.5 Process Management 18
C.6 Memory Management 22
C.7 File System 25
C.8 I/O System 33
C.9 Interprocess Communication 36
C.10 Summary 41
    Exercises 42
    Further Reading 42
    
Appendix D The Mach System
D.1 History of the Mach System 1
D.2 Design Principles 3
D.3 System Components 4
D.4 Process Management 7
D.5 Interprocess Communication 13
D.6 Memory Management 18
D.7 Programmer Interface 23
D.8 Summary 24
    Exercises 25
    Further Reading 26    

 

https://www.aladin.co.kr/shop/wproduct.aspx?ItemId=235360651

 

운영체제 : 알라딘

 

www.aladin.co.kr


PDF 파일

 

10th Edition

09th Edition

08th Edition

07th Edition  

 

반응형