返回首页
苏宁会员
购物车 0
易付宝
手机苏宁

服务体验

店铺评分与同行业相比

用户评价:----

物流时效:----

售后服务:----

  • 服务承诺: 正品保障
  • 公司名称:
  • 所 在 地:

  • 正版 操作系统:精髓与设计原理:internals and design principles
  • 新华书店旗下自营,正版全新
    • 作者: William著 | William编 | William译 | William绘
    • 出版社: 电子工业出版社
    • 出版时间:2019-04
    送至
  • 由""直接销售和发货,并提供售后服务
  • 加入购物车 购买电子书
    服务

    看了又看

    商品预定流程:

    查看大图
    /
    ×

    苏宁商家

    商家:
    美阅书店
    联系:
    • 商品

    • 服务

    • 物流

    搜索店内商品

    商品分类

    商品参数
    • 作者: William著| William编| William译| William绘
    • 出版社:电子工业出版社
    • 出版时间:2019-04
    • 版次:01
    • 印次:1
    • 字数:900000
    • 页数:476
    • 开本:16开
    • ISBN:9787121388316
    • 版权提供:电子工业出版社
    • 作者:William
    • 著:William
    • 装帧:平装
    • 印次:1
    • 定价:89.00
    • ISBN:9787121388316
    • 出版社:电子工业出版社
    • 开本:16开
    • 印刷时间:暂无
    • 语种:暂无
    • 出版时间:2019-04
    • 页数:476
    • 外部编号:9903342
    • 版次:01
    • 成品尺寸:暂无

    部分 背景知识
    第1章 计算机系统概述 2
    1.1 基本构成 2
    1.2 微处理器的发展 3
    1.3 指令的执行 4
    1.4 中断 6
    1.4.1 中断和指令周期 7
    1.4.2 中断处理 8
    1.4.3 多个中断 10
    1.5 存储器的层次结构 11
    1.6 高速缓存 13
    1.6.1 动机 13
    1.6.2 高速缓存原理 13
    1.6.3 高速缓存设计 15
    1.7 直接内存存取 15
    1.8 多处理器和多核计算机组织结构 16
    1.8.1 对称多处理器 16
    1.8.2 多核计算机 17
    1.9 关键术语、复习题和习题 19
    1.9.1 关键术语 19
    1.9.2 复习题 19
    1.9.3 习题 19
    附录1A 两级存储器的性能特征 21
    第2章 操作系统概述 26
    2.1 操作系统的目标和功能 26
    2.1.1 作为用户/计算机接口的
    操作系统 26
    2.1.2 作为资源管理器的操作系统 27
    2.1.3 操作系统的易扩展性 28
    2.2 操作系统的演化 29
    2.2.1 串行处理 29
    2.2.2 简单批处理系统 29
    2.2.3 多道批处理系统 31
    2.2.4 分时系统 33
    2.3 主要成 34
    2.3.1 进程 34
    2.3.2 内存管理 36
    2.3.3 信息保护和安全 37
    2.3.4 调度和资源管理 38
    2.4 现代操作系统的特征 39
    2.5 容错性 40
    2.5.1 基本概念 41
    2.5.2 错误 41
    2.5.3 操作系统机制 42
    2.6 多处理器和多核操作系统设计
    考虑因素 42
    2.6.1 对称多处理器操作系统设计
    考虑因素 42
    2.6.2 多核操作系统设计考虑因素 43
    2.7 微软Windows系统简介 44
    2.7.1 背景 44
    2.7.2 体系结构 44
    2.7.3 客户-服务器模型 46
    2.7.4 线程和SMP 47
    2.7.5 Windows对象 47
    2.8 传统的UNIX系统 48
    2.8.1 历史 48
    2.8.2 描述 49
    2.9 现代UNIX系统 50
    2.9.1 System V Release 4(SVR4) 51
    2.9.2 BSD 51
    2.9.3 Solaris 11 51
    2.10 Linux操作系统 51
    2.10.1 历史 51
    2.10.2 模块结构 52
    2.10.3 内核组件 53
    2.11 Android 55
    2.11.1 Android软件体系结构 56
    2.11.2 Android运行时 57
    2.11.3 Android系统体系结构 59
    2.11.4 活动 60
    2.11.5 电源管理 60
    2.12 关键术语、复习题和习题 60
    2.12.1 关键术语 60
    2.12.2 复习题 61
    2.12.3 习题 61
    第二部分 进程
    第3章 进程描述和控制 64
    3.1 什么是进程 64
    3.1.1 背景 64
    3.1.2 进程和进程控制块 65
    3.2 进程状态 66
    3.2.1 两状态进程模型 67
    3.2.2 进程的创建和终止 68
    3.2.3 五状态模型 69
    3.2.4 被挂起的进程 71
    3.3 进程描述 74
    3.3.1 操作系统的控制结构 75
    3.3.2 进程控制结构 75
    3.4 进程控制 79
    3.4.1 执行模式 79
    3.4.2 进程创建 80
    3.4.3 进程切换 81
    3.5 操作系统的执行 82
    3.5.1 无进程内核 82
    3.5.2 在用户进程内运行 83
    3.5.3 基于进程的操作系统 84
    3.6 UNIX SVR4进程管理 84
    3.6.1 进程状态 84
    3.6.2 进程描述 85
    3.6.3 进程控制 87
    3.7 小结 87
    3.8 关键术语、复习题和习题 88
    3.8.1 关键术语 88
    3.8.2 复习题 88
    3.8.3 习题 88
    第4章 线程 91
    4.1 进程和线程 91
    4.1.1 多线程 91
    4.1.2 线程的功能 93
    4.2 线程分类 95
    4.2.1 用户级和内核级线程 95
    4.2.2 其他方案 97
    4.3 多核和多线程 99
    4.3.1 多核系统上的软件性能 99
    4.3.2 应用示例:Valve游戏软件 100
    4.4 Windows的进程和线程管理 101
    4.4.1 后台任务管理和应用生命
    周期 102
    4.4.2 Windows进程 103
    4.4.3 进程对象和线程对象 103
    4.4.4 多线程 104
    4.4.5 线程状态 104
    4.4.6 对操作系统子系统的支持 105
    4.5 Solaris的线程和SMP管理 106
    4.5.1 多线程体系结构 106
    4.5.2 动机 106
    4.5.3 进程结构 107
    4.5.4 线程的执行 108
    4.5.5 把中断当作线程 108
    4.6 Linux的进程和线程管理 109
    4.6.1 Linux任务 109
    4.6.2 Linux线程 110
    4.6.3 Linux命名空间 111
    4.7 Android的进程和线程管理 112
    4.7.1 安卓应用 112
    4.7.2 活动 113
    4.7.3 进程和线程 114
    4.8 Mac OS X的GCD技术 114
    4.9 小结 116
    4.10 关键术语、复习题和习题 116
    4.10.1 关键术语 116
    4.10.2 复习题 116
    4.10.3 习题 117
    第5章 并发:互斥和同步 121
    5.1 互斥:软件解决方法 122
    5.1.1 Dekker算法 122
    5.1.2 Peterson算法 125
    5.2 并发的原理 126
    5.2.1 一个简单的例子 127
    5.2.2 竞争条件 128
    5.2.3 操作系统关注的问题 128
    5.2.4 进程的交互 128
    5.2.5 互斥的要求 131
    5.3 互斥:硬件的支持 131
    5.3.1 中断禁用 131
    5.3.2 专用机器指令 132
    5.4 信号量 133
    5.4.1 互斥 136
    5.4.2 生产者/消费者问题 137
    5.4.3 信号量的实现 142
    5.5 管程 142
    5.5.1 使用信号的管程 142
    5.5.2 使用通知和广播的管程 145
    5.6 消息传递 146
    5.6.1 同步 147
    5.6.2 寻址 148
    5.6.3 消息格式 149
    5.6.4 排队原则 149
    5.6.5 互斥 149
    5.7 读者/写者问题 150
    5.7.1 读者优先 151
    5.7.2 写者优先 152
    5.8 小结 154
    5.9 关键术语、复习题和习题 154
    5.9.1 关键术语 154
    5.9.2 复习题 154
    5.9.3 习题 155
    第6章 并发:死锁和饥饿 164
    6.1 死锁原理 164
    6.1.1 可重用资源 167
    6.1.2 可消耗资源 167
    6.1.3 资源分配图 168
    6.1.4 死锁的条件 169
    6.2 死锁 169
    6.2.1 互斥 170
    6.2.2 占有且等待 170
    6.2.3 不可抢占 170
    6.2.4 循环等待 170
    6.3 死锁避免 170
    6.3.1 进程启动拒绝 171
    6.3.2 资源分配拒绝 171
    6.4 死锁检测 174
    6.4.1 死锁检测算法 174
    6.4.2 恢复 175
    6.5 一种综合的死锁策略 175
    6.6 哲学家餐问题 176
    6.6.1 基于信号量的解决方案 177
    6.6.2 基于管程的解决方案 178
    6.7 UNIX并发机制 178
    6.7.1 管道 179
    6.7.2 消息 179
    6.7.3 共享内存 179
    6.7.4 信号量 179
    6.7.5 信号 180
    6.8 Linux内核并发机制 180
    6.8.1 原子操作 181
    6.8.2 自旋锁 182
    6.8.3 信号量 183
    6.8.4 屏障 184
    6.9 Solaris线程同步原语 185
    6.9.1 互斥锁 186
    6.9.2 信号量 186
    6.9.3 多读者/单写者锁 186
    6.9.4 条件变量 187
    6.10 Windows的并发机制 187
    6.10.1 等待函数 187
    6.10.2 分派器对象 187
    6.10.3 临界区 188
    6.10.4 轻量级读写锁和条件变量 188
    6.10.5 锁无关同步机制 189
    6.11 Android进程间通信 189
    6.12 小结 190
    6.13 关键术语、复习题和习题 190
    6.13.1 关键术语 190
    6.13.2 复习题 190
    6.13.3 习题 191
    第三部分 内存
    第7章 内存管理 196
    7.1 内存管理的需求 196
    7.1.1 重定位 196
    7.1.2 保护 197
    7.1.3 共享 197
    7.1.4 逻辑组织 197
    7.1.5 物理组织 198
    7.2 内存分区 198
    7.2.1 固定分区 198
    7.2.2 动态分区 200
    7.2.3 伙伴系统 202
    7.2.4 重定位 203
    7.3 分页 204
    7.4 分段 206
    7.5 小结 207
    7.6 关键术语、复习题和习题 207
    7.6.1 关键术语 207
    7.6.2 复习题 208
    7.6.3 习题 208
    附录7A 加载和链接 210
    第8章 虚拟内存 214
    8.1 硬件和控制结构 214
    8.1.1 局部性和虚拟内存 215
    8.1.2 分页 216
    8.1.3 分段 222
    8.1.4 段页式 223
    8.1.5 保护和共享 224
    8.2 操作系统软件 224
    8.2.1 读取策略 225
    8.2.2 放置策略 226
    8.2.3 置换策略 226
    8.2.4 驻留集管理 230
    8.2.5 清除策略 234
    8.2.6 加载控制 234
    8.3 UNIX和Solaris内存管理 235
    8.3.1 分页系统 235
    8.3.2 内核内存分配器 237
    8.4 Linux内存管理 238
    8.4.1 虚拟内存 239
    8.4.2 内核内存分配 240
    8.5 Windows内存管理 240
    8.5.1 Windows虚拟地址映射 241
    8.5.2 Windows分页 241
    8.5.3 Windows交换 242
    8.6 Android内存管理 242
    8.7 小结 242
    8.8 关键术语、复习题和习题 243
    8.8.1 关键术语 243
    8.8.2 复习题 243
    8.8.3 习题 243
    第四部分 调度
    第9章 单处理器调度 248
    9.1 处理器调度的类型 248
    9.1.1 长程调度 249
    9.1.2 中程调度 250
    9.1.3 短程调度 250
    9.2 调度算法 250
    9.2.1 短程调度规则 250
    9.2.2 优先级的使用 251
    9.2.3 选择调度策略 252
    9.2.4 性能比较 258
    9.2.5 公平共享调度 261
    9.3 传统的UNIX调度 263
    9.4 小结 264
    9.5 关键术语、复习题和习题 264
    9.5.1 关键术语 264
    9.5.2 复习题 264
    9.5.3 习题 265
    第10章 多处理器、多核和实时调度 268
    10.1 多处理器和多核调度 268
    10.1.1 粒度 268
    10.1.2 设计问题 269
    10.1.3 进程调度 270
    10.1.4 线程调度 271
    10.1.5 多核线程调度 275
    10.2 实时调度 276
    10.2.1 背景 276
    10.2.2 实时操作系统的特点 276
    10.2.3 实时调度 278
    10.2.4 限期调度 279
    10.2.5 速率单调调度 282
    10.2.6 优先级反转 284
    10.3 Linux调度 285
    10.3.1 实时调度 285
    10.3.2 非实时调度 286
    10.4 UNIX SVR4调度 287
    10.5 FreeBSD调度程序 288
    10.5.1 优先级 288
    10.5.2 对称多处理器与多核支持 289
    10.6 Windows调度 290
    10.6.1 进程和线程优先级 290
    10.6.2 多处理器调度 291
    10.7 小结 291
    10.8 关键术语、复习题和习题 292
    10.8.1 关键术语 292
    10.8.2 复习题 292
    10.8.3 习题 292
    第五部分 输入/输出和文件
    第11章 I/O管理和磁盘调度 296
    11.1 I/O设备 296
    11.2 I/O功能的组织 297
    11.2.1 I/O功能的发展 297
    11.2.2 直接内存访问 298
    11.3 操作系统设计问题 299
    11.3.1 设计目标 299
    11.3.2 I/O功能的逻辑结构 300
    11.4 I/O缓冲 301
    11.4.1 单缓冲 301
    11.4.2 双缓冲 302
    11.4.3 循环缓冲 302
    11.4.4 缓冲的作用 302
    11.5 磁盘调度 303
    11.5.1 磁盘性能参数 303
    11.5.2 磁盘调度策略 304
    11.6 RAID 307
    11.6.1 RAID级别0 310
    11.6.2 RAID级别1 310
    11.6.3 RAID级别2 311
    11.6.4 RAID级别3 311
    11.6.5 RAID级别4 312
    11.6.6 RAID级别5 312
    11.6.7 RAID级别6 312
    11.7 磁盘高速缓存 313
    11.7.1 设计考虑因素 313
    11.7.2 性能考虑因素 314
    11.8 UNIX SVR 4 I/O 315
    11.8.1 缓冲区高速缓冲 315
    11.8.2 字符队列 316
    11.8.3 无缓冲I/O 316
    11.8.4 UNIX设备 316
    11.9 Linux I/O 317
    11.9.1 磁盘调度 317
    11.9.2 Linux页面缓存 319
    11.10 Windows I/O 320
    11.10.1 基本I/O机制 320
    11.10.2 异步I/O和同步I/O 320
    11.10.3 软件RAID 321
    11.10.4 卷影复制 321
    11.10.5 卷加密 321
    11.11 小结 321
    11.12 关键术语、复习题和习题 322
    11.12.1 关键术语 322
    11.12.2 复习题 322
    11.12.3 习题 322
    第12章 文件管理 324
    12.1 概述 324
    12.1.1 文件和文件系统 324
    12.1.2 文件结构 325
    12.1.3 文件管理系统 326
    12.2 文件组织和访问 327
    12.2.1 堆 328
    12.2.2 顺序文件 328
    12.2.3 索引顺序文件 329
    12.2.4 索引文件 329
    12.2.5 直接文件或散列文件 330
    12.3 B树 330
    12.4 文件目录 332
    12.4.1 内容 332
    12.4.2 结构 333
    12.4.3 命名 334
    12.5 文件共享 335
    12.5.1 访问权限 335
    12.5.2 同时访问 335
    12.6 记录组块 336
    12.7 辅存管理 337
    12.7.1 文件分配 337
    12.7.2 空闲空间管理 339
    12.7.3 卷 341
    12.7.4 可靠性 341
    12.8 UNIX文件管理 341
    12.8.1 索引节点 342
    12.8.2 文件分配 343
    12.8.3 目录 344
    12.8.4 卷结构 344
    12.9 Linux虚拟文件系统 344
    12.9.1 块对象 345
    12.9.2 索引节点对象 346
    12.9.3 目录项对象 346
    12.9.4 文件对象 346
    12.9.5 缓存 346
    12.10 Windows文件系统 347
    12.10.1 NTFS的重要特征 347
    12.10.2 NTFS卷和文件结构 347
    12.10.3 可恢复性 349
    12.11 Android文件系统 350
    12.11.1 文件系统 350
    12.11.2 SQLite 350
    12.12 小结 351
    12.13 关键术语、复习题和习题 351
    12.13.1 关键术语 351
    12.13.2 复习题 351
    12.13.3 习题 352
    第六部分 嵌入式系统
    第13章 嵌入式操作系统 354
    13.1 嵌入式系统 354
    13.1.1 嵌入式系统概念 354
    13.1.2 通用处理器和专用处理器 355
    13.1.3 微处理器 355
    13.1.4 微控制器 356
    13.1.5 深度嵌入式系统 357
    13.2 嵌入式操作系统的特性 357
    13.2.1 主环境和目标环境 358
    13.2.2 开发方法 359
    13.2.3 适配现有的操作系统 359
    13.2.4 根据目标建立的嵌入式
    操作系统 359
    13.3 嵌入式Linux 360
    13.3.1 嵌入式Linux系统的特性 360
    13.3.2 嵌入式Linux文件系统 361
    13.3.3 嵌入式Linux的优势 361
    13.3.4 μClinux 362
    13.3.5 Android 363
    13.4 TinyOS 364
    13.4.1 无线传感器网络 364
    13.4.2 TinyOS的目标 365
    13.4.3 TinyOS的组件 365
    13.4.4 TinyOS的调度程序 367
    13.4.5 配置示例 367
    13.4.6 TinyOS的资源接口 369
    13.5 关键术语、复习题和习题 370
    13.5.1 关键术语 370
    13.5.2 复习题 370
    13.5.3 习题 370
    第14章 虚拟机 372
    14.1 虚拟机概念 372
    14.2 虚拟机管理程序 374
    14.2.1 虚拟机管理程序 374
    14.2.2 半虚拟化 375
    14.2.3 硬件辅助虚拟化 376
    14.2.4 虚拟设备 376
    14.3 容器虚拟化 377
    14.3.1 内核控制组 377
    14.3.2 容器的概念 377
    14.3.3 容器文件系统 379
    14.3.4 微服务 380
    14.3.5 Docker 380
    14.4 处理器问题 381
    14.5 内存管理 382
    14.6 输入/输出管理 383
    14.7 VMware ESXi 384
    14.8 微软Hyper-V与Xen系列 385
    14.9 Java虚拟机 386
    14.10 Linux VServer虚拟机架构 386
    14.10.1 架构 387
    14.10.2 进程调度 387
    14.11 小结 388
    14.12 关键术语、复习题和习题 388
    14.12.1 关键术语 388
    14.12.2 复习题 389
    14.12.3 习题 389
    第15章 操作系统安全技术 390
    15.1 入侵者与恶意软件 390
    15.1.1 系统访问威胁 390
    15.1.2 应对措施 391
    15.2 缓冲区溢出 392
    15.2.1 缓冲区溢出攻击 392
    15.2.2 编译时防御 394
    15.2.3 运行时防御 396
    15.3 访问控制 397
    15.3.1 文件系统访问控制 397
    15.3.2 访问控制策略 399
    15.4 UNIX访问控制 402
    15.4.1 传统UNIX文件访问控制 402
    15.4.2 UNIX中的访问控制列表 403
    15.5 操作系统加固 404
    15.5.1 操作系统安装:初始安装
    与后续更新 404
    15.5.2 删除不必要的服务、应用
    与协议 405
    15.5.3 对用户、组和认证过程
    进行配置 405
    15.5.4 对资源控制进行配置 405
    15.5.5 安装额外的安全控制工具 406
    15.5.6 对系统安全进行测试 406
    15.6 安全性维护 406
    15.6.1 记录日志 406
    15.6.2 数据备份和存档 407
    15.7 Windows安全性 407
    15.7.1 访问控制方案 407
    15.7.2 访问令牌 408
    15.7.3 安全描述符 408
    15.8 小结 410
    15.9 关键术语、复习题和习题 411
    15.9.1 关键术语 411
    15.9.2 复习题 411
    15.9.3 习题 411
    第16章 云与物联网操作系统 413


    William Stallings,美国圣母大学电气工程专业学士,麻省理工学院计算机科学系博士。William Stallings已出版图书18种,含修订版在内共出版图书40种,内容涉及计算机安全、计算机网络和计算机体系结构。在多家期刊上发表了大量论文,包括Proceedings of the IEEE、ACM Computing Reviews和Cryptologia。13次荣获教材与学术作者协会颁发的计算机科学教材奖。在计算机科学领域的30多年,William Stallings一直是一位技术贡献者、技术管理者和多家高科技公司的主管;针对许多计算机和操作系统,设计和实现了基于TCP/IP与基于OSI的协议套件。
    关于作者William Stallings,美国圣母大学电气工程专业学士,麻省理工学院计算机科学专业博士。William Stallings已出版图书近20种,含修订版在内共出版图书40种,内容涉及计算机安全、计算机网络和计算机体系结构。在多家期刊上发表了大量论文,包括《IEEE进展》《ACM计算评论》和《密码术》。13次荣获教材与学术作者协会颁发的计算机科学教科书奖。在计算机科学领域工作的30多年,William Stallings一直是一位技术贡献者、技术管理者和多家高科技公司的主管;针对许多计算机和操作系统,设计和实现了基于TCP/IP与基于OSI的协议套件。William Stallings还是政府机构、计算机和软件供应商以及设计、选用网络软件与产品的用户的顾问。创建与维护了计算机科学专业学生资源网站ComputerScienceStudent.com,为计算机科学专业的学生(及专业人员)提供文献及大量专题链接,也是学术期刊《密码术》的编委会成员。






    内容简介





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





    作者简介





    William Stallings,美大学电气工程专业学士,麻省理工学院计算机科学系博士。William Stallings已出版图书18种,含修订版在内共出版图书40种,内容涉及计算机、计算机网络和计算机体系结构。在多家期刊上发表了大量论文括Proceedings of the IEEE、ACM Computing Reviews和Cryptologia。13次荣获教材与学术作者协会颁发的计算机科学教材奖。在计算机科学领域的30多年,William Stallings一直是一位技术贡献者、技术管理者和多家高科技公司的主管;针对许多计算机和操作系统,设计和实现了基于TCP/IP与基于OSI的协议套件。

    关于作者William Stallings,美大学电气工程专业学士,麻省理工学院计算机科学专业博士。William Stallings已出版图书近20种,含修订版在内共出版图书40种,内容涉及计算机、计算机网络和计算机体系结构。在多家期刊上发表了大量论文括《IEE展》《ACM计算评论》和《密码术》。13次荣获教材与学术作者协会颁发的计算机科学教科书奖。在计算机科学领域工作的30多年,William Stallings一直是一位技术贡献者、技术管理者和多家高科技公司的主管;针对许多计算机和操作系统,设计和实现了基于TCP/IP与基于OSI的协议套件。William Stallings还是政府机构、计算机和软件供应商以及设计、选用网络软件与产品的用户的顾问。创建与维护了计算机科学专业学生资源网站ComputerScienceStudent.com,为计算机科学专业的学生(及专业人员)提供文献及大量专题链接,也是学术期刊《密码术》的编委会成员。





    目录





    部分 背景知识


    第1章 计算机系统概述 2

    1.1 基本构成 2

    1.2 微处理器的发展 3

    1.3 指令的执行 4

    1.4 中断 6

    1.4.1 中断和指令周期 7

    1.4.2 中断处理 8

    1.4.3 多个中断 10

    1.5 存储器的层次结构 11

    1.6 高速缓存 13

    1.6.1 动机 13

    1.6.2 高速缓存原理 13

    1.6.3 高速缓存设计 15

    1.7 直接内存存取 15

    1.8 多处理器和多核计算机组织结构 16

    1.8.1 对称多处理器 16

    1.8.2 多核计算机 17

    1.9 关键术语、复19

    1.9.1 关键术语 19

    1.9.2 复19

    1.9.3 19

    附录1A 两级存储器的性能特征 21

    第2章 操作系统概述 26

    2.1 操作系统的目标能 26

    2.1.1 作为用户/计算机接口的

    操作系统 26

    2.1.2 作为资源管理器的操作系统 27

    2.1.3 操作系统的易扩展性 28

    2.2 操作系统的演化 29

    2.2.1 串行处理 29

    2.2.2 简单批处理系统 29

    2.2.3 多道批处理系统 31

    2.2.4 分时系统 33

    2.3 主要成就 34

    2.3.1 程 34

    2.3.2 内存管理 36

    2.3.3 信息保护和 37

    2.3.4 调度和资源管理 38

    2.4 现代操作系统的特征 39

    2.5 容错性 40

    2.5.1 基本概念 41

    2.5.2 错误 41

    2.5.3 操作系统机制 42

    2.6 多处理器和多核操作系统设计

    考虑因素 42

    2.6.1 对称多处理器操作系统设计

    考虑因素 42

    2.6.2 多核操作系统设计考虑因素 43

    2.7 微软Windows系统简介 44

    2.7.1 背景 44

    2.7.2 体系结构 44

    2.7.3 客户-服务器模型 46

    2.7.4 线程和SMP 47

    2.7.5 Windows对象 47

    2.8 传统的UNIX系统 48

    2.8.1 历史 48

    2.8.2 描述 49

    2.9 现代UNIX系统 50

    2.9.1 System V Release 4(SVR4) 51

    2.9.2 BSD 51

    2.9.3 Solaris 11 51

    2.10 Linux操作系统 51

    2.10.1 历史 51

    2.10.2 模块结构 52

    2.10.3 内核组件 53

    2.11 Android 55

    2.11.1 Android软件体系结构 56

    2.11.2 Android运行时 57

    2.11.3 Android系统体系结构 59

    2.11.4 活动 60

    2.11.5 电源管理 60

    2.12 关键术语、复60

    2.12.1 关键术语 60

    2.12.2 复61

    2.12.3 61


    第二部分 程


    第3章 程描述和控制 64

    3.1 什么程 64

    3.1.1 背景 64

    3.1.2 程程控制块 65

    3.2 程状态 66

    3.2.1 两状程模型 67

    3.2.2 程的创建和终止 68

    3.2.3 五状态模型 69

    3.2.4 被挂起程 71

    3.3 程描述 74

    3.3.1 操作系统的控制结构 75

    3.3.2 程控制结构 75

    3.4 程控制 79

    3.4.1 执行模式 79

    3.4.2 程创建 80

    3.4.3 程切换 81

    3.5 操作系统的执行 82

    3.5.1 程内核 82

    3.5.2 在用程内运行 83

    3.5.3 基程的操作系统 84

    3.6 UNIX SVR程管理 84

    3.6.1 程状态 84

    3.6.2 程描述 85

    3.6.3 程控制 87

    3.7 小结 87

    3.8 关键术语、复88

    3.8.1 关键术语 88

    3.8.2 复88

    3.8.3 88

    第4章 线程 91

    4.1 程和线程 91

    4.1.1 多线程 91

    4.1.2 线程能 93

    4.2 线程分类 95

    4.2.1 用户级和内核级线程 95

    4.2.2 其他方案 97

    4.3 多核和多线程 99

    4.3.1 多核系统上的软件性能 99

    4.3.2 应用示例:Valve游戏软件 100

    4.4 Windows程和线程管理 101

    4.4.1 后台任务管理和应用生命

    周期 102

    4.4.2 Window程 103

    4.4.3 程对象和线程对象 103

    4.4.4 多线程 104

    4.4.5 线程状态 104

    4.4.6 对操作系统子系统的支持 105

    4.5 Solaris的线程和SMP管理 106

    4.5.1 多线程体系结构 106

    4.5.2 动机 106

    4.5.3 程结构 107

    4.5.4 线程的执行 108

    4.5.5 把中断当作线程 108

    4.6 Linux程和线程管理 109

    4.6.1 Linux任务 109

    4.6.2 Linux线程 110

    4.6.3 Linux命名空间 111

    4.7 Android程和线程管理 112

    4.7.1 安卓应用 112

    4.7.2 活动 113

    4.7.3 程和线程 114

    4.8 Mac OS X的GCD技术 114

    4.9 小结 116

    4.10 关键术语、复116

    4.10.1 关键术语 116

    4.10.2 复116

    4.10.3 117

    第5章 并发:互斥和同步 121

    5.1 互斥:软件解决方法 122

    5.1.1 Dekker算法 122

    5.1.2 Peterson算法 125

    5.2 并发的原理 126

    5.2.1 一个简单的例子 127

    5.2.2 竞争条件 128

    5.2.3 操作系统关注的问题 128

    5.2.4 程的交互 128

    5.2.5 互斥的要求 131

    5.3 互斥:硬件的支持 131

    5.3.1 中断禁用 131

    5.3.2 专用机器指令 132

    5.4 信号量 133

    5.4.1 互斥 136

    5.4.2 生产者/消费者问题 137

    5.4.3 信号量的实现 142

    5.5 管程 142

    5.5.1 使用信号的管程 142

    5.5.2 使用通知和广播的管程 145

    5.6 消息传递 146

    5.6.1 同步 147

    5.6.2 寻址 148

    5.6.3 消息格式 149

    5.6.4 排队原则 149

    5.6.5 互斥 149

    5.7 读者/写者问题 150

    5.7.1 读者优先 151

    5.7.2 写者优先 152

    5.8 小结 154

    5.9 关键术语、复154

    5.9.1 关键术语 154

    5.9.2 复154

    5.9.3 155

    第6章 并发:死锁和饥饿 164

    6.1 死锁原理 164

    6.1.1 可重用资源 167

    6.1.2 可消耗资源 167

    6.1.3 资源分配图 168

    6.1.4 死锁的条件 169

    6.2 死锁 169

    6.2.1 互斥 170

    6.2.2 占有且等待 170

    6.2.3 不可抢占 170

    6.2.4 循环等待 170

    6.3 死锁避免 170

    6.3.1 程启动拒绝 171

    6.3.2 资源分配拒绝 171

    6.4 死锁检测 174

    6.4.1 死锁检测算法 174

    6.4.2 恢复 175

    6.5 一种综合的死锁策略 175

    6.6 哲学家就餐问题 176

    6.6.1 基于信号量的解决方案 177

    6.6.2 基于管程的解决方案 178

    6.7 UNIX并发机制 178

    6.7.1 管道 179

    6.7.2 消息 179

    6.7.3 共享内存 179

    6.7.4 信号量 179

    6.7.5 信号 180

    6.8 Linux内核并发机制 180

    6.8.1 原子操作 181

    6.8.2 自旋锁 182

    6.8.3 信号量 183

    6.8.4 屏障 184

    6.9 Solaris线程同步原语 185

    6.9.1 互斥锁 186

    6.9.2 信号量 186

    6.9.3 多读者/单写者锁 186

    6.9.4 条件变量 187

    6.10 Windows的并发机制 187

    6.10.1 等待函数 187

    6.10.2 分派器对象 187

    6.10.3 临界区 188

    6.10.4 轻量级读写锁和条件变量 188

    6.10.5 锁无关同步机制 189

    6.11 Androi程间通信 189

    6.12 小结 190

    6.13 关键术语、复190

    6.13.1 关键术语 190

    6.13.2 复190

    6.13.3 191


    第三部分 内存


    第7章 内存管理 196

    7.1 内存管理的需求 196

    7.1.1 重定位 196

    7.1.2 保护 197

    7.1.3 共享 197

    7.1.4 逻辑组织 197

    7.1.5 物理组织 198

    7.2 内存分区 198

    7.2.1 固定分区 198

    7.2.2 动态分区 200

    7.2.3 伙伴系统 202

    7.2.4 重定位 203

    7.3 分页 204

    7.4 分段 206

    7.5 小结 207

    7.6 关键术语、复207

    7.6.1 关键术语 207

    7.6.2 复208

    7.6.3 208

    附录7A 加载和链接 210

    第8章 虚拟内存 214

    8.1 硬件和控制结构 214

    8.1.1 局部性和虚拟内存 215

    8.1.2 分页 216

    8.1.3 分段 222

    8.1.4 段页式 223

    8.1.5 保护和共享 224

    8.2 操作系统软件 224

    8.2.1 读取策略 225

    8.2.2 放置策略 226

    8.2.3 置换策略 226

    8.2.4 驻留集管理 230

    8.2.5 清除策略 234

    8.2.6 加载控制 234

    8.3 UNIX和Solaris内存管理 235

    8.3.1 分页系统 235

    8.3.2 内核内存分配器 237

    8.4 Linux内存管理 238

    8.4.1 虚拟内存 239

    8.4.2 内核内存分配 240

    8.5 Windows内存管理 240

    8.5.1 Windows虚拟地址映射 241

    8.5.2 Windows分页 241

    8.5.3 Windows交换 242

    8.6 Android内存管理 242

    8.7 小结 242

    8.8 关键术语、复243

    8.8.1 关键术语 243

    8.8.2 复243

    8.8.3 243


    第四部分 调度


    第9章 单处理器调度 248

    9.1 处理器调度的类型 248

    9.1.1 长程调度 249

    9.1.2 中程调度 250

    9.1.3 短程调度 250

    9.2 调度算法 250

    9.2.1 短程调度规则 250

    9.2.2 优先级的使用 251

    9.2.3 选择调度策略 252

    9.2.4 性能比较 258

    9.2.5 公平共享调度 261

    9.3 传统的UNIX调度 263

    9.4 小结 264

    9.5 关键术语、复264

    9.5.1 关键术语 264

    9.5.2 复264

    9.5.3 265

    第10章 多处理器、多核和实时调度 268

    10.1 多处理器和多核调度 268

    10.1.1 粒度 268

    10.1.2 设计问题 269

    10.1.3 程调度 270

    10.1.4 线程调度 271

    10.1.5 多核线程调度 275

    10.2 实时调度 276

    10.2.1 背景 276

    10.2.2 实时操作系统的特点 276

    10.2.3 实时调度 278

    10.2.4 限期调度 279

    10.2.5 速率单调调度 282

    10.2.6 优先级反转 284

    10.3 Linux调度 285

    10.3.1 实时调度 285

    10.3.2 非实时调度 286

    10.4 UNIX SVR4调度 287

    10.5 FreeBSD调度程序 288

    10.5.1 优先级 288

    10.5.2 对称多处理器与多核支持 289

    10.6 Windows调度 290

    10.6.1 程和线程优先级 290

    10.6.2 多处理器调度 291

    10.7 小结 291

    10.8 关键术语、复292

    10.8.1 关键术语 292

    10.8.2 复292

    10.8.3 292


    第五部分 输入/输出和文件


    第11章 I/O管理和磁盘调度 296

    11.1 I/O设备 296

    11.2 I/能的组织 297

    11.2.1 I/能的发展 297

    11.2.2 直接内存访问 298

    11.3 操作系统设计问题 299

    11.3.1 设计目标 299

    11.3.2 I/能的逻辑结构 300

    11.4 I/O缓冲 301

    11.4.1 单缓冲 301

    11.4.2 双缓冲 302

    11.4.3 循环缓冲 302

    11.4.4 缓冲的作用 302

    11.5 磁盘调度 303

    11.5.1 磁盘性能参数 303

    11.5.2 磁盘调度策略 304

    11.6 RAID 307

    11.6.1 RAID级别0 310

    11.6.2 RAID级别1 310

    11.6.3 RAID级别2 311

    11.6.4 RAID级别3 311

    11.6.5 RAID级别4 312

    11.6.6 RAID级别5 312

    11.6.7 RAID级别6 312

    11.7 磁盘高速缓存 313

    11.7.1 设计考虑因素 313

    11.7.2 性能考虑因素 314

    11.8 UNIX SVR 4 I/O 315

    11.8.1 缓冲区高速缓冲 315

    11.8.2 字符队列 316

    11.8.3 无缓冲I/O 316

    11.8.4 UNIX设备 316

    11.9 Linux I/O 317

    11.9.1 磁盘调度 317

    11.9.2 Linux页面缓存 319

    11.10 Windows I/O 320

    11.10.1 基本I/O机制 320

    11.10.2 异步I/O和同步I/O 320

    11.10.3 软件RAID 321

    11.10.4 卷影 321

    11.10.5 卷加密 321

    11.11 小结 321

    11.12 关键术语、复322

    11.12.1 关键术语 322

    11.12.2 复322

    11.12.3 322

    第12章 文件管理 324

    12.1 概述 324

    12.1.1 文件和文件系统 324

    12.1.2 文件结构 325

    12.1.3 文件管理系统 326

    12.2 文件组织和访问 327

    12.2.1 堆 328

    12.2.2 顺序文件 328

    12.2.3 索引顺序文件 329

    12.2.4 索引文件 329

    12.2.5 直接文件或散列文件 330

    12.3 B树 330

    12.4 文件目录 332

    12.4.1 内容 332

    12.4.2 结构 333

    12.4.3 命名 334

    12.5 文件共享 335

    12.5.1 访问权限 335

    12.5.2 同时访问 335

    12.6 记录组块 336

    12.7 辅存管理 337

    12.7.1 文件分配 337

    12.7.2 空闲空间管理 339

    12.7.3 卷 341

    12.7.4 可靠性 341

    12.8 UNIX文件管理 341

    12.8.1 索引节点 342

    12.8.2 文件分配 343

    12.8.3 目录 344

    12.8.4 卷结构 344

    12.9 Linux虚拟文件系统 344

    12.9.1 块对象 345

    12.9.2 索引节点对象 346

    12.9.3 目录项对象 346

    12.9.4 文件对象 346

    12.9.5 缓存 346

    12.10 Windows文件系统 347

    12.10.1 NTFS的重要特征 347

    12.10.2 NTFS卷和文件结构 347

    12.10.3 可恢复性 349

    12.11 Android文件系统 350

    12.11.1 文件系统 350

    12.11.2 SQLite 350

    12.12 小结 351

    12.13 关键术语、复351

    12.13.1 关键术语 351

    12.13.2 复351

    12.13.3 352


    第六部分 嵌入式系统


    第13章 嵌入式操作系统 354

    13.1 嵌入式系统 354

    13.1.1 嵌入式系统概念 354

    13.1.2 通用处理器和专用处理器 355

    13.1.3 微处理器 355

    13.1.4 微控制器 356

    13.1.5 深度嵌入式系统 357

    13.2 嵌入式操作系统的特性 357

    13.2.1 主环境和目标环境 358

    13.2.2 开发方法 359

    13.2.3 适配现有的操作系统 359

    13.2.4 根据目标建立的嵌入式

    操作系统 359

    13.3 嵌入式Linux 360

    13.3.1 嵌入式Linux系统的特性 360

    13.3.2 嵌入式Linux文件系统 361

    13.3.3 嵌入式Linux的优势 361

    13.3.4 μClinux 362

    13.3.5 Android 363

    13.4 TinyOS 364

    13.4.1 无线传感器网络 364

    13.4.2 TinyOS的目标 365

    13.4.3 TinyOS的组件 365

    13.4.4 TinyOS的调度程序 367

    13.4.5 配置示例 367

    13.4.6 TinyOS的资源接口 369

    13.5 关键术语、复370

    13.5.1 关键术语 370

    13.5.2 复370

    13.5.3 370

    第14章 虚拟机 372

    14.1 虚拟机概念 372

    14.2 虚拟机管理程序 374

    14.2.1 虚拟机管理程序 374

    14.2.2 半虚拟化 375

    14.2.3 硬件辅助虚拟化 376

    14.2.4 虚拟设备 376

    14.3 容器虚拟化 377

    14.3.1 内核控制组 377

    14.3.2 容器的概念 377

    14.3.3 容器文件系统 379

    14.3.4 微服务 380

    14.3.5 Docker 380

    14.4 处理器问题 381

    14.5 内存管理 382

    14.6 输入/输出管理 383

    14.7 VMware ESXi 384

    14.8 微软Hyper-V与Xen系列 385

    14.9 Java虚拟机 386

    14.10 Linux VServer虚拟机架构 386

    14.10.1 架构 387

    14.10.2 程调度 387

    14.11 小结 388

    14.12 关键术语、复388

    14.12.1 关键术语 388

    14.12.2 复389

    14.12.3 389

    第15章 操作系统技术 390

    15.1 入侵者与恶意软件 390

    15.1.1 系统访问威胁 390

    15.1.2 应对措施 391

    15.2 缓冲区溢出 392

    15.2.1 缓冲区溢出攻击 392

    15.2.2 编译时防御 394

    15.2.3 运行时防御 396

    15.3 访问控制 397

    15.3.1 文件系统访问控制 397

    15.3.2 访问控制策略 399

    15.4 UNIX访问控制 402

    15.4.1 传统UNIX文件访问控制 402

    15.4.2 UNIX中的访问控制列表 403

    15.5 操作系统加固 404

    15.5.1 操作系统安装:初始安装

    与后续更新 404

    15.5.2 删除不必要的服务、应用

    与协议 405

    15.5.3 对用户、组和认证过程
    15.5.4 对资源控行配置 405

    15.5.5 安装额外的控制工具 406

    15.5.6 对系统行测试 406

    15.6 性维护 406

    15.6.1 记录日志 406

    15.6.2 数据备份和存档 407

    15.7 Windows性 407

    15.7.1 访问控制方案 407

    15.7.2 访问令牌 408

    15.7.3 描述符 408

    15.8 小结 410

    15.9 关键术语、复411

    15.9.1 关键术语 411

    15.9.2 复411

    15.9.3 411

    第16章 云与物联网操作系统 413

    16.1 云计算 413

    16.1.1 云计算要素 413

    16.1.2 云服务模型 414

    16.1.3 云部署模型 415

    16.1.4 云计算参考架构 416

    16.2 云操作系统 418

    16.2.1 基础设施即服务 419

    16.2.2 云操作系统的需求 420

    16.2.3 云操作系统的基本架构 420

    16.2.4 OpenStack 424

    16.3 物联网 428

    16.3.1 物联网中的物 429

    16.3.2 升级换代 429

    16.3.3 物联网支持设备的组件 429

    16.3.4 物联网和云环境 429

    16.4 物联网操作系统 431

    16.4.1 受限设备 431

    16.4.2 物联网操作系统的要求 432

    16.4.3 物联网操作系统架构 433

    16.4.4 RIOT 434

    16.5 关键术语和复435

    16.5.1 关键术语 435

    16.5.2 复436

    附录A 并发主题 437

    附录B 编程和操作系统项目 446

    参考文献 450







    "更新了Linux的内容。为反映第八版后Linux内核的近期新变化,更新和扩展了Linux的内容。 更新了Android的内容。为反映第八版后Android内核的近期新变化,更新和扩展了Android的内容。 新增了虚拟化方面的内容。接近改写了关于虚拟机的章节,更好地组织了内容,加入了更广泛的新内容。此外,新增加了一节关于容器使用方面的内容。 新增了云操作系统的内容。新增了云操作系统的介绍,包括云计算概述、云操作系统原理和需求,以及流行开源云操作系统OpenStack。 新增了物联网操作系统的内容。新增了物联网操作系统的介绍,包括物联网概述、物联网操作系统原理和需求,以及流行开源物联网操作系统RIOT。 更新和扩展了嵌入式操作系统的内容。本章实质性的修改和扩展内容包括: 扩展了嵌入式系统章节,增加了微控制器和深度嵌入式系统的介绍。 扩展和更新了嵌入式操作系统的概述部分。扩展了嵌入式Linux的内容,新增了关于流行嵌入式Linux系统μClinux的介绍。 ?并发。在项目手册中增加了新项目,以便更好地帮助学生理解并发的原理。"

    售后保障

    最近浏览

    猜你喜欢

    该商品在当前城市正在进行 促销

    注:参加抢购将不再享受其他优惠活动

    x
    您已成功将商品加入收藏夹

    查看我的收藏夹

    确定

    非常抱歉,您前期未参加预订活动,
    无法支付尾款哦!

    关闭

    抱歉,您暂无任性付资格

    此时为正式期SUPER会员专享抢购期,普通会员暂不可抢购