《计算机作业系统(方敏)》是2014年西安电子科技大学出版社出版的图书,作者是方敏。
基本介绍
- 书名:计算机作业系统(方敏)
- 作者:方敏
- ISBN:978-7-5606-1432-8
- 定价:38.25元
- 出版社:西安电子科技大学出版社
- 出版时间:2014-10
内容简介
本书从原理、技术、设计实现三个方面讲述了计算机作业系统,即首先从作业系统设计原理出发,介绍作业系统的设计思想和实现技术,然后回到目前普及的现代作业系统上加以实例讲解和深化,最后是实际套用。全书以UNIX和Windows 2000/XP为实例辅助原理介绍,并给出相应的编程接口和实用操作。这种集原理、技术以及设计实现于一体的特点是本书的独到之处。
本书适合作为计算机专业本科及其他相关专业的作业系统教程,对于从事计算机套用和开发的技术人员也具有很高的参考价值。
图书目录
第1章 作业系统概述 1
1.1 作业系统的地位 1
1.2 作业系统的定义 2
1.3 作业系统的特徵 3
1.4 作业系统的发展 4
1.4.1 作业系统的发展历史 4
1.4.2 作业系统的分类 6
1.5 作业系统结构研究 17
1.5.1 资源管理的观点 17
1.5.2 层次结构观点 18
1.5.3 模组接口法 19
1.5.4 虚拟机 19
1.5.5 客户机/伺服器系统 20
1.5.6 用户观点 20
1.6 核心体系结构模型 21
1.6.1 微核心 21
1.6.2 单核心 22
1.7 UNIX作业系统 23
1.7.1 UNIX作业系统概述 23
1.7.2 UNIX系统的特点 23
1.7.3 UNIX作业系统的结构 24
1.8 Windows NT/2000/XP简介 25
1.8.1 Windows NT 25
1.8.2 Windows 2000 25
1.8.3 Windows XP 26
习题 26
第2章 作业管理和用户接口 28
2.1 作业的组织和管理 28
2.1.1 作业和作业处理过程 28
2.1.2 作业的输入/输出方式 30
2.1.3 作业控制块 32
2.1.4 作业调度 32
2.2 作业控制方式 38
2.2.1 脱机作业控制方式 38
2.2.2 在线上作业控制方式 39
2.3 系统功能调用 42
2.3.1 系统调用及实现 42
2.3.2 系统调用的实现过程 47
2.4 图形用户接口 49
2.4.1 概述 49
2.4.2 Xwindow系统 51
2.4.3 Windows系统 52
2.5 用户管理 54
2.5.1 UNIX的用户管理 54
2.5.2 Windows NT的用户管理 55
习题 56
第3章 进程管理 57
3.1 进程的引入 57
3.1.1 顺序程式 57
3.1.2 多道程式设计 58
3.1.3 程式并发执行的特性 59
3.1.4 与时间有关的错误 60
3.2 进程定义与控制 60
3.2.1 进程的概念 61
3.2.2 进程控制块 63
3.2.3 进程的基本状态及其转换 64
3.2.4 进程控制 65
3.2.5 进程的特徵 68
3.3 进程调度 68
3.3.1 确定进程调度算法的原则 68
3.3.2 进程调度算法 69
3.4 进程间的相互作用 70
3.4.1 进程间的同步和互斥 71
3.4.2 进程的同步机制 73
3.4.3 IPC经典问题 78
3.4.4 进程的同步机制--管程 81
3.5 进程通信 83
3.5.1 概述 83
3.5.2 共享记忆体模式 83
3.5.3 讯息传递方式 84
3.5.4 管道 86
3.6 执行绪 88
3.6.1 执行绪的引入 88
3.6.2 执行绪的实现机制 90
3.6.3 执行绪与进程的比较 91
3.7 UNIX进程模型 92
3.7.1 进程模型的基本结构和工作过程 92
3.7.2 进程状态及转换 95
3.7.3 进程调度算法 95
3.7.4 UNIX的进程控制与管理 96
3.8 Windows 2000/XP的进程和执行绪模型 105
3.8.1 Windows 2000/XP的进程和执行绪模型总述 106
3.8.2 Windows 2000/XP的进程实现 106
3.8.3 Windows 2000/XP的执行绪实现 109
3.8.4 Windows 2000/XP的执行绪调度 111
3.8.5 空闲执行绪 113
3.8.6 多执行绪编程 113
习题 116
第4章 死锁 119
4.1 死锁的基本概念 119
4.1.1 资源 120
4.1.2 产生死锁的四个必要条件 120
4.2 产生死锁的示例 120
4.3 解决死锁的方案 122
4.3.1 死锁的预防 122
4.3.2 死锁的避免 125
4.3.3 死锁的检测和解除 128
4.4 其他相关问题 131
4.4.1 两阶段加锁 131
4.4.2 饥饿 132
习题 132
第5章 存储管理 135
5.1 概述 135
5.1.1 存储体系 135
5.1.2 地址重定位 136
5.1.3 连结 138
5.1.4 存储管理的目的 140
5.1.5 存储管理的任务 141
5.1.6 各种存储管理方案 141
5.2 分区存储管理方案 142
5.2.1 单一连续分区存储管理 142
5.2.2 固定分区 143
5.2.3 可变分区 144
5.2.4 可再定位式分区 150
5.2.5 多重分区 151
5.3 页式存储管理 151
5.3.1 基本原理 151
5.3.2 页式存储管理的地址变换 153
5.3.3 硬体支持 155
5.3.4 优缺点 156
5.4 段式存储管理 157
5.4.1 基本思想 157
5.4.2 分段式管理的数据结构 159
5.4.3 分段式管理的地址变换 159
5.4.4 分段式管理的硬体支持 160
5.4.5 分段式管理的优缺点 160
5.4.6 分页式管理和分段式管理的比较 160
5.5 段页式存储管理 161
5.5.1 基本思想 161
5.5.2 段页式存储管理的地址变换 162
5.5.3 硬体支持 162
5.6 交换技术与覆盖技术 163
5.6.1 覆盖技术 163
5.6.2 交换技术 164
5.7 虚拟存储 164
5.7.1 虚拟存储管理的引入 164
5.7.2 虚拟页式存储管理 166
5.7.3 性能问题 173
5.7.4 虚拟段式存储管理 176
5.8 高速缓冲存储器 177
5.8.1 高速快取的组织 177
5.8.2 快取的工作过程 178
5.9 记忆体管理实例分析 179
5.9.1 UNIX S5的记忆体管理 179
5.9.2 Windows 2000/XP的记忆体管理 186
习题 192
第6章 档案管理 195
6.1 概述 195
6.1.1 档案与档案系统 195
6.1.2 档案的分类 196
6.2 档案的结构及档案存取方式 197
6.2.1 档案的逻辑结构 197
6.2.2 存储介质 198
6.2.3 档案的物理结构 202
6.2.4 档案结构、档案存取方式与档案存储介质的关係 206
6.3 档案目录 208
6.3.1 档案目录的内容 208
6.3.2 目录结构 209
6.4 档案系统的实现 215
6.4.1 档案空间的分配和管理 216
6.4.2 记忆体中所需的表目 218
6.4.3 外存空间管理 222
6.5 档案系统的使用 224
6.5.1 档案操作 224
6.5.2 档案的系统调用 226
6.5.3 档案共享 231
6.6 档案系统的可靠性与安全性 235
6.6.1 档案系统的可靠性 235
6.6.2 档案系统的安全性 238
6.6.3 档案的保护机制 240
6.7 档案系统的性能问题 241
6.7.1 块高速快取 242
6.7.2 磁碟调度 243
6.7.3 信息的最佳化分布 246
6.8 Windows 2000/XP 档案系统实例分析 246
6.8.1 Windows 2000/XP 档案系统概述 246
6.8.2 Windows 2000/XP 档案系统模型和FSD体系结构 250
6.8.3 NTFS的档案驱动程式 253
6.8.4 NTFS的磁碟结构 255
6.8.5 NTFS的实现机制 257
6.8.6 NTFS的可恢复性支持 260
6.8.7 NTFS的安全性支持 261
习题 262
第7章 设备管理 266
7.1 概述 266
7.1.1 I/O系统的结构和控制方式 266
7.1.2 设备的分类 269
7.1.3 设备管理的目标和任务 270
7.2 I/O软体的组成 271
7.2.1 I/O软体的目标 271
7.2.2 中断处理程式 271
7.2.3 设备驱动程式 274
7.2.4 与设备无关的系统软体 275
7.2.5 用户空间的I/O软体 277
7.3 具有通道的设备管理 278
7.3.1 通道的类型 278
7.3.2 "瓶颈"问题 279
7.3.3 通道命令与通道程式 279
7.3.4 通道的工作原理 281
7.4 与设备管理有关的技术 283
7.4.1 DMA技术 283
7.4.2 缓冲技术 284
7.4.3 汇流排技术 288
7.4.4 即插即用技术 291
7.5 设备管理中的数据结构 293
7.5.1 设备管理中的数据结构 293
7.5.2 设备的分配与回收 294
7.5.3 设备的处理 294
7.6 UNIX设备管理实例分析 296
7.6.1 UNIX块设备管理的主要数据结构 296
7.6.2 UNIX的缓冲区管理 299
7.6.3 块设备管理 301
7.6.4 字元设备管理 304
7.7 Windows 2000/XP 设备管理机制实例分析 306
7.7.1 Windosw 2000/XP输入/输出系统的体系结构 306
7.7.2 核心态模组 307
7.7.3 输入/输出系统的数据结构 308
7 .7.4 Windows 2000/XP的设备驱动程式 311
7.7.5 Windows 2000/XP 的I/O处理 312
习题 314
第8章 网路作业系统 315
8.1 网路作业系统的功能 315
8.1.1 网路作业系统简介 315
8.1.2 网路作业系统的功能和特性 315
8.1.3 网路作业系统的功能结构 318
8.1.4 网路作业系统的逻辑构成 318
8.1.5 网路作业系统与OSI-RM 320
8.2 Windows NT/2000/XP 321
8.2.1 Windows NT/2000/XP网路基本概念 321
8.2.2 Windows NT/2000网路结构 327
8.3 UNIX网路档案系统 329
8.4 Linux作业系统 329
8.4.1 Linux的特点 330
8.4.2 Linux系统结构及档案组织 330
8.4.3 Linux系统启动和初始化 332
8.4.4 Linux的常用软体 333
8.5 对等式区域网路 333
8.5.1 对等式区域网路作业系统 333
8.5.2 Windows 98的网路技术 334
习题 334
第9章 分散式计算机系统 336
9.1 分散式计算机系统 336
9.1.1 概述 336
9.1.2 分散式系统的特徵 337
9.1.3 分散式系统的结构 337
9.1.4 分散式系统的设计方法 341
9.2 分散式系统的设计 341
9.3 分散式系统中的通信问题 344
9.3.1 传送策略 344
9.3.2 连线策略 344
9.3.3 争夺处理 345
9.3.4 保密 346
9.4 讯息传递 347
9.4.1 异步型 347
9.4.2 同步型 347
9.4.3 组通信 348
9.5 远程过程调用 349
9.5.1 概述 349
9.5.2 基本RPC操作 350
9.5.3 两种通信方式的比较 352
9.6 进程迁移 353
9.6.1 数据和计算的迁移 353
9.6.2 引入进程迁移的原因 354
9.6.3 进程迁移机制 355
9.6.4 迁移的协商 356
9.7 分散式作业系统中的进程同步 357
9.8 分散式作业系统中的进程互斥 358
9.9 分散式系统的资源管理 361
9.10 死锁处理 363
习题 365
第10章 套用开发篇 366
10.1 UNIX Shell 366
10.1.1 Shell基础 366
10.1.2 正文全萤幕编辑程式 vi 367
10.2 Shell程式设计 373
10.2.1 Shell变数及其赋值 373
10.2.2 命令表与命令行 375
10.2.3 流程控制命令 376
10.2.4 命令替换与参数替换 380
10.2.5 Shell过程的运行 381
10.3 UNIX实用程式 381
10.3.1 目录操作与档案操作命令 381
10.3.2 过滤器 389
10.4 UNIX程式设计 391
10.4.1 档案系统程式设计 391
10.4.2 高级进程间的通信 393
10.5 Windows应用程式设计 396
10.5.1 WIN32 API 396
10.5.2 Windows应用程式的设计模式 397
10.5.3 Windows应用程式的基本结构 403
习题 406
参考文献 409