图书介绍
操作系统 精髓与设计原理 原书第6版PDF|Epub|txt|kindle电子书版本网盘下载
- (美)斯托林斯著 著
- 出版社: 北京:机械工业出版社
- ISBN:9787111304265
- 出版时间:2010
- 标注页数:553页
- 文件大小:142MB
- 文件页数:572页
- 主题词:操作系统-高等学校-教材
PDF下载
下载说明
操作系统 精髓与设计原理 原书第6版PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第0章 读者指南1
0.1 本书概述1
0.2 读者和教师的学习路线图1
0.3 Internet和Web资源2
第一部分 背景6
第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 中断和指令周期12
1.4.2 中断处理14
1.4.3 多个中断15
1.4.4 多道程序设计17
1.5 存储器的层次结构17
1.6 高速缓存20
1.6.1 动机20
1.6.2 高速缓存原理20
1.6.3 高速缓存设计21
1.7 I/O通信技术22
1.7.1 可编程I/O22
1.7.2 中断驱动I/O22
1.7.3 直接内存存取24
1.8 推荐读物和网站24
1.9 关键术语、复习题和习题25
附录1A 两级存储器的性能特征27
附录1B 过程控制30
第2章 操作系统概述33
2.1 操作系统的目标和功能33
2.1.1 作为用户/计算机接口的操作系统33
2.1.2 作为资源管理器的操作系统34
2.1.3 操作系统的易扩展性35
2.2 操作系统的发展35
2.2.1 串行处理35
2.2.2 简单批处理系统36
2.2.3 多道程序设计批处理系统38
2.2.4 分时系统40
2.3 主要的成就42
2.3.1 进程42
2.3.2 内存管理44
2.3.3 信息保护和安全46
2.3.4 调度和资源管理46
2.3.5 系统结构47
2.4 现代操作系统的特征49
2.5 微软的Windows概述51
2.5.1 历史51
2.5.2 单用户多任务53
2.5.3 体系结构53
2.5.4 客户/服务器模型56
2.5.5 线程和SMP57
2.5.6 Windows对象57
2.6 传统的UNIX系统58
2.6.1 历史58
2.6.2 描述59
2.7 现代UNIX系统60
2.7.1 系统V版本4(SVR4)60
2.7.2 BSD61
2.7.3 Solaris 1061
2.8 Linux操作系统61
2.8.1 历史62
2.8.2 模块结构63
2.8.3 内核组件64
2.9 推荐读物和网站67
2.10 关键术语、复习题和习题68
第二部分 进程73
第3章 进程描述和控制73
3.1 什么是进程73
3.1.1 背景73
3.1.2 进程和进程控制块74
3.2 进程状态75
3.2.1 两状态进程模型76
3.2.2 进程的创建和终止77
3.2.3 五状态模型78
3.2.4 被挂起的进程81
3.3 进程描述84
3.3.1 操作系统的控制结构85
3.3.2 进程控制结构86
3.4 进程控制90
3.4.1 执行模式90
3.4.2 进程创建91
3.4.3 进程切换92
3.5 操作系统的执行93
3.5.1 无进程的内核94
3.5.2 在用户进程中执行94
3.5.3 基于进程的操作系统95
3.6 安全问题95
3.6.1 系统访问威胁96
3.6.2 对抗措施96
3.7 UNIX SVR4进程管理98
3.7.1 进程状态98
3.7.2 进程描述99
3.7.3 进程控制101
3.8 小结102
3.9 推荐读物102
3.10 关键术语、复习题和习题102
编程项目1:开发一个shell程序105
第4章 线程、对称多处理(SMP)和微内核107
4.1 进程和线程107
4.1.1 多线程107
4.1.2 线程功能特性109
4.1.3 例子:Adobe PageMaker111
4.1.4 用户级和内核级线程112
4.1.5 其他方案115
4.2 对称多处理116
4.2.1 SMP体系结构116
4.2.2 SMP系统的组织结构117
4.2.3 多处理器操作系统的设计思考118
4.3 微内核119
4.3.1 微内核体系结构119
4.3.2 微内核组织结构的优点120
4.3.3 微内核性能121
4.3.4 微内核设计121
4.4 Windows线程和SMP管理122
4.4.1 进程对象和线程对象123
4.4.2 多线程125
4.4.3 线程状态125
4.4.4 对操作系统子系统的支持126
4.4.5 对称多处理的支持126
4.5 Solaris的线程和SMP管理127
4.5.1 多线程体系结构127
4.5.2 动机127
4.5.3 进程结构128
4.5.4 线程的执行129
4.5.5 把中断当做线程129
4.6 Linux的进程和线程管理130
4.6.1 Linux任务130
4.6.2 Linux线程131
4.7 小结132
4.8 推荐读物133
4.9 关键术语、复习题和习题133
第5章 并发性:互斥和同步138
5.1 并发的原理139
5.1.1 一个简单的例子139
5.1.2 竞争条件141
5.1.3 操作系统关注的问题141
5.1.4 进程的交互141
5.1.5 互斥的要求144
5.2 互斥:硬件的支持144
5.2.1 中断禁用144
5.2.2 专用机器指令145
5.3 信号量147
5.3.1 互斥150
5.3.2 生产者/消费者问题151
5.3.3 信号量的实现154
5.4 管程155
5.4.1 使用信号的管程155
5.4.2 使用通知和广播的管程158
5.5 消息传递159
5.5.1 同步160
5.5.2 寻址161
5.5.3 消息格式162
5.5.4 排队原则162
5.5.5 互斥162
5.6 读者-写者问题163
5.6.1 读者优先164
5.6.2 写者优先164
5.7 小结166
5.8 推荐读物167
5.9 关键术语、复习题和习题167
第6章 并发:死锁和饥饿178
6.1 死锁的原理178
6.1.1 可重用资源180
6.1.2 可消耗资源181
6.1.3 资源分配图182
6.1.4 死锁的条件183
6.2 死锁预防184
6.2.1 互斥184
6.2.2 占有且等待184
6.2.3 不可抢占184
6.2.4 循环等待184
6.3 死锁避免185
6.3.1 进程启动拒绝185
6.3.2 资源分配拒绝186
6.4 死锁检测189
6.4.1 死锁检测算法189
6.4.2 恢复190
6.5 一种综合的死锁策略190
6.6 哲学家就餐问题191
6.6.1 使用信号量解决方案191
6.6.2 使用管程解决方案192
6.7 UNIX的并发机制192
6.7.1 管道192
6.7.2 消息193
6.7.3 共享内存193
6.7.4 信号量194
6.7.5 信号194
6.8 Linux内核并发机制195
6.8.1 原子操作195
6.8.2 自旋锁196
6.8.3 信号量197
6.8.4 屏障199
6.9 Solaris线程同步原语199
6.9.1 互斥锁200
6.9.2 信号量200
6.9.3 多读者/单写者锁201
6.9.4 条件变量201
6.10 Windows并发机制201
6.10.1 等待函数201
6.10.2 分派器对象202
6.10.3 临界区203
6.10.4 轻量级读写锁和条件变量203
6.11 小结204
6.12 推荐读物204
6.13 关键术语、复习题和习题205
第三部分 内存210
第7章 内存管理210
7.1 内存管理的需求210
7.1.1 重定位210
7.1.2 保护211
7.1.3 共享211
7.1.4 逻辑组织211
7.1.5 物理组织211
7.2 内存分区212
7.2.1 固定分区212
7.2.2 动态分区214
7.2.3 伙伴系统216
7.2.4 重定位218
7.3 分页219
7.4 分段222
7.5 安全问题222
7.5.1 缓冲区溢出攻击222
7.5.2 预防缓冲区溢出225
7.6 小结225
7.7 推荐读物225
7.8 关键术语、复习题和习题225
附录7A 加载和链接228
第8章 虚拟内存232
8.1 硬件和控制结构232
8.1.1 局部性和虚拟内存233
8.1.2 分页235
8.1.3 分段242
8.1.4 段页式243
8.1.5 保护和共享244
8.2 操作系统软件244
8.2.1 读取策略245
8.2.2 放置策略246
8.2.3 置换策略246
8.2.4 驻留集管理251
8.2.5 清除策略255
8.2.6 加载控制255
8.3 UNIX和Solaris内存管理257
8.3.1 分页系统257
8.3.2 内核内存分配器259
8.4 Linux内存管理260
8.4.1 Linux虚拟内存260
8.4.2 内核内存分配261
8.5 Windows内存管理262
8.5.1 Windows虚拟地址映射263
8.5.2 Windows分页263
8.6 小结264
8.7 推荐读物和网站264
8.8 关键术语、复习题和习题265
附录8A 散列表268
第四部分 调度272
第9章 单处理器调度272
9.1 处理器调度的类型272
9.1.1 长程调度273
9.1.2 中程调度274
9.1.3 短程调度274
9.2 调度算法274
9.2.1 短程调度准则274
9.2.2 优先级的使用275
9.2.3 选择调度策略276
9.2.4 性能比较284
9.2.5 公平共享调度287
9.3 传统的UNIX调度289
9.4 小结290
9.5 推荐读物291
9.6 关键术语、复习题和习题291
附录9A 响应时间294
附录9B 排队系统296
编程项目2:主机调度shell程序299
第10章 多处理器和实时调度304
10.1 多处理器调度304
10.1.1 粒度304
10.1.2 设计问题307
10.1.3 进程调度308
10.1.4 线程调度309
10.2 实时调度312
10.2.1 背景312
10.2.2 实时操作系统的特点313
10.2.3 实时调度315
10.2.4 限期调度316
10.2.5 速率单调调度319
10.2.6 优先级反转321
10.3 Linux调度322
10.3.1 实时调度322
10.3.2 非实时调度323
10.4 UNIX SVR4调度325
10.5 Windows调度326
10.5.1 进程和线程优先级326
10.5.2 多处理器调度328
10.6 小结328
10.7 推荐读物328
10.8 关键术语、复习题和习题329
第五部分 I/O和文件334
第11章 I/O管理和磁盘调度334
11.1 I/O设备334
11.2 I/O功能的组织335
11.2.1 I/O功能的发展335
11.2.2 直接存储器访问336
11.3 操作系统设计问题337
11.3.1 设计目标337
11.3.2 I/O功能的逻辑结构338
11.4 I/O缓冲339
11.4.1 单缓冲340
11.4.2 双缓冲341
11.4.3 循环缓冲341
11.4.4 缓冲的作用341
11.5 磁盘调度342
11.5.1 磁盘性能参数342
11.5.2 磁盘调度策略344
11.6 RAID347
11.6.1 RAID级别0349
11.6.2 RAID级别1350
11.6.3 RAID级别2351
11.6.4 RAID级别3351
11.6.5 RAID级别4352
11.6.6 RAID级别5353
11.6.7 RAID级别6353
11.7 磁盘高速缓存353
11.7.1 设计考虑353
11.7.2 性能考虑355
11.8 UNIX SVR4 I/O355
11.8.1 缓冲区高速缓存356
11.8.2 字符队列356
11.8.3 无缓冲I/O357
11.8.4 UNIX设备357
11.9 Linux I/O357
11.9.1 磁盘调度358
11.9.2 Linux页面缓存360
11.10 Windows I/O360
11.10.1 基本I/O机制360
11.10.2 异步I/O和同步I/O361
11.10.3 软件RAID361
11.10.4 卷影复制361
11.10.5 卷加密362
11.11 小结362
11.12 推荐读物362
11.13 关键术语、复习题和习题363
附录11A 磁盘存储设备365
第12章 文件管理371
12.1 概述371
12.1.1 文件和文件系统371
12.1.2 文件结构371
12.1.3 文件管理系统373
12.2 文件组织和访问375
12.2.1 堆376
12.2.2 顺序文件376
12.2.3 索引顺序文件377
12.2.4 索引文件377
12.2.5 直接文件或散列文件378
12.3 文件目录378
12.3.1 内容378
12.3.2 结构379
12.3.3 命名380
12.4 文件共享381
12.4.1 访问权限381
12.4.2 同时访问381
12.5 记录组块382
12.6 二级存储管理383
12.6.1 文件分配383
12.6.2 空闲空间的管理387
12.6.3 卷388
12.6.4 可靠性388
12.7 文件系统安全389
12.8 UNIX文件管理390
12.8.1 索引节点391
12.8.2 文件分配392
12.8.3 目录393
12.8.4 卷结构393
12.8.5 传统的UNIX文件访问控制393
12.8.6 UNIX中的访问控制列表394
12.9 Linux虚拟文件系统395
12.9.1 超级块对象397
12.9.2 索引节点对象397
12.9.3 目录项对象398
12.9.4 文件对象398
12.10 Windows文件系统398
12.10.1 NTFS的重要特征398
12.10.2 NTFS卷和文件结构399
12.10.3 可恢复性401
12.11 小结402
12.12 推荐读物402
12.13 关键术语、复习题和习题403
第六部分 嵌入式系统406
第13章 嵌入式操作系统406
13.1 嵌入式系统406
13.2 嵌入式操作系统的特点407
13.2.1 移植现有的商业操作系统408
13.2.2 为特定目的构建的嵌入式操作系统408
13.3 eCos409
13.3.1 可配置性409
13.3.2 eCos组件411
13.3.3 eCos调度程序414
13.3.4 eCos线程同步415
13.4 TinyOS419
13.4.1 无线传感器网络420
13.4.2 TinyOS的目标420
13.4.3 TinyOS的组件421
13.4.4 TinyOS的调度程序423
13.4.5 配置例子423
13.4.6 TinyOS的资源接口425
13.5 推荐读物和网站426
13.6 关键术语、复习题和习题426
第七部分 安全430
第14章 计算机安全威胁430
14.1 计算机安全的概念430
14.2 威胁、攻击和资产431
14.2.1 威胁和攻击431
14.2.2 威胁和资产432
14.3 入侵者434
14.3.1 入侵者行为模式435
14.3.2 入侵技术437
14.4 恶意软件概述437
14.4.1 后门437
14.4.2 逻辑炸弹438
14.4.3 特洛伊木马438
14.4.4 移动代码438
14.4.5 多威胁恶意软件439
14.5 病毒、蠕虫与僵尸440
14.5.1 病毒440
14.5.2 蠕虫443
14.5.3 僵尸445
14.6 rootkits447
14.6.1 rootkit安装447
14.6.2 系统级调用攻击447
14.7 推荐读物和网站448
14.8 关键术语、复习题和习题448
第15章 计算机安全技术451
15.1 身份验证451
15.1.1 身份验证方法451
15.1.2 基于密码的身份验证451
15.1.3 基于令牌的身份验证453
15.1.4 生物特征识别认证454
15.2 访问控制455
15.2.1 自主访问控制456
15.2.2 基于角色的访问控制458
15.3 入侵检测460
15.3.1 基本原则460
15.3.2 基于主机的入侵检测技术461
15.3.3 审计记录462
15.4 恶意软件防御463
15.4.1 反病毒方法463
15.4.2 蠕虫对策465
15.4.3 自动代理程序的对策466
15.4.4 rootkit对策466
15.5 处理缓冲区溢出攻击467
15.5.1 编译时防御467
15.5.2 运行时防御469
15.6 Windows Vista安全性470
15.6.1 访问控制方案470
15.6.2 访问令牌471
15.6.3 安全描述符471
15.7 推荐读物和网站474
15.8 关键术语、复习题和习题475
第八部分 分布式系统481
第16章 分布式处理、客户/服务器和集群481
16.1 客户/服务器计算模型481
16.1.1 什么是客户/服务器计算模型481
16.1.2 客户/服务器模型的应用482
16.1.3 中间件486
16.2 分布式消息传递487
16.2.1 可靠性与不可靠性488
16.2.2 阻塞与无阻塞488
16.3 远程过程调用489
16.3.1 参数传递490
16.3.2 参数表示490
16.3.3 客户/服务器绑定490
16.3.4 同步和异步490
16.3.5 面向对象机制491
16.4 集群491
16.4.1 集群的配置491
16.4.2 操作系统的设计问题493
16.4.3 集群计算机的体系结构494
16.4.4 集群与SMP的比较495
16.5 Windows集群服务器495
16.6 Sun集群496
16.6.1 对象和通信支持497
16.6.2 进程管理497
16.6.3 网络连接497
16.6.4 全局文件系统498
16.7 Beowulf和Linux集群498
16.7.1 Beowulf特征498
16.7.2 Beowulf软件499
16.8 小结500
16.9 推荐读物和网站500
16.10 关键术语、复习题和习题501
附录A 并发主题503
附录B 面向对象设计516
附录C 编程和操作系统项目523
术语表528
参考文献536