《操作系统》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:罗俊松,唐源,唐云编著
  • 出 版 社:成都:电子科技大学出版社
  • 出版年份:2015
  • ISBN:9787564731496
  • 页数:271 页
图书介绍:本书全面系统地介绍了操作系统的原理和相关实现技术。全书共分9章。前6章在介绍操作系统的基本概念、功能、特征基础上,详细介绍了操作系统涉及到的处理机管理、存储器管理、设备管理、文件管理、死锁等基本内容。第7章介绍多处理机、网络以及分布式操作系统的基本原理。第8章介绍操作系统的安全性。第9章是开发工具和开发过程简介。全书从教学实际出发,章节安排上注意读者的阅读习惯,尽量采用通俗易懂的语言,突出基础,注意应用。

第1章 操作系统概论 1

1.1 操作系统的概念 1

1.2 操作系统的主要功能 3

1.3 操作系统的基本特征 8

1.4 操作系统的逻辑结构和运行模型 9

1.5 操作系统的形成与发展 11

1.6 主要操作系统类型 14

1.7 流行操作系统简介 21

1.7.1 Windows操作系统 21

1.7.2 UNIX操作系统 23

1.7.3 Linux操作系统 25

1.8 操作系统涉及的一些相关概念简介 27

1.8.1 中断和异常 27

1.8.2 系统调用 31

习题一 32

第2章 进程管理 34

2.1 进程的概念 34

2.1.1 进程的引入 34

2.1.2 进程控制块 37

2.1.3 进程的状态及其转换 40

2.2 进程控制 42

2.2.1 进程的创建与撤销 43

2.2.2 进程的阻塞与唤醒 45

2.2.3 进程的挂起与激活 46

2.3 进程的互斥与同步 46

2.3.1 基本概念 47

2.3.2 实现进程互斥的硬件方法 48

2.3.3 实现进程互斥的软件方法 51

2.3.4 信号量机制 52

2.3.5 经典互斥与同步问题 55

2.3.6 管程机制 60

2.4 进程间通信 63

2.4.1 共享内存通信方式 64

2.4.2 消息缓冲通信方式 64

2.4.3 信箱通信方式 67

2.4.4 管道通信方式 68

2.5 线程 68

2.5.1 引入线程的目的 69

2.5.2 线程的概念 69

2.5.3 线程与传统进程比较 71

2.5.4 线程实现机制 72

习题二 73

第3章 处理机调度与死锁 76

3.1 处理机调度 76

3.1.1 处理机调度的基本概念 76

3.1.2 选择调度算法的原则 80

3.1.3 调度算法 82

3.1.4 实时调度 88

3.1.5 进程切换 90

3.2 死锁 91

3.2.1 产生死锁的原因和必要条件 92

3.2.2 预防死锁 95

3.2.3 避免死锁 96

3.2.4 检测和解除死锁 100

习题三 102

第4章 存储管理 105

4.1 程序的链接和装入 105

4.1.1 逻辑地址、物理地址和虚拟地址 105

4.1.2 程序链接 106

4.1.3 程序装入 107

4.2 分区式存储管理 109

4.2.1 单一连续分区存储管理 109

4.2.2 固定分区存储管理 110

4.2.3 可变分区存储管理 112

4.2.4 覆盖与交换技术 115

4.3 分页式存储管理 117

4.3.1 分页式存储管理概述 118

4.3.2 分页式存储管理的地址变换机构 119

4.3.3 两级和多级页表 121

4.3.4 内存块的分配与回收 123

4.4 分段式存储管理 124

4.4.1 分段式存储管理概述 124

4.4.2 分段式存储管理的地址变换机构 125

4.4.3 段的共享与保护 126

4.4.4 分段与分页系统的区别 127

4.5 段页式存储管理 127

4.5.1 段页式存储管理的基本思想 128

4.5.2 段页式存储管理的地址变换机构 128

4.6 虚拟存储管理 129

4.6.1 虚拟存储器概念 130

4.6.2 请求分页虚拟存储管理 131

4.6.3 请求分段虚拟存储管理 137

4.6.4 请求段页式虚拟存储管理 139

习题四 140

第5章 设备管理 142

5.1 输入/输出系统 142

5.1.1 计算机设备分类 142

5.1.2 设备控制器 143

5.1.3 通道 144

5.2 输入/输出控制方式 146

5.2.1 程序直接输入/输出控制方式 146

5.2.2 中断输入/输出控制方式 147

5.2.3 DMA输入/输出控制方式 149

5.2.4 通道输入/输出控制方式 150

5.3 缓冲技术 151

5.3.1 单缓冲和双缓冲 151

5.3.2 循环缓冲 152

5.3.3 缓冲池 153

5.4 设备分配 154

5.4.1 用于设备分配的数据结构 154

5.4.2 设备分配策略 156

5.5 输入/输出软件 159

5.5.1 用户层输入/输出软件 159

5.5.2 设备无关软件 160

5.5.3 设备驱动程序 161

5.5.4 输入/输出中断处理程序 162

5.6 虚拟设备 163

5.7 磁盘存储器管理 165

5.7.1 存储设备概述 165

5.7.2 磁盘调度 166

5.7.3 独立磁盘冗余阵列 168

5.7.4 提高磁盘输入/输出速度的方法 169

习题五 170

第6章 文件管理 172

6.1 概述 172

6.1.1 文件和文件系统 172

6.1.2 文件分类 173

6.1.3 文件操作 174

6.2 文件数据的组织和存储 175

6.2.1 文件的逻辑结构 176

6.2.2 文件的物理结构 177

6.3 文件目录 183

6.3.1 文件控制块 183

6.3.2 索引结点 184

6.3.3 目录结构 185

6.3.4 目录检索技术 186

6.4 文件存储空间管理 187

6.4.1 空闲区表法 187

6.4.2 空闲块链表法 187

6.4.3 位示图法 188

6.4.4 成组链接法 189

6.5 文件共享 190

6.6 文件系统的数据一致性 191

习题六 194

第7章 多处理机、网络和分布式操作系统 195

7.1 多处理机操作系统 195

7.1.1 多处理机系统概述 195

7.1.2 多处理机调度 199

7.1.3 多处理机同步 202

7.2 网络操作系统 204

7.2.1 网络操作系统概述 204

7.2.2 网络操作系统实例介绍 205

7.3 分布式操作系统 210

7.3.1 分布式操作系统概述 210

7.3.2 分布式资源管理 211

7.3.3 分布式进程通信 212

7.3.4 分布式进程的互斥与同步 215

7.3.5 分布式文件系统 218

7.3.6 进程迁移 220

7.3.7 分布式系统中的死锁 222

习题七 224

第8章 操作系统的安全性 226

8.1 系统安全性概述 226

8.1.1 系统安全性的内涵 226

8.1.2 影响系统安全的因素 227

8.2 操作系统的安全机制 229

8.2.1 身份鉴别 229

8.2.2 存取控制 230

8.2.3 最小特权管理 232

8.2.4 硬件保护 233

8.2.5 安全审计 234

8.2.6 入侵检测 235

8.2.7 数据加密技术 236

8.3 系统安全评测标准 239

习题八 241

第9章 Linux程序开发工具 242

9.1 GNU工具链 242

9.1.1 编译过程 243

9.1.2 常用选项 245

9.2 GDB调试工具 247

9.2.1 启动GDB 247

9.2.2 断点 248

9.2.3 单步执行 250

9.2.4 查看运行时数据 250

9.3 make程序维护工具 253

9.3.1 make工作机制 253

9.3.2 makefile基本结构 253

9.3.3 makefile变量 254

9.3.4 环境变量和预定义变量 255

9.3.5 隐含规则 255

9.3.6 makefile范例 256

9.3.7 运行make 257

9.4 Linux内核开发简介 257

9.4.1 获取内核源码 257

9.4.2 配置内核 257

9.4.3 编译内核 258

9.4.4 安装内核 259

附录 Linux常用命令 260

参考文献 271