《计算机操作系统实验指导》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:郁红英,李春强,王宁宁,赵晓永,武磊,刘亚辉
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2018
  • ISBN:9787302489108
  • 页数:381 页
图书介绍:本书全面而又系统地介绍了现代操作系统的基本理论和最新技术,并具体分析了Windows Vista/7和Linux中的实现技术和方法。

第一篇 Windows系统下C实验指导 3

第1章 Visual C++开发环境介绍 3

1.1 Visual C++概述 3

1.1.1 Visual C++简介 3

1.1.2 Visual C++6.0的主要特性 3

1.1.3 Visual C++6.0的窗口 4

1.2 Visual C++6.0控制台程序 5

1.2.1 Visual C++6.0控制台程序的建立 5

1.2.2 Visual C++6.0工程的文件组成 9

1.3 MSDN概述 10

1.3.1 MSDN简介 10

1.3.2 MSDN使用 11

第2章 Windows的进程管理 12

2.1 实验一:线程的创建与撤销 12

2.1.1 实验目的 12

2.1.2 实验准备知识:相关API函数介绍 12

2.1.3 实验内容 14

2.1.4 实验要求 14

2.1.5 实验指导 14

2.1.6 实验总结 16

2.1.7 源程序 16

2.1.8 实验展望 17

2.2 实验二:线程的同步 17

2.2.1 实验目的 17

2.2.2 实验准备知识:相关API函数介绍 17

2.2.3 实验内容 21

2.2.4 实验要求 21

2.2.5 实验指导 21

2.2.6 实验总结 22

2.2.7 源程序 22

2.2.8 实验展望 24

2.3 实验三:线程的互斥 24

2.3.1 实验目的 24

2.3.2 实验准备知识:相关API函数介绍 24

2.3.3 实验内容 28

2.3.4 实验要求 28

2.3.5 实验指导 28

2.3.6 实验总结 28

2.3.7 源程序 29

2.3.8 实验展望 30

2.4 实验四:使用命名管道实现进程通信 30

2.4.1 实验目的 30

2.4.2 实验准备知识:相关API函数介绍 31

2.4.3 实验内容 33

2.4.4 实验要求 33

2.4.5 实验指导 34

2.4.6 实验总结 35

2.4.7 源程序 36

2.4.8 实验展望 39

第3章 Windows的内存管理 40

3.1 实验一:动态链接库的建立与调用 40

3.1.1 实验目的 40

3.1.2 实验准备知识:动态链接库介绍 40

3.1.3 实验内容 45

3.1.4 实验要求 46

3.1.5 实验指导 46

3.1.6 实验总结 51

3.1.7 源程序 51

3.1.8 实验展望 53

3.2 实验二:系统内存使用统计 53

3.2.1 实验目的 53

3.2.2 实验准备知识:相关数据结构及API函数介绍 53

3.2.3 实验内容 57

3.2.4 实验要求 57

3.2.5 实验指导 57

3.2.6 实验总结 58

3.2.7 源程序 58

3.2.8 实验展望 59

第4章 Windows的文件管理 60

4.1 实验一:采用无缓冲方式实现文件读/写 60

4.1.1 实验目的 60

4.1.2 实验准备知识:相关API函数介绍 60

4.1.3 实验内容 65

4.1.4 实验要求 65

4.1.5 实验指导 65

4.1.6 实验总结 66

4.1.7 源程序 66

4.2 实验二:采用高速缓存实现文件读/写 68

4.2.1 实验目的 68

4.2.2 实验准备知识:高速缓存 68

4.2.3 实验内容 68

4.2.4 实验要求 68

4.2.5 实验指导 68

4.2.6 实验总结 69

4.2.7 源程序 69

4.3 实验三:采用异步方式实现文件读/写 70

4.3.1 实验目的 70

4.3.2 实验准备知识:文件异步传输及相关API函数介绍 71

4.3.3 实验内容 71

4.3.4 实验要求 72

4.3.5 实验指导 72

4.3.6 实验总结 72

4.3.7 源程序 72

4.4 实验四:实现文件读/写的3种方式比较 74

4.4.1 实验目的 74

4.4.2 实验准备知识:相关API函数介绍 74

4.4.3 实验内容 75

4.4.4 实验要求 75

4.4.5 实验指导 75

4.4.6 实验总结 75

4.4.7 源程序 76

4.4.8 实验展望 81

第5章 Windows的设备管理 82

5.1 实验一:获取磁盘基本信息 82

5.1.1 实验目的 82

5.1.2 实验准备知识:相关数据结构及API函数介绍 82

5.1.3 实验内容 83

5.1.4 实验要求 84

5.1.5 实验指导 84

5.1.6 实验总结 84

5.1.7 源程序 85

5.2 实验二:读/写磁盘指定位置信息 86

5.2.1 实验目的 86

5.2.2 实验准备知识:相关API函数介绍 87

5.2.3 实验内容 88

5.2.4 实验要求 88

5.2.5 实验指导 88

5.2.6 实验总结 88

5.2.7 源程序 89

5.2.8 实验展望 93

第二篇 Windows系统下Java实验指导 97

第6章 Java语言概述 97

6.1 Java的产生 97

6.2 Java的特点 98

6.3 Java的现状与前景 99

6.4 Java的体系结构 100

6.5 Java的运行环境及配置 100

第7章 进程管理 104

7.1 实验一:线程的创建与撤销(Java) 104

7.1.1 实验目的 104

7.1.2 实验准备知识 104

7.1.3 实验内容 109

7.1.4 实验要求 109

7.1.5 实验指导 109

7.1.6 实验总结 111

7.1.7 源程序 111

7.2 实验二:线程的同步(Java) 112

7.2.1 实验目的 112

7.2.2 实验准备知识 112

7.2.3 实验内容 114

7.2.4 实验要求 114

7.2.5 实验指导 114

7.2.6 实验总结 115

7.2.7 源程序 116

7.3 实验三:线程的互斥(Java) 120

7.3.1 实验目的 120

7.3.2 实验准备知识 120

7.3.3 实验内容 121

7.3.4 实验要求 121

7.3.5 实验指导 121

7.3.6 实验总结 121

7.3.7 源程序 122

第8章 内存管理 125

8.1 实验一:动态链接库的建立与调用(Java) 125

8.1.1 实验目的 125

8.1.2 实验准备知识 125

8.1.3 实验内容 127

8.1.4 实验要求 127

8.1.5 实验指导 127

8.1.6 实验总结 127

8.1.7 源程序 129

8.2 实验二:系统内存使用统计(Java) 131

8.2.1 实验目的 131

8.2.2 实验准备知识:相关数据结构以及类和接口 131

8.2.3 实验内容 134

8.2.4 实验要求 134

8.2.5 实验指导 134

8.2.6 实验总结 135

8.2.7 源程序 137

第9章 文件管理(Java) 140

9.1 实验:文件管理与IO流(Java) 140

9.1.1 实验目的 140

9.1.2 实验准备知识 140

9.1.3 实验内容 143

9.1.4 实验要求 143

9.1.5 实验指导 143

9.1.6 实验总结 143

9.1.7 源程序 145

第三篇 Linux系统实验指导 151

第10章 Linux系统的安装和使用 151

10.1 安装CentOS 7 153

10.1.1 实验目的 153

10.1.2 实验内容和步骤 153

10.2 Linux系统的基本操作 157

10.2.1 实验目的 157

10.2.2 实验内容和步骤 157

10.3 常用的Linux命令 161

10.3.1 实验目的 161

10.3.2 实验准备知识:常用的Linux命令 162

10.3.3 实验内容和步骤 163

10.4 vi的使用 168

10.4.1 实验目的 168

10.4.2 实验准备知识 168

10.4.3 实验内容和步骤 172

10.5 Linux的编辑器gcc 172

10.5.1 实验目的 172

10.5.2 实验准备知识 172

10.5.3 实验内容和步骤 173

10.6 Shell程序设计 175

10.6.1 实验目的 175

10.6.2 实验准备知识 175

10.6.3 实验内容和步骤 184

第11章 Linux的进程管理 186

11.1 实验目的 186

11.2 实验准备知识 186

11.2.1 进程控制的API 187

11.2.2 进程之间通信的API 190

11.3 实验内容 190

11.3.1 编制实现软中断通信的程序 190

11.3.2 编制实现管道通信的程序 190

11.4 实验指导 191

11.4.1 软中断通信算法流程图 191

11.4.2 管道通信算法流程图 192

11.5 实验总结 193

11.5.1 软中断通信的运行 193

11.5.2 管道通信的运行 194

11.6 源程序 194

11.6.1 软中断通信的源程序 194

11.6.2 管道通信的源程序 195

第12章 Linux的存储器管理 196

12.1 实验目的 196

12.2 实验准备知识 196

12.2.1 实时监控内存使用情况 196

12.2.2 使用Linux命令回收内存 197

12.2.3 虚拟内存实现的机制 197

12.3 实验内容 198

12.3.1 内存的监控、检查和回收 198

12.3.2 模拟FIFO、LRU和OPT页面置换算法 198

12.4 实验指导 199

12.4.1 FIFO 199

12.4.2 LRU 200

12.4.3 OPT 201

12.5 实验总结 202

12.6 源程序 202

第13章 Linux的设备管理 209

13.1 实验目的 209

13.2 实验准备知识 209

13.2.1 设备驱动程序简介 209

13.2.2 设备驱动程序与外部接口 210

13.2.3 设备驱动程序的组织结构 211

13.3 实验内容 211

13.3.1 字符类型设备的驱动程序 211

13.3.2 块类型设备的驱动程序 211

13.4 实验指导 211

13.4.1 字符类型设备的驱动程序 211

13.4.2 块类型设备的驱动程序 217

13.5 实验总结 222

13.6 源程序 222

13.6.1 字符设备驱动程序 222

13.6.2 块设备驱动程序 226

第14章 Linux的文件管理 229

14.1 实验目的 229

14.2 实验准备知识 229

14.2.1 文件结构 229

14.2.2 目录管理 230

14.2.3 Linux的EXT4文件系统 231

14.2.4 相关函数 232

14.3 实验内容 233

14.3.1 设计并实现一个文件执行程序 233

14.3.2 设计并实现一个一级文件系统程序 233

14.4 实验指导 233

14.5 实验总结 234

14.6 源程序 234

14.6.1 设计并实现一个文件执行程序 234

14.6.2 设计并实现一个一级文件系统程序 234

第15章 Linux内核编译 237

15.1 实验目的 237

15.2 实验准备知识 237

15.2.1 内核简介 237

15.2.2 内核编译涉及的相关命令和术语 238

15.3 实验内容 239

15.4 实验指导 239

15.5 实验总结 245

第四篇 操作系统学习指导和习题解析 249

第16章 操作系统概述 249

16.1 知识点学习指导 249

16.1.1 操作系统的定义 249

16.1.2 操作系统的产生和发展 249

16.1.3 操作系统的特征 250

16.1.4 操作系统的功能 250

16.1.5 操作系统的类型 251

16.2 典型例题分析 253

16.3 自测题 256

16.4 自测题答案 258

16.5 作业 259

第17章 进程与线程 260

17.1 知识点学习指导 260

17.1.1 进程的引入 260

17.1.2 进程的状态及其组成 261

17.1.3 进程控制 261

17.1.4 线程 262

17.2 典型例题分析 262

17.3 自测题 266

17.4 自测题答案 270

17.5 作业 270

第18章 进程同步与通信 272

18.1 知识点学习指导 272

18.1.1 进程同步与互斥 272

18.1.2 经典进程同步问题 273

18.1.3 AND信号量 273

18.1.4 管程 274

18.1.5 进程通信 274

18.2 典型例题分析 274

18.3 自测题 284

18.4 自测题答案 287

18.5 作业 288

第19章 调度与死锁 290

19.1 知识点学习指导 290

19.1.1 调度类型与准则 290

19.1.2 调度算法 291

19.1.3 死锁的基本概念 292

19.1.4 死锁的预防与避免 293

19.1.5 死锁的检测与解除 295

19.2 典型例题分析 296

19.3 自测题 302

19.4 自测题答案 306

19.5 作业 307

第20章 存储管理 309

20.1 知识点学习指导 309

20.1.1 程序的装入与链接 309

20.1.2 连续分配存储管理 310

20.1.3 页式存储管理 312

20.1.4 段式存储管理 312

20.1.5 段页式存储管理 313

20.2 典型例题分析 313

20.3 自测题 317

20.4 自测题答案 319

20.5 作业 320

第21章 虚拟存储管理 322

21.1 知识点学习指导 322

21.1.1 虚拟存储器的引入 322

21.1.2 请求页式存储管理 322

21.1.3 请求段式存储管理 324

21.1.4 段式存储管理与页式存储管理的比较 324

21.2 典型例题分析 325

21.3 自测题 328

21.4 自测题答案 331

21.5 作业 332

第22章 设备管理 334

22.1 知识点学习指导 334

22.1.1 I/O管理概述 334

22.1.2 I/O控制方式 335

22.1.3 I/O系统 335

22.1.4 磁盘管理 337

22.1.5 缓冲管理 338

22.2 典型例题分析 338

22.3 自测题 343

22.4 自测题答案 346

22.5 作业 347

第23章 文件管理 349

23.1 知识点学习指导 349

23.1.1 文件和文件系统 349

23.1.2 文件的结构 349

23.1.3 目录 350

23.1.4 文件存储空间的管理 351

23.1.5 文件存取控制 352

23.2 典型例题分析 353

23.3 自测题 357

23.4 自测题答案 360

23.5 作业 361

附录A 试卷样例 363

附录A.1 试卷A 363

附录A.2 试卷A答案 367

附录A.3 试卷B 371

附录A.4 试卷B答案 376

参考文献 380