Stallings, William

Operating systems: Internals and design principles / William Stallings - 6th ed. - New Delhi : Pearson , 2009. - xvii, 822 p.

PART ONE BACKGROUND 6
Chapter 1 Computer System Overview 7
1.1 Basic Elements S
1.2 Processor Registers 9
1.3 Instruction Execution 12
1.4 InterrupLs 15
1.5 Tile Memory Hier.irchy 26
1.6 Cache Memory 29
1.7 I/O Communication Techniques 33
1.8 Recommended Reading and Web Sites 36
1.9 Key Terms, Review Questions, and Problems 37
Appendix 1A Performance Characteristics ofTwo-Level Memory 39
Appendix IB Procedure Control 46
Chapter 2 Operating System Overview 50
2.1 Operating System Objectives and Functions 51
2.2 The Evolution of Operating Systems 55
2.3 M.ajor Achievements 64
2.4 Developments Leading to Modern Operating Systems 77
2.5 Microsoft Wiiulows (~)verview HO
2.6 Traditional UNIX Systems 90
2.7 Modern UNIX Systems 93
2.8 Linux 94
2.9 Recommended Reading and Web Sites 100
2.10 Key Terms, Review Questions, and Problems 101
PART TWO PROCESSES 105
Chapter 3 Process Description and Control 107 •
3.1 What is a Process? 108
3.2 Process States 111
3.3 Process Description 126
3.4 Process Control 135
3.5 E.\ecution of the Operating System 140
3.6 Security Issues 143
3.7 UNIX SVR4 Process Man.igement 147
3.8 Suininary 152
3.9
3.10
Chapter 4
4.1
4.2
4.3
4.4
4.5
4.6
4.7
4.8
4.9
Chapter 5
5.1
5.2
5.3
5.4
5.5
5.6
5.7
5.8
5.9
Chapter 6
6.1
6.2
6.3
6.4
6.5
6.6
6.7
6.8
6.9
6.10
6.11
6.12
6.13

Key Terms, Review Questions, and Problems 153
Programming Project One Developing a Shell 157
Threads, SMP, and Microkernels 160
Processes and Threads 161
Symmetric Multiprocessing (SMP) 175
Microkernels 179
Windows Vista Thread and SMP Management 185
Solaris Thread and SMP Management 190
Linux Process and Thread Management 195
Summary 198
Recommended Reading 198
Key Terms, Review Questions, and Problems 199
Concurrency: Mutual Exclusion and Synchronization 206
Principles of Concurrency 207
Mutual Exclusion: Hardware Support 216
Semaphores 219
Monitors 232
Message Passing 239
Readers/Writers Problem 245
Summary 249
Recommended Reading 250
Key Terms, Review Questions, and Problems 251
Concurrency: Deadlock and Starvation 262
Principles of Deadlock 263
Deadlock Prevention 272
Deadlock Avoidance 273
Deadlock Detection 279
An Integrated Deadlock Strategy 281
Dining Philosophers Problem 282
UNIX Concurrency Mechanisms 286
Linux Kernel Cloncurrency Mechanisms 289
Solans Thread Synchronization Primitives 295
Windows Vista Concurrency Mechanisms 298
Summary 302
Recommended Reading 302
Key Terms, Review Questions, and Problems 303
PART THREE MEMORY 309
Chapter 7 Memory Management 311
7.1 Memory Management Requirements 312
7.2 Memory Partitioning 315
7.3 Paging 326
7.4 Segmentation 330
7.5 Security Issues 331
7.6 Summary 335
7.7 Recommended Reading 335
7.8 Key Terms, Review Questions, and Problems 336
Appendix 7A Loading and Linking 339
Chapter 8 Virtual Memory 345
8.1 Hardware and Control Structures 346
8.2 Operating System Software 365
8.3 UNIX .iiui Solaris Memory Management 383
8.4 Linux Memory Management 3S'J
8.5 Windows Vista Memory Management .191
8.6 Summary 394
8.7 Recommended Reading and Web Sites 395
8.8 Key Terms, Review Questions, and Problems 396
Appendix 8A Hash Tables 400
PART FOUR SCHEDULING 404
Chapter 9 Uniprocessor Scheduling 405
9.1 Types of Scheduling 406
9.2 Scheduling Algorithms 410
9.3 Traditional UNIX Scheduling 432
9.4 Summary 434
9.5 Recommended Reading 434
9.6 Key Terms, Review Questions, and Problems 435
Appendix 9A Response Time 438
Appendix 9B Queuing Systems 440
Profiramminfi Project TwoTlw HOST Dispatcher Shell 447
Chapter 10 Multiprocessor and Real-Time Scheduling 452
10.1 Multiprocessor Scheduling 453
10.2 Real-Time Scheduling 466
10.3 Linux Scheduling 481
10.4 UNIX FreeUSI) Scheduling 485
10.5 Windows Vista Scheduling 487
10.6 Summary 490
10.7 Recommended Reading 490
10.8 Key Terms, Review Questions, and Problems 491
PART FIVE INPUT/OUTPUT AND FILES 494
Chapter 11 I/O Management and Disk Scheduling 495
11.1 I/O Devices 496
11.2 Organization of the I/O Function 497
11.3 Operating System Design Issues 501
11.4 I/O Buffering 504
11.5 Disk Scheduling 507
11.6 RAID 514
11.7 Disk Cache 523
11.8 UNIX 1-reeBSl) l/C 52^.
11.9 Linux I/O 529
11.10 Wiiuiows Vist.i I/O 533
11.11 Summary 536
11.12 Recommended Reading 536
11.13 Key Terms, Review Questions, and Problems 538
Appendix 11A Disk Storage Devices 540
Chapter 12 File Management 521
12.1 Overview 552
12.2 File Organization and Access 558
12.3 File Directories 562
12.4 File Sharing 567
12.5 Record Blocking 568
12.6 Secondary Storage Management 570
12.7 File System Security 578
12.8 UNIX File Manageineni 580
12.9 Linux File Management 587
12.10 Windows Vista File Svsteni 591
12.11 Summary 597
12.12 Recommended Reading 597
12.13 Key Terms, Review Questions, and Problems 598
PART SIX EMBEDDED SYSTEMS 601
Chapter 13 Embedded Operating Systems 602
13.1 Embedded Systems 603
13.2 Characteristics of Embedded Operating Systems 605
13.3 eCOS 607
13.4 TinyOS 622
13.5 Recommended Reading and Web Sites 630
13.6 Key Terms, Review Questions, and Problems 631
PART SEVEN SECURITY 634
Chapter 14 Computer Security Threats 635
14.1 Computer Security Concepts 636
14.2 Threats, Attacks, and Assets 638
14.3 Intruders 643
14.4 Malicious Software Overview 647
14.5 Viruses, Worms, and Dots 651
14.6 Rootkits 661
14.7 Recommended Readings and Web Sites 663
14.8 Key Terms, Review Questions, and Problems 664
Chapter 15 Computer Security Techniques 667
15.1 Aiichentication 668
15.2 Access Control 675
15.3 Intrusion Detection 680
15.4 Mcilware Defense 686
15.5 Dealing with Buffer Overflow Attacks 692
15.6 \\ i ikIi)\\^\'ini.i Si.\ unt\
15.7 Recommended Readings and Web Sites 701
15.8 Key Terms, Review Questions, and Problems 703
PART EIGHT DISTRIBUTED SYSTEMS 707
Chapter 16 Distributed Processing, Client/Server, and Clusters 710
16.1 Client/Server Computing 711
16.2 Distributed Message Passing 722
16.3 Remote Procedure Calls 724
16.4 Clusters 728
16.5 WindowsVista Cluster Server 733
16.6 Sun Cluster 735
16.7 .ukI Linux Clusters 7.>S
16.8 Summary 740
16.9 Recommended Reading 740
16.10 Key Terms, Review Questions, and Problems 742

9788131725283 (pb)


Operating Systems--Systems programs

005.43 / STA/O