注册 登录 进入教材巡展 进入在线书城
#
  • #

出版时间:2016年2月

出版社:电子工业出版社

以下为《操作系统原理与实践》的配套数字资源,这些资源在您购买图书后将免费附送给您:
试读
  • 电子工业出版社
  • 9787121278464
  • 1-1
  • 294294
  • 16开
  • 2016年2月
  • 320
  • 计算机科学与技术(工学/理学)
  • 研究生、本科
内容简介
操作系统是计算机系统的核心和灵魂,是其他软件运行的支撑环境,其性能的优劣直接影响整个计算机系统的性能。本书采用理论与实践相结合的方式,系统地介绍了现代操作系统的经典理论和最新应用技术,选择具有代表性的主流操作系统Linux和Windows作为案例贯穿全书。 全书共分8章,基本覆盖了操作系统系统的基本概念、设计原理和实现技术,尽可能系统全面地介绍了现代操作系统的基本原理和实现技术。其中,第1章介绍了操作系统的概念、发展历史、操作系统结构和设计的相关问题;第2章讨论了操作系统的工作环境和用户界面;第3章和第4章详细阐述了处理器管理、进程同步、通信机制及死锁;第5章~第7章分别介绍了操作系统的存储管理、文件管理和设备管理功能;第8章分析了操作系统的安全和保护问题。
目录
第1章 操作系统概论 1
1.1 概述 1
1.1.1 操作系统的地位 1
1.1.2 操作系统的目标 3
1.1.3 操作系统的作用 3
1.1.4 操作系统的特征 4
1.1.5 操作系统的功能 6
1.2 操作系统的形成和发展 8
1.2.1 人工操作阶段 8
1.2.2 管理程序阶段 9
1.2.3 多道批处理 10
1.2.4 分时系统与实时系统的出现 12
1.2.5 操作系统的进一步发展 14
案例研究:Linux和Windows操作系统 16
1.3 操作系统结构 18
1.3.1 操作系统的设计 18
1.3.2 操作系统结构的类型 19
案例研究:Windows Vista和Linux系统结构 23
1.4 总结与提高 25
习题1 25
第2章 操作系统用户工作环境的界面 26
2.1 操作系统用户工作环境 26
2.1.1 操作系统的工作模式 27
2.1.2 系统的生成 28
2.1.3 系统的启动 28
案例研究:Linux系统启动过程 29
1.2 操作系统用户界面 31
2.2.1 操作系统提供的服务 31
2.2.2 命令接口 32
案例研究:Linux系统的Shell程序 33
2.2.3 图形用户接口 34
案例研究:Windows Explore VS. Linux Shell 34
2.2.4 程序接口 35
案例研究:Linux操作系统的系统调用号和系统调用表 39
2.3 总结与提高 40
习题2 41
实验1 向Linux内核增加系统调用 41
第3章 处理器管理 45
3.1 进程的概述 45
3.1.1 程序的执行方式 45
3.1.2 进程的概念 46
3.1.3 进程的状态 48
3.1.4 进程描述 50
实例分析:Linux系统的进程 52
3.2 进程的控制 55
3.2.1 进程控制机构 55
3.2.2 进程操作 56
实例研究:在Linux和Windows系统中创建进程 57
3.3 线程 60
3.3.1 线程的概念 60
3.3.2 线程的实现 62
3.3.3 多线程模型 64
3.3.4 线程池 65
实例研究:Windows Server 2003和Linux线程 66
3.4 处理器调度 69
3.4.1 处理器调度的层次 69
3.4.2 进程调度 70
3.4.3 选择调度算法的准则 71
3.5 调度算法 72
3.5.1 先来先服务调度算法 72
3.5.2 最短作业优先调度算法 73
3.5.3 优先级调度算法 73
3.5.4 轮转法调度 74
3.5.5 多级队列调度 75
3.5.6 多级反馈队列调度 76
3.5.7 高响应比优先调度 77
3.6 多处理器调度和实时调度 77
3.6.1 多处理器调度 77
3.6.2 实时调度 78
实例研究:Windows Server 2003 和Linux进程调度 78
3.7 总结与提高 82
习题3 83
实验2 Shell编程 84
实验3 Windows多线程控制台程序 87
第4章 进程同步与死锁 91
4.1 进程同步和互斥 91
4.1.1 进程的同步 92
4.1.2 进程的互斥 92
4.1.3 信号量机制 94
4.2 经典同步问题 100
4.2.1 生产者-消费者问题 100
4.2.2 读者-写者问题 102
4.2.3 哲学家进餐问题 103
4.2.4 理发师问题 104
4.3 管程 105
4.3.1 管程的基本概念 105
4.3.2 条件变量 106
4.3.3 利用管程解决生产者-消费者问题 107
4.4 操作系统同步实例分析 108
4.4.1 Windows Server 2003中的进程同步 109
4.4.2 Linux中的进程同步 110
4.5 进程通信 111
4.5.1 进程通信的方式 111
4.5.2 消息传递系统 112
4.5.3 消息缓冲队列通信机制 115
4.5.4 客户机/服务器系统通信 116
实例研究:Windows和Linux系统进程通信机制 118
4.6 死锁 127
4.6.1 死锁的概念 127
4.6.2 死锁产生的原因和必要条件 128
4.6.3 死锁的描述 129
4.6.4 处理死锁的方法 131
4.7 死锁的预防和避免 131
4.7.1 死锁的预防 131
4.7.2 死锁的避免 133
4.8 死锁的检测和解除 137
4.8.1 死锁的检测 137
4.8.2 死锁的解除 140
4.9 总结与提高 141
习题4 142
实验4 有限缓冲区问题 144
第5章 存储管理 149
5.1 存储管理的功能 149
5.1.1 用户程序的处理过程 150
5.1.2 存储管理的功能 151
5.2 连续内存分配技术 155
5.2.1 分区管理基本原理 155
5.2.2 分区的分配与回收 157
5.2.3 碎片问题 159
5.3 内存不足时的管理 160
5.3.1 覆盖 160
5.3.2 交换 161
实例分析:UNIX和Windows 2000中的交换技术 162
5.4 基本分页存储管理技术 162
5.4.1 分页存储管理的基本原理 163
5.4.2 地址映射 164
5.4.3 页表的结构 166
5.4.4 页面的共享 167
5.5 分段存储管理技术 168
5.5.1 分段存储管理的基本原理 168
5.5.2 地址转换 169
5.5.3 段的共享和保护 169
5.5.4 段页式存储管理 171
段页式技术实例:Intel Pentium处理器 173
5.6 虚拟存储器 174
5.6.1 虚拟内存 175
5.6.2 虚拟内存的特征 176
5.7 请求分页存储管理技术 176
5.7.1 请求分页存储管理基本原理 176
5.7.2 页面置换算法 178
5.7.3 页面分配和置换 184
5.7.4 工作集模型 186
5.8 存储管理实例 187
5.8.1 Windows Server 2003内存管理 187
5.8.2 Linux操作系统的存储管理 191
5.9 总结与提高 198
习题5 198
第6章 文件管理 201
6.1 文件的概念 201
6.1.1 文件及其分类 201
6.1.2 文件属性 203
6.1.3 文件组织 203
6.1.4 文件访问方法 205
6.2 目录结构 206
6.2.1 文件控制块和文件目录 206
6.2.2 单级目录 208
6.2.3 二级目录 208
6.2.4 树形目录 209
实例研究:DOS和UNIX的目录结构 211
6.2.5 目录的实现 212
6.3 文件和目录操作 213
6.3.1 文件操作 213
实例研究:Linux和Windows 系统的文件操作 214
6.3.2 目录操作 218
6.4 文件系统实现 218
6.4.1 文件系统结构 219
6.4.2 文件系统的实现 220
6.4.3 文件存储空间的分配 221
6.4.4 空闲空间的管理 226
6.5 文件共享和保护 228
6.5.1 文件的共享 229
实例研究:Linux中的文件共享 230
6.5.2 文件的保护 231
6.5.3 文件系统的可靠性 232
6.6 Windows和Linux的文件系统 233
6.6.1 Windows Server 2003文件管理 233
6.6.2 Linux文件管理 239
6.7 总结与提高 244
习题6 245
实验5 简单文件系统的实现 246
第7章 设备管理 250
7.1 设备管理的概念 250
7.1.1 设备的分类 250
7.1.2 设备管理的功能和任务 251
7.1.3 I/O系统结构 252
7.1.4 设备控制器 252
7.2 I/O控制方式 254
7.2.1 轮询方式 254
7.2.2 中断方式 255
7.2.3 DMA方式 256
7.2.4 通道控制方式 258
7.3 中断技术 260
7.3.1 中断的基本概念 260
7.3.2 中断的分类与优先级 261
7.3.3 软中断 261
7.3.4 中断处理过程 262
7.4 缓冲技术 263
7.4.1 缓冲的引入 263
7.4.2 缓冲的种类 263
7.4.3 缓冲池的管理 264
7.5 设备分配 266
7.5.1 设备分配的数据结构 266
7.5.2 设备分配的原则和策略 267
7.5.3 设备分配技术 269
7.5.4 SPOOLing系统 269
7.6 I/O软件原理 270
7.6.1 I/O软件的设计目标和原则 271
7.6.2 I/O中断处理程序 271
7.6.3 设备驱动程序 271
7.6.4 与硬件无关的I/O软件 273
7.6.5 用户空间的I/O软件 274
7.7 磁盘调度和管理 275
7.7.1 磁盘的结构 275
7.7.2 磁盘调度 276
7.7.3 磁盘管理 280
7.8 Windows I/O系统和Linux 的设备管理 281
7.8.1 Windows Server 2003的I/O系统 281
7.8.2 Linux的设备管理 285
7.9 总结与提高 287
习题7 288
实验6 软盘驱动程序 289
第8章 操作系统安全和保护 295
8.2 操作系统和计算机系统安全 295
8.1.1 计算机系统安全 295
8.1.2 操作系统安全 296
8.1.3 安全威胁及其分类 297
8.2 操作系统安全策略 299
8.2.1 安全策略和机制 299
8.2.2 身份认证机制 299
Kerberos网络身份认证 300
8.2.3 授权机制 301
8.2.4 加密机制 302
8.2.5 审计 302
8.3 操作系统的内部保护机制 302
8.3.1 操作系统保护层次 302
8.3.2 内存储器的保护 303
8.3.3 面向用户的访问控制 303
8.3.4 面向数据的访问控制 304
8.4 访问控制机制 304
8.4.1 保护域 304
8.4.2 访问矩阵 306
8.4.3 访问矩阵的实现 307
8.5 总结与提高 308
习题8 308
参考文献 309