操作系统 精髓与设计原理 第5版PDF电子书下载
- 电子书积分:18 积分如何计算积分?
- 作 者:(美)(斯托林斯)William Stallings著;陈渝译
- 出 版 社:北京:电子工业出版社
- 出版年份:2006
- ISBN:712102196X
- 页数:612 页
第0章 读者指南 1
0.1 本书概述 1
0.2 主题顺序 1
0.3 因特网和Web资源 2
第一部分 背景 5
第1章 计算机系统概述 6
1.1 基本构成 6
1.2 处理器寄存器 6
1.2.1 用户可见寄存器 7
1.2.2 控制和状态寄存器 8
1.3 指令的执行 9
1.3.1 取指令和执行指令 9
1.3.2 I/O函数 11
1.4 中断 11
1.4.1 中断和指令周期 13
1.4.2 中断处理 14
1.4.3 多个中断 16
1.4.4 多道程序设计 18
1.5 存储器的层次结构 19
1.6 高速缓冲存储器 21
1.6.1 动机 22
1.6.2 高速缓冲存储器原理 22
1.6.3 高速缓冲存储器设计 24
1.7 I/O通信技术 24
1.7.1 可编程I/O 25
1.7.2 中断驱动I/O 25
1.7.3 直接存储器访问 26
1.8 推荐读物和网站 27
1.9 关键术语、复习题和习题 27
附录1A 两级存储器的性能特征 29
附录1B 过程控制 34
第2章 操作系统概述 38
2.1 操作系统的目标和功能 38
2.1.1 作为用户/计算机接口的操作系统 38
2.1.2 作为资源管理器的操作系统 39
2.1.3 操作系统的易扩展性 40
2.2 操作系统的发展 41
2.2.1 串行处理 41
2.2.2 简单批处理系统 42
2.2.3 多道程序批处理系统 44
2.2.4 分时系统 46
2.3 主要的成就 48
2.3.1 进程 48
2.3.2 内存管理 51
2.3.3 信息保护和安全 52
2.3.4 调度和资源管理 53
2.3.5 系统结构 54
2.4 现代操作系统的特征 57
2.5 Microsoft Windows概述 59
2.5.1 历史 59
2.5.2 单用户多任务 60
2.5.3 体系结构 61
2.5.4 客户/服务器模型 64
2.5.5 线程和SMP 65
2.5.6 Windows对象 65
2.6 传统的UNIX系统 66
2.6.1 历史 66
2.6.2 描述 67
2.7 现代UNIX系统 68
2.7.1 系统V版本4(简称SVR4) 68
2.8.1 历史 69
2.8 Linux操作系统 69
2.7.3 4.4BSD 69
2.7.2 Solaris 9 69
2.8.2 模块结构 70
2.8.3 内核组件 72
2.9 推荐读物和网站 74
2.10 关键术语、复习题和习题 75
第二部分 进程 77
第3章 进程描述和控制 79
3.1 什么是进程 79
3.1.1 背景 79
3.2 进程和进程控制块 80
3.3 进程状态 81
3.3.1 两状态进程模型 83
3.3.2 进程的创建和终止 83
3.3.3 五状态模型 84
3.3.4 被挂起的进程 87
3.4 进程描述 92
3.4.1 操作系统的控制结构 92
3.4.2 进程控制结构 93
3.5 进程控制 98
3.5.1 执行模式 98
3.5.2 进程创建 99
3.5.3 进程切换 99
3.5.4 操作系统的执行 101
3.6 UNIX SVR4进程管理 103
3.6.1 进程状态 103
3.6.2 进程描述 105
3.6.3 进程控制 106
3.7 小结 107
3.8 推荐读物 107
3.9 关键术语、复习题和习题 107
编程项目1:开发一个shell程序 110
第4章 线程、对称多处理和微内核 112
4.1 进程和线程 112
4.1.1 多线程 112
4.1.2 线程功能特性 115
4.1.3 例子——Adobe PageMaker 116
4.1.4 用户级和内核级线程 118
4.1.5 其他方案 121
4.2 对称多处理 122
4.2.1 SMP系统的体系结构 123
4.2.2 SMP系统的组织结构 124
4.2.3 多处理器操作系统的设计思考 125
4.3 微内核 125
4.3.1 微内核体系结构 125
4.3.2 微内核组织结构的优点 126
4.3.3 微内核性能 127
4.3.4 微内核设计 128
4.4 Windows线程和SMP管理 130
4.4.1 进程对象和线程对象 131
4.4.2 多线程 132
4.4.3 线程状态 132
4.4.4 对OS子系统的支持 133
4.4.5 对称多处理的支持 134
4.5 Solaris线程和SMP管理 134
4.5.1 多线程体系结构 134
4.5.2 动机 135
4.5.3 进程结构 136
4.5.4 线程的执行 137
4.5.5 把中断当做线程 138
4.6 Linux的进程和线程管理 138
4.6.1 Linux任务 138
4.6.2 Linux线程 140
4.8 推荐读物 141
4.7 小结 141
4.9 关键术语、复习题和习题 142
第5章 并发性:互斥和同步 144
5.1 并发的原理 145
5.1.1 一个简单的例子 145
5.1.2 竞争条件 147
5.1.3 操作系统关注的问题 147
5.1.4 进程的交互 148
5.1.5 互斥的要求 150
5.2 互斥:硬件的支持 151
5.2.1 中断禁用 151
5.2.2 专用机器指令 151
5.3 信号量 154
5.3.1 互斥 156
5.3.2 生产者/消费者问题 158
5.3.3 信号量的实现 162
5.4.1 使用信号的管程 163
5.4 管程 163
5.4.2 使用通知和广播的管程 166
5.5 消息传递 168
5.5.1 同步 168
5.5.2 寻址 169
5.5.3 消息格式 170
5.5.4 排队原则 171
5.5.5 互斥 171
5.6 读者-写者问题 172
5.6.1 读进程具有优先权 173
5.6.2 写进程具有优先权 174
5.7 小结 176
5.8 推荐读物 176
5.9 关键术语、复习题和习题 177
6.1 死锁原理 183
第6章 并发性:死锁和饥饿 183
6.1.1 可重用资源 185
6.1.2 可消费资源 187
6.1.3 资源分配图 187
6.1.4 死锁的条件 188
6.2 死锁预防 189
6.2.1 互斥 189
6.2.2 占有且等待 190
6.2.3 非抢占 190
6.2.4 循环等待 190
6.3 死锁避免 190
6.3.1 进程启动拒绝 191
6.3.2 资源分配拒绝 191
6.4 死锁检测 195
6.4.1 死锁检测算法 195
6.5 一种综合的死锁策略 196
6.4.2 恢复 196
6.6 哲学家就餐问题 197
6.6.1 使用信号量解决方案 198
6.6.2 使用管程解决方案 198
6.7 UNIX的并发机制 200
6.7.1 管道 200
6.7.2 消息 200
6.7.3 共享存储区 200
6.7.4 信号量 200
6.7.5 信号 201
6.8 Linux内核并发机制 202
6.8.1 原子操作 202
6.8.2 自旋锁 203
6.8.3 信号量 204
6.8.4 屏障 206
6.9 Solaris线程同步原语 207
6.9.1 互斥锁 207
6.9.2 信号量 208
6.9.3 多读者单写者锁 208
6.9.4 条件变量 208
6.10 Windows并发机制 209
6.10.1 等待函数 209
6.10.2 同步对象 209
6.10.3 临界区对象 210
6.11 小结 210
6.12 推荐读物 211
6.13 关键术语、复习题和习题 211
第三部分 内存 217
7.1.1 重定位 218
7.1 内存管理的需求 218
第7章 内存管理 218
7.1.2 保护 219
7.1.3 共享 219
7.1.4 逻辑组织 219
7.1.5 物理组织 220
7.2 内存分区 220
7.2.1 固定分区 220
7.2.2 动态分区 223
7.2.3 伙伴系统 225
7.2.4 重定位 227
7.3 分页 228
7.4 分段 231
7.5 小结 232
7.6 推荐读物 232
7.7 关键术语、复习题和习题 233
附录7A 加载和链接 235
第8章 虚拟内存 239
8.1 硬件和控制结构 239
8.1.1 局部性和虚拟内存 240
8.1.2 分页 241
8.1.3 分段 250
8.1.4 分段和分页的结合 251
8.1.5 保护和共享 252
8.2 操作系统软件 253
8.2.1 读取策略 253
8.2.2 放置策略 254
8.2.3 替换策略 254
8.2.4 驻留集管理 260
8.2.5 清除策略 264
8.2.6 加载控制 265
8.3.1 分页系统 266
8.3 UNIX和Solaris内存管理 266
8.3.2 内核内存分配器 269
8.4 Linux内存管理 270
8.4.1 Linux虚拟内存 270
8.4.2 内核内存分配 271
8.5 Windows内存管理 272
8.5.1 Windows虚拟地址映射 272
8.5.2 Windows分页 273
8.6 小结 273
8.7 推荐读物和网站 274
8.8 关键术语、复习题和习题 275
附录8A 哈希表 278
第四部分 调度 281
第9章 单处理器调度 282
9.1 处理器调度的类型 282
9.1.1 长程调度 283
9.1.2 中程调度 284
9.2 调度算法 285
9.2.1 短程调度准则 285
9.1.3 短程调度 285
9.2.2 优先级的使用 286
9.2.3 选择调度策略 286
9.2.4 性能比较 296
9.2.5 公平共享调度 299
9.3 传统的UNIX调度 302
9.4 小结 303
9.5 推荐读物 304
9.6 关键术语、复习题和习题 304
附录9A 响应时间 307
附录9B 排队系统 308
编程项目2:主机调度shell程序 312
10.1.1 粒度 317
第10章 多处理器和实时调度 317
10.1 多处理器调度 317
10.1.2 设计问题 318
10.1.3 进程调度 320
10.1.4 线程调度 320
10.2 实时调度 325
10.2.1 背景 325
10.2.2 实时操作系统的特点 326
10.2.3 实时调度 329
10.2.4 时限调度 329
10.2.5 速率单调调度 332
10.2.6 优先级逆转 335
10.3 Linux调度 337
10.3.1 实时调度 337
10.3.2 非实时调度 338
10.4 UNIX SVR4调度 340
10.5.1 进程和线程优先级 341
10.5 Windows调度 341
10.5.2 多处理器调度 342
10.6 小结 343
10.7 推荐读物 343
10.8 关键术语、复习题和习题 344
第五部分 输入/输出和文件 347
第11章 I/O管理和磁盘调度 348
11.1 I/O设备 348
11.2 I/O功能的组织 349
11.2.1 I/O功能的发展 350
11.2.2 直接存储器访问 350
11.3.1 设计目标 352
11.3.2 I/O功能的逻辑结构 352
11.3 操作系统设计问题 352
11.4 I/O缓冲 354
11.4.1 单缓冲区 354
11.4.2 双缓冲 356
11.4.3 循环缓冲 356
11.4.4 缓冲的用途 356
11.5 磁盘调度 356
11.5.1 磁盘性能参数 357
11.5.2 磁盘调度策略 359
11.6 RAID 362
11.6.1 RAID第0层 365
11.6.2 RAID第1层 365
11.6.3 RAID第2层 366
11.6.4 RAID第3层 366
11.6.5 RAID第4层 367
11.6.7 RAID第6层 368
11.7 磁盘高速缓冲 368
11.6.6 RAID第5层 368
11.7.1 设计考虑 369
11.7.2 性能考虑 370
11.8 UNIX SVR4 I/O 370
11.8.1 缓冲区高速缓存 372
11.8.2 字符队列 373
11.8.2 无缓冲I/O 373
11.8.3 UNIX设备 373
11.9 LINUX I/O 374
11.9.1 磁盘调度 374
11.9.2 Linux页面缓存 376
11.10 Windows I/O 376
11.10.1 基本I/O模块 376
11.11 小结 377
11.10.3 软件RAID 377
11.10.2 异步I/O和同步I/O 377
11.12 推荐读物和网站 378
11.13 关键术语、复习题和习题 379
附录11A 磁盘存储设备 381
第12章 文件管理 387
12.1 概述 387
12.1.1 文件和文件系统 387
12.1.2 文件结构 388
12.1.3 文件管理系统 389
12.2 文件组织和访问 391
12.2.1 堆 393
12.2.2 顺序文件 393
12.2.3 索引顺序文件 394
12.2.4 索引文件 394
12.3.2 结构 395
12.3.1 内容 395
12.3 文件目录 395
12.2.5 直接文件或散列文件 395
12.3.3 命名 397
12.4 文件共享 398
12.4.1 访问权限 398
12.4.2 同时访问 399
12.5 记录组块 399
12.6 二级存储管理 401
12.6.1 文件分配 401
12.6.2 空闲空间的管理 404
12.6.3 可靠性 406
12.7 UNIX文件管理 407
12.7.1 索引节点 407
12.7.2 文件分配 408
12.7.3 目录 409
12.8 Linux虚拟文件系统 410
12.7.4 卷结构 410
12.8.1 超级块对象 412
12.8.2 索引节点对象 413
12.8.3 目录项对象 413
12.8.4 文件对象 413
12.9 Windows文件系统 413
12.9.1 NTFS的重要特征 413
12.9.2 NTFS卷和文件结构 414
12.9.3 可恢复性 416
12.10 小结 417
12.11 推荐读物 417
12.12 关键术语、复习题和习题 418
第六部分 分布式系统和安全 421
第13章 网络 424
13.1 为什么需要网络体系结构 425
13.2 TCP/IP协议体系结构 426
13.2.2 TCP与UDP 427
13.2.1 TCP/IP层 427
13.2.3 IP和IPv6 428
13.2.3 TCP/IP操作过程 429
13.2.4 TCP/IP应用程序 431
13.3 套接字 432
13.3.1 套接字 432
13.3.2 套接字接口调用 433
13.4 Linux网络 434
13.4.1 发送数据 435
13.4.2 接收数据 436
13.5 小结 436
13.6 推荐读物和网站 437
13.7 关键术语、复习题和习题 437
附录13A 简单文件传输协议 439
14.1 客户/服务器计算模型 443
14.1.1 什么是客户/服务器计算模型 443
第14章 分布式处理、客户/服务器和集群 443
14.1.2 客户/服务模型的应用 444
14.1.3 中间件 449
14.2 分布式消息传递 451
14.2.1 可靠性与不可靠性 452
14.2.2 阻塞与无阻塞 453
14.3 远程过程调用 453
14.3.2 参数表示 454
14.3.1 参数传递 454
14.3.3 客户/服务器绑定 455
14.3.4 同步和异步 455
14.3.5 面向对象机制 455
14.4 集群 456
14.4.1 集群的配置 456
14.4.2 操作系统的设计问题 458
14.4.3 集群计算机的体系结构 459
14.5 Windows集群服务器 460
14.4.4 集群与SMP 460
14.6 Sun集群 461
14.6.1 对象和通信支持 462
14.6.2 进程管理 462
14.6.3 网络连接 462
14.6.4 全局文件系统 463
14.7 Beowulf和Linux集群 464
14.7.1 Beowulf特征 464
14.7.2 Beowulf软件 465
14.8 小结 465
14.9 推荐读物和网站 466
14.10 关键术语、复习题和习题 467
15.1.1 动机 469
15.1.2 进程迁移机制 469
第15章 分布式进程管理 469
15.1 进程迁移 469
15.1.3 迁移协商 472
15.1.4 移出 473
15.1.5 抢占式转移和非抢占式转移 474
15.2 分布式全局状态 474
15.2.1 全局状态和分布式快照 474
15.2.2 分布式快照算法 476
15.3.1 分布式互斥概念 478
15.3 分布式互斥 478
15.3.2 分布式系统中的事件排序 480
15.3.3 分布式队列 482
15.3.4 令牌传递方法 484
15.4 分布式死锁 486
15.4.1 资源分配中的死锁 486
15.4.2 消息通信中的死锁 490
15.6 推荐读物 493
15.5 小结 493
15.7 关键术语、复习题和习题 494
第16章 安全 495
16.1 安全威胁 495
16.1.1 威胁的类型 496
16.1.2 计算机系统资产 496
16.2 保护 500
16.2.1 内存的保护 501
16.2.2 面向用户的访问控制 501
16.2.3 面向数据的访问控制 502
16.3 入侵者 503
16.3.1 入侵技术 504
16.3.2 口令保护 505
16.3.3 口令选择策略 509
16.3.4 入侵检测 510
16.4.1 恶意程序 512
16.4 恶意软件 512
16.4.2 病毒的本质 515
16.4.3 病毒的类型 515
16.4.4 宏病毒 516
16.4.5 反病毒方法 517
16.4.6 电子邮件病毒 519
16.5 可信系统 519
16.5.1 特洛伊木马的防范 521
16.6 Windows安全 523
16.6.1 访问控制方案 523
16.6.2 访问令牌 523
16.6.3 安全描述符 524
16.7 小结 526
16.8 推荐读物和网站 527
16.9 关键术语、复习题和习题 528
附录16A 加密 530
A.1 互斥:软件方法 534
附录A 并发主题 534
A.2 竞争条件和信号量 538
A.3 理发店问题 543
A.4 习题 546
附录B 面向对象设计 548
B.1 动机 548
B.2 面向对象的概念 548
B.3 面向对象设计的优点 551
B.4 CORBA 551
B.5 推荐读物和网站 554
附录C 程序设计和操作系统项目 555
C.1 用于教学的操作系统项目 555
C.2 Nachos 555
C.4 程序设计项目 556
C.3 研究项目 556
C.5 阅读/报告作业 557
附录D OSP:一个操作系统项目环境 558
D.1 概述 558
D.2 OSP的创新 559
D.3 和其他操作系统课件的比较 559
附录E BACI:BEN-ARI并发程序设计系统 561
E.1 引言 561
E.2 BACI 561
E.3 BACI程序例子 563
E.4 BACI项目 567
E.5 BACI系统的增强 569
术语表 570
参考文献 577
索引 591
- 《管理信息系统习题集》郭晓军 2016
- 《药剂学实验操作技术》刘芳,高森主编 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《信息系统安全技术管理策略 信息安全经济学视角》赵柳榕著 2020
- 《设计十六日 国内外美术院校报考攻略》沈海泯著 2018
- 《计算机辅助平面设计》吴轶博主编 2019
- 《第一性原理方法及应用》李青坤著 2019
- 《计算机组成原理解题参考 第7版》张基温 2017
- 《高校转型发展系列教材 素描基础与设计》施猛责任编辑;(中国)魏伏一,徐红 2019
- 《景观艺术设计》林春水,马俊 2019
- 《SQL与关系数据库理论》(美)戴特(C.J.Date) 2019
- 《魔法销售台词》(美)埃尔默·惠勒著 2019
- 《看漫画学钢琴 技巧 3》高宁译;(日)川崎美雪 2019
- 《优势谈判 15周年经典版》(美)罗杰·道森 2018
- 《社会学与人类生活 社会问题解析 第11版》(美)James M. Henslin(詹姆斯·M. 汉斯林) 2019
- 《海明威书信集:1917-1961 下》(美)海明威(Ernest Hemingway)著;潘小松译 2019
- 《迁徙 默温自选诗集 上》(美)W.S.默温著;伽禾译 2020
- 《上帝的孤独者 下 托马斯·沃尔夫短篇小说集》(美)托马斯·沃尔夫著;刘积源译 2017
- 《巴黎永远没个完》(美)海明威著 2017
- 《莎士比亚戏剧精选集》(英)威廉·莎士比亚(William Shakespeare)著 2020
- 《电子测量与仪器》人力资源和社会保障部教材办公室组织编写 2009
- 《少儿电子琴入门教程 双色图解版》灌木文化 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《通信电子电路原理及仿真设计》叶建芳 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《电子应用技术项目教程 第3版》王彰云 2019
- 《中国十大出版家》王震,贺越明著 1991
- 《近代民营出版机构的英语函授教育 以“商务、中华、开明”函授学校为个案 1915年-1946年版》丁伟 2017