操作係統――精髓與設計原理(第八版)(英文版) [Operating Systems: Internals and Design Principles]

操作係統――精髓與設計原理(第八版)(英文版) [Operating Systems: Internals and Design Principles] pdf epub mobi txt 电子书 下载 2025

[美] William,Stallings(威廉?斯托林斯) 著,William,Stallings(威廉?斯托林斯) 譯
圖書標籤:
  • 操作係統
  • 計算機科學
  • 操作係統原理
  • 係統編程
  • 計算機體係結構
  • 並發
  • 進程管理
  • 內存管理
  • 文件係統
  • 虛擬化
想要找书就要到 求知書站
立刻按 ctrl+D收藏本页
你会得到大惊喜!!
出版社: 电子工业出版社
ISBN:9787121317811
版次:8
商品编码:12118709
包装:平装
丛书名: 国外计算机科学教材系列
外文名称:Operating Systems: Internals and Design Principles
开本:16开
出版时间:2017-06-01
用纸:胶版纸
页数:784

具体描述

編輯推薦

適讀人群 :本書可作為高等學校計算機科學與技術專業操作係統課程的教材,也可供其他專業學生參考。

?Windows 8:詳細介紹瞭Windows 8內核的各種關鍵技術。

?Android操作係統:詳細介紹瞭Android移動平颱的限製和運行環境。

?嵌入式Linux:詳細介紹瞭嵌入式Linux的關鍵要素。

?虛擬機:新增瞭虛擬機操作係統設計問題的一章。

?多核設計問題:增加瞭關於操作係統設計問題的討論。

?I/O標準化:更新瞭相應的接口內容。

?存儲硬件:更新瞭存儲硬件部分,包含瞭固態硬盤驅動器。

?容錯:新增瞭介紹容錯機製的一節。


內容簡介

本書既是關於操作係統概念、結構和機製的教材,目的是盡可能清楚和全麵地展示現代操作係統的本質和特點;也是講解操作係統的經典教材,不僅係統地講述瞭操作係統的基本概念、原理和方法,而且以當代*流行的操作係統Windows 8、UNIX、Android、Linux為例,展現瞭當代操作係統的本質和特點。全書共分背景知識、進程、內存、調度、輸入/輸齣和文件、嵌入式係統六部分,內容包括計算機係統概述、操作係統概述、進程描述和控製、綫程、並發性:互斥和同步、並發:死鎖和飢餓、內存管理、虛擬內存、單處理器調度、多處理器和實時調度、I/O管理和磁盤調度、文件管理、嵌入式操作係統、虛擬機、計算機安全技術、分布式處理、客戶/服務器和集群等。此外,本書配套網站提供瞭及時、生動的材料。

作者簡介

  William Stallings:美國聖母大學電子工程學士,麻省理工學院計算機科學博士,《密碼術》期刊編委。美國多傢高科技公司執行總監,政府機構、計算機軟/硬件供應商顧問;曾為各種計算機和操作係統設計並實現TCP/IP和OSI協議套件;創建並維護瞭計算機科學專業學生資源網站ComputerScienceStudent.com。齣版圖書17種,內容涉及計算機安全、計算機網絡和計算機係統結構等;在《IEEE進展》《ACM計算評論》和《密碼術》等雜誌上發錶文章多篇;先後12次獲美國年度*佳計算機科學教科書奬和學術作者協會奬。

目錄

Online Resources
VideoNotes
Preface
About the Author

Chapter 0 Guide for Readers and Instructors 1
0.1 Outline of this Book 2
0.2 Example Systems 2
0.3 A Roadmap for Readers and Instructors 3
0.4 Internet and Web Resources 4

Part 1 Background 7

Chapter 1 Computer System Overview 7
1.1 Basic Elements 8
1.2 Evolution of the Microprocessor 10
1.3 Instruction Execution 10
1.4 Interrupts 13
1.5 The Memory Hierarchy 24
1.6 Cache Memory 27
1.7 Direct Memory Access 31
1.8 Multiprocessor and Multicore Organization 32
1.9 Recommended Reading 36
1.10 Key Terms, Review Questions, and Problems 36
1A Performance Characteristics of Two-Level Memories 39

Chapter 2 Operating System Overview 46
2.1 Operating System Objectives and Functions 47
2.2 The Evolution of Operating Systems 52
2.3 Major Achievements 61
2.4 Developments Leading to Modern Operating Systems 70
2.5 Fault Tolerance 73
2.6 OS Design Considerations for Multiprocessor and Multicore 76
2.7 Microsoft Windows Overview 79
2.8 Traditional UNIX Systems 86
2.9 Modern UNIX Systems 89
2.10 Linux 91
2.11 Android 96
2.12 Recommended Reading and Animations 102
2.13 Key Terms, Review Questions, and Problems 103

Part 2 Processes 105

Chapter 3 Process Description and Control 105
3.1 What Is a Process? 107
3.2 Process States 109
3.3 Process Description 124
3.4 Process Control 133
3.5 Execution of the Operating System 139
3.6 UNIX SVR4 Process Management 142
3.7 Summary 147
3.8 Recommended Reading and Animations 147
3.9 Key Terms, Review Questions, and Problems 148

Chapter 4 Threads 152
4.1 Processes and Threads 153
4.2 Types of Threads 159
4.3 Multicore and Multithreading 166
4.4 Windows 8 Process and Thread Management 171
4.5 Solaris Thread and SMP Management 178
4.6 Linux Process and Thread Management 182
4.7 Android Process and Thread Management 186
4.8 Mac OS X Grand Central Dispatch 190
4.9 Summary 193
4.10 Recommended Reading 193
4.11 Key Terms, Review Questions, and Problems 194

Chapter 5 Concurrency: Mutual Exclusion and Synchronization 199
5.1 Principles of Concurrency 202
5.2 Mutual Exclusion: Hardware Support 210
5.3 Semaphores 214
5.4 Monitors 227
5.5 Message Passing 233
5.6 Readers/Writers Problem 240
5.7 Summary 244
5.8 Recommended Reading and Animations 245
5.9 Key Terms, Review Questions, and Problems 246

Chapter 6 Concurrency: Deadlock and Starvation 259
6.1 Principles of Deadlock 260
6.2 Deadlock Prevention 269
6.3 Deadlock Avoidance 271
6.4 Deadlock Detection 277
6.5 An Integrated Deadlock Strategy 279
6.6 Dining Philosophers Problem 280
6.7 UNIX Concurrency Mechanisms 282
6.8 Linux Kernel Concurrency Mechanisms 286
6.9 Solaris Thread Synchronization Primitives 293
6.10 Windows 7 Concurrency Mechanisms 295
6.11 Android Interprocess Communication 299
6.12 Summary 300
6.13 Recommended Reading and Animations 301
6.14 Key Terms, Review Questions, and Problems 302

Part 3 Memory 309

Chapter 7 Memory Management 309
7.1 Memory Management Requirements 310
7.2 Memory Partitioning 314
7.3 Paging 325
7.4 Segmentation 328
7.5 Summary 330
7.6 Recommended Reading and Animations 330
7.7 Key Terms, Review Questions, and Problems 330
7A Loading and Linking 333

Chapter 8 Virtual Memory 340
8.1 Hardware and Control Structures 341
8.2 Operating System Software 358
8.3 UNIX and Solaris Memory Management 377
8.4 Linux Memory Management 383
8.5 Windows Memory Management 386
8.6 Android Memory Management 389
8.7 Summary 389
8.8 Recommended Reading and Animations 390
8.9 Key Terms, Review Questions, and Problems 391

Part 4 Scheduling 397

Chapter 9 Uniprocessor Scheduling 397
9.1 Types of Processor Scheduling 398
9.2 Scheduling Algorithms 402
9.3 Traditional UNIX Scheduling 424
9.4 Summary 426
9.5 Recommended Reading and Animations 427
9.6 Key Terms, Review Questions, and Problems 428

Chapter 10 Multiprocessor, Multicore, and Real-Time Scheduling 432
10.1 Multiprocessor and Multicore Scheduling 433
10.2 Real-Time Scheduling 446
10.3 Linux Scheduling 461
10.4 UNIX SVR4 Scheduling 465
10.5 UNIX FreeBSD Scheduling 466
10.6 Windows Scheduling 470
10.7 Summary 472
10.8 Recommended Reading 473
10.9 Key Terms, Review Questions, and Problems 473

Part 5 Input/Output and Files 477

Chapter 11 I/O Management and Disk Scheduling 477
11.1 I/O Devices 478
11.2 Organization of the I/O Function 480
11.3 Operating System Design Issues 483
11.4 I/O Buffering 486
11.5 Disk Scheduling 489
11.6 RAID 496
11.7 Disk Cache 505
11.8 UNIX SVR4 I/O 509
11.9 Linux I/O 512
11.10 Windows I/O 515
11.11 Summary 517
11.12 Recommended Reading and Animations 518
11.13 Key Terms, Review Questions, and Problems 519

Chapter 12 File Management 522
12.1 Overview 523
12.2 File Organization and Access 529
12.3 B-Trees 533
12.4 File Directories 536
12.5 File Sharing 541
12.6 Record Blocking 542
12.7 Secondary Storage Management 544
12.8 UNIX File Management 552
12.9 Linux Virtual File System 557
12.10 Windows File System 561
12.11 Android File Management 566
12.12 Summary 567
12.13 Recommended Reading 568
12.14 Key Terms, Review Questions, and Problems 568

Part 6 Embedded Systems 571

Chapter 13 Embedded Operating Systems 571
13.1 Embedded Systems 572
13.2 Characteristics of Embedded Operating Systems 573
13.3 Embedded Linux 576
13.4 TinyOS 577
13.5 Recommended Reading 587
13.6 Key Terms, Review Questions, and Problems 587

Chapter 14 Virtual Machines 590
14.1 Approaches to Virtualization 593
14.2 Processor Issues 596
14.3 Memory Management 598
14.4 I/O Management 600
14.5 VMware ESXi 602
14.6 Microsoft Hyper-V and Xen Variants 604
14.7 Java VM 606
14.8 Linux VServer Virtual Machine Architecture 606
14.9 Android Virtual Machine 609
14.10 Summary 611
14.11 Recommended Reading 612
14.12 Key Terms, Review Questions, and Problems 613

Chapter 15 Operating System Security 614
15.1 Intruders and Malicious Software 615
15.2 Buffer Overflow 619
15.3 Access Control 627
15.4 UNIX Access Control 635
15.5 Operating Systems Hardening 638
15.6 Security Maintenance 642
15.7 Windows Security 643
15.8 Summary 648
15.9 Recommended Reading 649
15.10 Key Terms, Review Questions, and Problems 649

Chapter 16 Distributed Processing, Client/Server, and Clusters 652
16.1 Client/Server Computing 653
16.2 Distributed Message Passing 664
16.3 Remote Procedure Calls 667
16.4 Clusters 671
16.5 Windows Cluster Server 676
16.6 Beowulf and Linux Clusters 678
16.7 Summary 680
16.8 Recommended Reading 681
16.9 Key Terms, Review Questions, and Problems 682

Appendices
Appendix A Topics in Concurrency A-1
Appendix B Programming and Operating System Projects B-1
References 685
Credits 699

Online Chapters and Appendices1
Chapter 17 Network Protocols
17.1 The Need for a Protocol Architecture 17-4
17.2 The TCP/IP Protocol Architecture 17-9
17.3 Sockets 17-19
17.4 Linux Networking 17-26
17.5 Summary 17-29
17.6 Recommended Reading and Web Sites 17-30
17.7 Key Terms, Review Questions, and Problems 17-31
17A The Trivial File Transfer Protocol 17-42
Chapter 18 Distributed Process Management
18.1 Process Migration 18-2
18.2 Distributed Global States 18-14
18.3 Distributed Mutual Exclusion 18-22
18.4 Distributed Deadlock 18-41
18.5 Summary 18-59
18.6 Recommended Reading 18-60
18.7 Key Terms, Review Questions, and Problems 18-61
Chapter 19 Overview of Probability and Stochastic Processes
19.1 Probability 19-2
19.2 Random Variables 19-10
19.3 Elementary Concepts of Stochastic Processes 19-19
19.4 Recommended Reading and Web Sites 19-34
19.5 Key Terms, Review Questions, and Problems 19-35
Chapter 20 Queueing Analysis
20.1 How Queues Behave―A Simple Example 20-3
20.2 Why Queuing Analysis? 20-8
20.3 Queueing Models 20-12
20.4 Single-Server Queues 20-24
20.5 Multiserver Queues 20-28
20.6 Examples 20-30
20.7 Queues with Priorities 20-38
20.8 Networks of Queues 20-40
20.9 Other Queueing Models 20-46
20.10 Estimating Model Parameters 20-48
20.11 Recommended Reading and Web Sites 20-53
20.12 Key Terms, Review Questions, and Problems 20-54
Programming Project One Developing a Shell
Programming Project Two The HOST Dispatcher Shell
Appendix C Topics in Computer Organization C-1
Appendix D Object-Oriented Design D-1
Appendix E Amdahl’s Law E-1
Appendix F Hash Tables F-1
Appendix G Response Time G-1
Appendix H Queueing System Concepts H-1
Appendix I The Complexity of Algorithms I-1
Appendix J Disk Storage Devices J-1
Appendix K Cryptographic Algorithms K-1
Appendix L Standards Organizations L-1
Appendix M Sockets: A Programmer’s Introduction M-1
Appendix N The International Reference Alphabet N-1
Appendix O BACI: The Ben-Ari Concurrent Programming System O-1
Appendix P Procedure Control P-1
Appendix Q Ecos Q-1
Glossary

VideoNotes
Locations of VideoNotes
http://www.pearsonhighered.com/stallings
Chapter 5 Concurrency: Mutual Exclusion and Synchronization 199
5.1 Illustration of Mutual Exclusion 208
5.2 Hardware Support for Mutual Exclusion 212
5.3 A Definition of Semaphore Primitives 216
5.4 A Definition of Binary Semaphore Primitives 217
5.6 Mutual Exclusion Using Semaphores 219
5.9 An Incorrect Solution to the Infinite-Buffer Producer/Consumer Problem
Using Binary Semaphores 222
5.10 A Correct Solution to the Infinite-Buffer Producer/Consumer Problem
Using Binary Semaphores 224
5.11 A Solution to the Infinite-Buffer Producer/Consumer Problem
Using Semaphores 225
5.13 A Solution to the Bounded-Buffer Producer/Consumer Problem
Using Semaphores 226
5.14 Two Possible Implementations of Semaphores 227
5.16 A Solution to the Bounded-Buffer Producer/Consumer Problem
Using a Monitor 230
5.17 Bounded-Buffer Monitor Code for Mesa Monitor 232
5.20 Mutual Exclusion Using Messages 238
5.21 A Solution to the Bounded-Buffer Producer/Consumer Problem
Using Messages 239
5.22 A Solution to the Readers/Writers Problem Using Semaphores:
Readers Have Priority 241
5.23 A Solution to the Readers/Writers Problem Using Semaphores:
Writers Have Priority 243
5.24 A Solution to the Readers/Writers Problem Using Message Passing 244
5.25 An Application of Coroutines 248
Chapter 6 Concurrency: Deadlock and Starvation 259
6.9 Deadlock Avoidance Logic 276
6.12 A First Solution to the Dining Philosophers Problem 281
6.13 A Second Solution to the Dining Philosophers Problem 282
6.14 A Solution to the Dining Philosophers Problem Using a Monitor 283
6.18 Another Solution to the Dining Philosophers Problem Using a Monitor 307
Chapter 13 Embedded Operating Systems 571
13.6 Condition Variable Example Code 589
Chapter 18 Distributed Process Management
18.11 Token.Passing Algorithm (for Process Pi) 40
18.14 A Distributed Deadlock Detection Algorithm 50
Appednix A Topics in Concurrency A-1
A.1 Mutual Exclusion Attempts A-3
A.2 Dekker’s Algorithm A-6
A.3 Peterson’s Algorithm for Two Processes A-7
A.5 An Unfair Barbershop A-17
A.6 A Fair Barbershop A-20

前言/序言

Preface

Since the seventh edition of this book was published, the field has seen continued innovations and improvements. In this new edition, I try to capture these changes while maintaining a broad and comprehensive coverage of the entire field. To begin the process of revision, the seventh edition of this book was extensively reviewed by a number of professors who teach the subject and by professionals working in the field. The result is that, in many places, the narrative has been clarified and tightened, and illustrations have been improved.

Beyond these refinements to improve pedagogy and user friendliness, the technical content of the book has been updated throughout, to reflect the ongoing changes in this exciting field, and the instructor and student support has been expanded. The most noteworthy changes are as follows:

? Windows 8: Windows 8 is Microsoft’s latest OS offering for PCs, workstations, and servers, which includes a number of changes to the internal architecture.

The new edition provides details on Windows 8 internals in all of the key technology areas covered in this book, including process/thread management, scheduling, memory management, security, file systems, and I/O.

? Android operating system: Android is the fastest growing mobile platform. The real-world constraints and operating environment of mobile devices are quite different from traditional desktop or server computers. It is important for students to learn this new environment.

? Embedded Linux: The use of a minimal version of Linux for embedded systems has grown in popularity. This new edition provides an overview of the key elements of the embedded Linux approach.

? Virtual machines: Server virtualization and other forms of virtual machines are becoming increasingly widespread. A new chapter deals with the operating system design issues for virtual machines.

? Multicore design issues: The dominant computer architecture is now multicore. This raises new OS design issues that are addressed in this new edition.

? I/O standards: The book has been updated to reflect the latest developments, including Thunderbolt.

? Storage hardware: The discussion of storage hardware has been updated and now includes discussion of solid-state drives.

? Fault tolerance: The ACM/IEEE Computer Science Curricula 2013 lists fault tolerance as one of the core topics for an OS course. A new section provides an overview of fault tolerance. Objectives

This book is about the concepts, structure, and mechanisms of operating systems. Its purpose is to present, as clearly and completely as possible, the nature and characteristics of modern-day operating systems.

This task is challenging for several reasons. First, there is a tremendous range and variety of computer systems for which operating systems are designed. These include embedded systems, smart phones, single-user workstations and personal computers, medium-sized shared systems, large mainframe and supercomputers, and specialized machines such as real-time systems. The variety is not just in the capacity and speed of machines, but in applications and system support requirements.

Second, the rapid pace of change that has always characterized computer systems continues with no letup. A number of key areas in operating system design are of recent origin, and research into these and other new areas continues.

In spite of this variety and pace of change, certain fundamental concepts apply consistently throughout. To be sure, the application of these concepts depends on the current state of technology and the particular application requirements. The intent of this book is to provide a thorough discussion of the fundamentals of operating system design and to relate these to contemporary design issues and to current directions in the development of operating systems. Example Systems

This text is intended to acquaint the reader with the design principles and implementation issues of contemporary operating systems. Accordingly, a purely conceptual or theoretical treatment would be inadequate. To illustrate the concepts and



用户评价

评分

评分

评分

评分

评分

评分

评分

评分

评分

相关图书

本站所有內容均為互聯網搜索引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 tushu.tinynews.org All Rights Reserved. 求知書站 版权所有