当前位置:首页 > 工业技术
计算机操作系统原理
计算机操作系统原理

计算机操作系统原理PDF电子书下载

工业技术

  • 电子书积分:11 积分如何计算积分?
  • 作 者:张琼声编著
  • 出 版 社:东营:中国石油大学出版社
  • 出版年份:2012
  • ISBN:9787563637997
  • 页数:293 页
图书介绍:本书主要介绍了操作系统的定义、发展、特征、功能、体系结构,程序的并发执行,进程的描述和控制,进程同步和进程调度,死锁,内存管理,虚拟内存管理,I/O设备管理及文件系统等内容。
《计算机操作系统原理》目录

第1章 操作系统概述 1

1.1 什么是操作系统? 1

1.1.1 操作系统是计算机用户与计算机硬件之间的接口 1

1.1.2 操作系统是计算机资源的管理者 4

1.2 操作系统的发展 5

1.2.1 无操作系统 5

1.2.2 单道批处理系统 5

1.2.3 多道程序系统 6

1.2.4 微机操作系统 7

1.2.5 实时操作系统 8

1.2.6 批处理系统、分时系统、实时系统的特点 8

1.2.7 操作系统产品现状 10

1.3 操作系统的特征 12

1.4 操作系统的功能 13

1.4.1 存储器管理功能 13

1.4.2 进程管理功能 15

1.4.3 设备管理功能 15

1.4.4 文件管理功能 16

1.4.5 提供用户接口 16

1.5 操作系统的体系结构 17

1.5.1 软件体系结构简介 17

1.5.2 操作系统体系结构分析 17

1.6 POSIX标准 22

1.7 指令的执行 23

习题 26

第2章 进程的描述与控制 28

2.1 程序的并发执行 28

2.1.1 程序的顺序执行 28

2.1.2 程序的并发执行 29

2.2 进程的描述 31

2.2.1 进程的定义与特征 31

2.2.2 进程控制块 32

2.2.3 进程的基本状态 39

2.2.4 进程队列 43

2.3 进程的控制 43

2.3.1 进程的创建 43

2.3.2 进程的阻塞 45

2.3.3 进程的唤醒 45

2.3.4 进程的终止 46

2.3.5 操作系统的启动和系统中进程的出现 46

2.4 操作系统内核 48

2.4.1 中断 48

2.4.2 时钟管理 53

2.4.3 系统调用 56

2.5 线程 59

2.5.1 线程的描述 60

2.5.2 线程的控制 63

习题 66

第3章 进程同步 68

3.1 进程同步的基本概念 68

3.1.1 临界资源 68

3.1.2 同步机制应遵循的准则 70

3.2 信号量机制 70

3.2.1 整型信号量机制 71

3.2.2 记录型信号量机制 76

3.2.3 AND型信号量机制 81

3.3 经典同步问题 82

3.3.1 生产者-消费者问题 82

3.3.2 读者-写者问题 84

3.4 管程 85

3.4.1 管程的基本概念 86

3.4.2 管程的应用 87

习题 89

第4章 进程调度 91

4.1 调度类型和模型 91

4.1.1 调度类型 91

4.1.2 调度队列模型 92

4.2 调度算法 94

4.2.1 选择调度方式和算法的若干准则 94

4.2.2 调度算法 95

4.3 实时系统中的调度 101

4.3.1 实现实时调度的基本条件 101

4.3.2 常用的几种实时调度算法 103

4.4 进程切换 105

4.5 Linux进程调度实例 106

4.5.1 Linux2.4的进程调度 106

4.5.2 Linux2.6的进程调度 108

4.6 多处理机调度 113

4.6.1 多处理机系统(MPS)的类型 113

4.6.2 多处理机系统中的进程分配方式 114

4.6.3 进程(线程)调度方式 115

习题 117

第5章 死锁 118

5.1 产生死锁的原因和必要条件 118

5.1.1 产生死锁的原因 118

5.1.2 产生死锁的必要条件 119

5.2 处理死锁的基本方法 120

5.2.1 死锁的预防 121

5.2.2 死锁的避免 122

5.2.3 利用银行家算法避免死锁 124

5.2.4 死锁的检测和解除 129

习题 132

第6章 存储器管理 134

6.1 存储器的层次结构 134

6.2 程序的装入和链接 136

6.2.1 程序的装入 136

6.2.2 程序的链接 138

6.3 连续分配存储管理方式 140

6.3.1 单一连续分配 140

6.3.2 固定分区分配 141

6.3.3 动态分区分配 142

6.3.4 紧凑 151

6.4 多道程序环境下的对换 152

6.5 基本分页存储管理方式 153

6.5.1 分页存储管理的基本方法 154

6.5.2 快表 158

6.5.3 两级和多级页表 161

6.5.4 反置页表 165

6.6 分段存储管理 165

6.6.1 分段机制的引入 165

6.6.2 分段系统的基本原理 166

6.6.3 段页式存储管理 169

6.7 80X86的常规内存寻址 171

6.7.1 内存地址 171

6.7.2 硬件中的分段 171

6.7.3 Linux中的分段 173

6.7.4 硬件中的分页 174

6.7.5 Linux的伙伴系统算法 176

习题 177

第7章 虚拟内存管理 180

7.1 虚拟存储器概述 180

7.1.1 引入虚拟存储技术的背景 180

7.1.2 虚拟存储器的定义 180

7.1.3 引入虚拟内存技术是否可行 181

7.2 虚拟存储器的实现方式 181

7.3 请求分页存储管理方式 182

7.3.1 请求分页中的硬件支持 183

7.3.2 页面分配 185

7.3.3 页面调入策略 188

7.4 页面置换算法 189

7.4.1 最佳置换算法和先进先出算法、 189

7.4.2 最近最久未使用置换算法 191

7.4.3 LRU的近似算法 193

7.4.4 其他置换算法 194

7.4.5 Solaris2的请求分页 195

7.4.6 Linux的请求分页 195

7.5 请求分页系统的性能分析 195

7.5.1 缺页率对有效访问时间的影响 196

7.5.2 工作集 196

7.5.3 抖动产生的原因和预防方法 197

7.6 请求分段存储管理方式 198

7.6.1 段表机制 198

7.6.2 缺段中断机构 198

7.6.3 地址变换机构 198

习题 199

第8章 文件系统 201

8.1 文件 201

8.1.1 文件命名 201

8.1.2 文件结构 202

8.1.3 文件类型 203

8.1.4 文件存取 203

8.1.5 文件属性 204

8.1.6 文件操作 204

8.2 目录 205

8.2.1 层次目录系统 205

8.2.2 路径名 208

8.2.3 目录操作 208

8.3 文件系统的实现 209

8.3.1 实现文件 209

8.3.2 实现目录 212

8.3.3 磁盘空间管理 215

8.4 Linux的文件系统 217

8.4.1 虚拟文件系统(VFS) 217

8.4.2 Ext2文件系统 218

8.5 文件系统的安全性 224

8.5.1 安全环境 224

8.5.2 Internet蠕虫 225

8.5.3 一般的安全性攻击 226

8.5.4 病毒 227

8.5.5 安全性的设计原则 228

8.5.6 用户验证 228

8.6 保护机制 230

8.6.1 保护域 230

8.6.2 存取控制表 233

8.6.3 权限 234

8.6.4 保护模型 235

8.6.5 隐蔽通道 237

习题 238

第9章 I/O设备管理 240

9.1 I/O系统的组成 240

9.1.1 I/O系统的结构 240

9.1.2 I/O设备的分类 241

9.1.3 设备控制器 242

9.1.4 I/O通道 244

9.2 I/O控制方式 244

9.2.1 轮询控制方式 245

9.2.2 中断控制方式 245

9.2.3 DMA控制方式 245

9.2.4 通道控制方式 247

9.3 缓冲管理 248

9.3.1 缓冲的引入 248

9.3.2 单缓冲 249

9.3.3 双缓冲 250

9.3.4 循环缓冲 251

9.3.5 缓冲池 252

9.4 设备分配 254

9.4.1 设备分配中的数据结构 254

9.4.2 设备分配时应考虑的若干因素 255

9.4.3 设备独立性 257

9.4.4 独占设备的分配程序 258

9.4.5 SPOOLing技术 259

9.5 I/O软件原理 260

9.5.1 设备管理软件的目标 260

9.5.2 中断处理程序 262

9.5.3 设备驱动程序 262

9.5.4 与硬件无关的I/O软件 263

9.6 磁盘管理 263

9.6.1 磁盘结构 264

9.6.2 磁盘调度 267

9.6.3 磁盘高速缓存 270

9.6.4 提高磁盘I/O速度的其他方法 272

习题 273

附录 275

附录1 Tinix的boot.asm源码及注释 275

附录2 Linux2.6.11的进程控制块 286

参考文献 291

后记 293

返回顶部