操作系统——精髓与设计原理(第八版)

副标题:无

作   者:William

分类号:

ISBN:9787121309502

微信扫一扫,移动浏览光盘

简介


本书既是关于操作系统概念、结构和机制的教材,目的是尽可能清楚和全面地展示现代操作系统的本质和特点;也是讲解操作系统的经典教材,不仅系统地讲述了操作系统的基本概念、原理和方法,而且以当代*流行的操作系统Windows 8、UNIX、Android、Linux为例,展现了当代操作系统的本质和特点。全书共分背景知识、进程、内存、调度、输入/输出和文件、嵌入式系统六部分,内容包括计算机系统概述、操作系统概述、进程描述和控制、线程、并发性:互斥和同步、并发:死锁和饥饿、内存管理、虚拟内存、单处理器调度、多处理器和实时调度、I/O管理和磁盘调度、文件管理、嵌入式操作系统、虚拟机、计算机安全技术、分布式处理、客户/服务器和集群等。此外,本书配套网站提供了及时、生动的材料。

目录


第0章 读者与教师指南 1
  0.1 本书概述 1
  0.2 实例系统 1
  0.3 读者和教师的路线图 2
  0.4 互联网和网站资源 3
第一部分 背景知识
第1章 计算机系统概述 6
  1.1 基本构成 6
  1.2 微处理器的发展 7
  1.3 指令的执行 8
  1.4 中断 10
1.4.1 中断和指令周期 11
1.4.2 中断处理 12
1.4.3 多个中断 14
  1.5 存储器的层次结构 15
  1.6 高速缓存 17
1.6.1 动机 18
1.6.2 高速缓存原理 18
1.6.3 高速缓存设计 19
  1.7 直接内存存取 20
  1.8 多处理器和多核计算机组织结构 21
1.8.1 对称多处理器 21
1.8.2 多核计算机 23
  1.9 推荐读物 23
  1.10 关键术语、复习题和习题 24
1.10.1 关键术语 24
1.10.2 复习题 24
1.10.3 习题 24
  附录1A 两级存储器的性能特征 26
第2章 操作系统概述 31
  2.1 操作系统的目标和功能 31
2.1.1 作为用户/计算机接口的
操作系统 31
2.1.2 作为资源管理器的操作系统 32
2.1.3 操作系统的易扩展性 33
  2.2 操作系统的发展史 34
2.2.1 串行处理 34
2.2.2 简单批处理系统 34
2.2.3 多道批处理系统 36
2.2.4 分时系统 38
  2.3 主要成就 40
2.3.1 进程 40
2.3.2 内存管理 42
2.3.3 信息保护和安全 43
2.3.4 调度和资源管理 44
  2.4 现代操作系统的特征 45
  2.5 容错性 47
2.5.1 基本概念 47
2.5.2 错误 48
2.5.3 操作系统机制 48
2.6 多处理器和多核操作系统
设计考虑因素 49
2.6.1 对称多处理器操作系统设计
考虑因素 49
2.6.2 多核操作系统设计考虑因素 49
  2.7 微软Windows系统简介 51
2.7.1 背景 51
2.7.2 体系结构 51
2.7.3 客户-服务器模型 53
2.7.4 线程和SMP 54
2.7.5 Windows对象 54
  2.8 传统的UNIX系统 55
2.8.1 历史 55
2.8.2 描述 56
  2.9 现代UNIX系统 57
2.9.1 System V Release 4(SVR4) 58
2.9.2 BSD 58
2.9.3 Solaris 10 58
  2.10 Linux操作系统 58
2.10.1 历史 58
2.10.2 模块结构 59
2.10.3 内核组件 60
  2.11 Android 62
2.11.1 Android软件体系结构 63
2.11.2 Android系统体系结构 64
2.11.3 活动 65
2.11.4 电源管理 65
  2.12 推荐读物和动画 66
  2.13 关键术语、复习题和习题 67
2.13.1 关键术语 67
2.13.2 复习题 67
2.13.3 习题 67

第二部分 进程

第3章 进程描述和控制 70
  3.1 什么是进程 70
3.1.1 背景 70
3.1.2 进程和进程控制块 71
  3.2 进程状态 72
3.2.1 两状态进程模型 73
3.2.2 进程的创建和终止 74
3.2.3 五状态模型 75
3.2.4 被挂起的进程 78
  3.3 进程描述 81
3.3.1 操作系统的控制结构 82
3.3.2 进程控制结构 82
  3.4 进程控制 86
3.4.1 执行模式 86
3.4.2 进程创建 87
3.4.3 进程切换 88
  3.5 操作系统的执行 90
3.5.1 无进程内核 90
3.5.2 在用户进程内运行 90
3.5.3 基于进程的操作系统 91
  3.6 UNIX SVR4进程管理 91
3.6.1 进程状态 92
3.6.2 进程描述 93
3.6.3 进程控制 94
  3.7 小结 95
  3.8 推荐读物和动画 95
  3.9 关键术语、复习题和习题 95
3.9.1 关键术语 95
3.9.2 复习题 96
3.9.3 习题 96
第4章 线程 99
  4.1 进程和线程 99
4.1.1 多线程 99
4.1.2 线程的功能 102
  4.2 线程分类 103
4.2.1 用户级和内核级线程 103
4.2.2 其他方案 106
  4.3 多核和多线程 107
4.3.1 多核系统上的软件性能 107
4.3.2 应用示例:Valve游戏软件 109
  4.4 Windows 8的进程和线程管理 110
4.4.1 Windows 8中的变化 111
4.4.2 Windows进程 111
4.4.3 进程对象和线程对象 112
4.4.4 多线程 113
4.4.5 线程状态 113
4.4.6 对操作系统子系统的支持 114
  4.5 Solaris的线程和SMP管理 114
4.5.1 多线程体系结构 114
4.5.2 动机 115
4.5.3 进程结构 115
4.5.4 线程的执行 116
4.5.5 把中断当作线程 117
  4.6 Linux的进程和线程管理 118
4.6.1 Linux任务 118
4.6.2 Linux线程 119
4.6.3 Linux命名空间 120
  4.7 Android的进程和线程管理 121
4.7.1 安卓应用 121
4.7.2 活动 121
4.7.3 进程和线程 122
  4.8 Mac OS X的GCD技术 123
  4.9 小结 124
  4.10 推荐读物 125
  4.11 关键术语、复习题和习题 125
4.11.1 关键术语 125
4.11.2 复习题 125
4.11.3 习题 125
第5章 并发性:互斥和同步 129
  5.1 并发的原理 130
5.1.1 一个简单的例子 130
5.1.2 竞争条件 132
5.1.3 操作系统关注的问题 132
5.1.4 进程的交互 133
5.1.5 互斥的要求 135
  5.2 互斥:硬件的支持 136
5.2.1 中断禁用 136
5.2.2 专用机器指令 136
  5.3 信号量 138
5.3.1 互斥 141
5.3.2 生产者/消费者问题 142
5.3.3 信号量的实现 146
  5.4 管程 147
5.4.1 使用信号的管程 147
5.4.2 使用通知和广播的管程 149
  5.5 消息传递 151
5.5.1 同步 151
5.5.2 寻址 152
5.5.3 消息格式 153
5.5.4 排队原则 154
5.5.5 互斥 154
  5.6 读者/写者问题 155
5.6.1 读者优先 156
5.6.2 写者优先 156
  5.7 小结 158
  5.8 推荐读物和动画 159
  5.9 关键术语、复习题和习题 160
5.9.1 关键术语 160
5.9.2 复习题 160
5.9.3 习题 160
第6章 并发:死锁和饥饿 170
  6.1 死锁原理 170
6.1.1 可重用资源 173
6.1.2 可消耗资源 174
6.1.3 资源分配图 174
6.1.4 死锁的条件 175
  6.2 死锁预防 176
6.2.1 互斥 176
6.2.2 占有且等待 176
6.2.3 不可抢占 176
6.2.4 循环等待 177
  6.3 死锁避免 177
6.3.1 进程启动拒绝 177
6.3.2 资源分配拒绝 178
  6.4 死锁检测 181
6.4.1 死锁检测算法 181
6.4.2 恢复 182
  6.5 一种综合的死锁策略 182
  6.6 哲学家就餐问题 183
6.6.1 基于信号量的解决方案 183
6.6.2 基于管程的解决方案 184
  6.7 UNIX并发机制 185
6.7.1 管道 186
6.7.2 消息 186
6.7.3 共享内存 186
6.7.4 信号量 186
6.7.5 信号 187
  6.8 Linux内核并发机制 187
6.8.1 原子操作 188
6.8.2 自旋锁 189
6.8.3 信号量 190
6.8.4 屏障 191
  6.9 Solaris线程同步原语 192
6.9.1 互斥锁 193
6.9.2 信号量 193
6.9.3 多读者/单写者锁 193
6.9.4 条件变量 193
  6.10 Windows 7的并发机制 194
6.10.1 等待函数 194
6.10.2 分派器对象 194
6.10.3 临界区 195
6.10.4 轻量级读写锁和条件变量 195
6.10.5 锁无关同步机制 196
  6.11 Android进程间通信 196
  6.12 小结 197
  6.13 推荐读物和动画 197
  6.14 关键术语、复习题和习题 198
6.14.1 关键术语 198
6.14.2 复习题 198
6.14.3 习题 198
  
  
  
  
  
  

第三部分 内存
  
第7章 内存管理 204
  7.1 内存管理的需求 204
7.1.1 重定位 204
7.1.2 保护 205
7.1.3 共享 205
7.1.4 逻辑组织 205
7.1.5 物理组织 206
  7.2 内存分区 206
7.2.1 固定分区 207
7.2.2 动态分区 208
7.2.3 伙伴系统 210
7.2.4 重定位 212
  7.3 分页 212
  7.4 分段 215
  7.5 小结 216
  7.6 推荐读物和动画 216
  7.7 关键术语、复习题和习题 216
7.7.1 关键术语 216
7.7.2 复习题 217
7.7.3 习题 217
  附录7A 加载和链接 219
第8章 虚拟内存 223
  8.1 硬件和控制结构 223
8.1.1 局部性和虚拟内存 224
8.1.2 分页 225
8.1.3 分段 232
8.1.4 段页式 232
8.1.5 保护和共享 233
  8.2 操作系统软件 234
8.2.1 读取策略 235
8.2.2 放置策略 235
8.2.3 置换策略 235
8.2.4 驻留集管理 239
8.2.5 清除策略 243
8.2.6 加载控制 244
  8.3 UNIX和Solaris内存管理 245
8.3.1 分页系统 245
8.3.2 内核内存分配器 247
  8.4 Linux内存管理 249
8.4.1 虚拟内存 249
8.4.2 内核内存分配 250
  8.5 Windows内存管理 251
8.5.1 Windows虚拟地址映射 251
8.5.2 Windows分页 251
8.5.3 Windows 8交换 252
  8.6 Android内存管理 252
  8.7 小结 252
  8.8 推荐读物和动画 253
  8.9 关键术语、复习题和习题 253
8.9.1 关键术语 253
8.9.2 复习题 254
8.9.3 习题 254

第四部分 调度

第9章 单处理器调度 258
  9.1 处理器调度的类型 258
9.1.1 长程调度 259
9.1.2 中程调度 260
9.1.3 短程调度 260
  9.2 调度算法 260
9.2.1 短程调度规则 260
9.2.2 优先级的使用 261
9.2.3 选择调度策略 262
9.2.4 性能比较 268
9.2.5 公平共享调度 272
  9.3 传统的UNIX调度 273
  9.4 小结 274
  9.5 推荐读物9

已确认勘误

次印刷

页码 勘误内容 提交人 修订印次

操作系统——精髓与设计原理(第八版)
    • 名称
    • 类型
    • 大小

    光盘服务联系方式: 020-38250260    客服QQ:4006604884

    意见反馈

    14:15

    关闭

    云图客服:

    尊敬的用户,您好!您有任何提议或者建议都可以在此提出来,我们会谦虚地接受任何意见。

    或者您是想咨询:

    用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问

    Video Player
    ×
    Audio Player
    ×
    pdf Player
    ×
    Current View

    看过该图书的还喜欢

    some pictures

    解忧杂货店

    东野圭吾 (作者), 李盈春 (译者)

    loading icon