当前位置:首页 > 工业技术
操作系统实验教程
操作系统实验教程

操作系统实验教程PDF电子书下载

工业技术

  • 电子书积分:11 积分如何计算积分?
  • 作 者:陆松年主编
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2010
  • ISBN:9787121105647
  • 页数:279 页
图书介绍:本实验教材除了具有传统的操作系统实验基本特色外,还具有通信工程、信息安全和电子工程等非计算机专业特色,并且实验覆盖面很广、实验内容特别丰富。本书共分3部分:第1部分是实验相关原理;第2部分是实验指导书,共设计了涵盖操作系统绝大部分原理和应用的28个实验,可作为学生的上机实验或课程设计;第3部分是部分实验参考解答,给出了第2部分中的16个实验参考答案,其余的实验是希望学生全部独立完成,这些实验也可作为教师布置上机的实验题目。
《操作系统实验教程》目录

第1部分 实验相关原理 2

第1章 存储管理 2

1.1 可变分区存储管理 2

1.1.1 空闲存储区表 2

1.1.2 首次适应法 3

1.1.3 循环首次适应法 5

1.1.4 最佳适应算法 5

1.1.5 最差适应法 6

1.2 分页存储管理 6

1.2.1 分页存储管理的基本思想 6

1.2.2 地址变换 6

1.2.3 空闲内存页的管理 7

1.2.4 请求分页式基本原理 7

1.2.5 页面淘汰 8

第2章 进程管理 10

2.1 进程概述 10

2.1.1 进程的概念 10

2.1.2 进程的组成 10

2.1.3 进程的状态及其变化 11

2.2 进程控制块 12

2.3 调度 12

2.3.1 进程切换调度策略 12

2.3.2 进程调度算法 12

2.4 UNIX系统的进程调度 14

2.4.1 进程的切换调度算法 14

2.4.2 切换调度程序 14

2.5 进程的控制 14

2.5.1 进程的阻塞 14

2.5.2 UNIX系统中的进程睡眠和唤醒 15

2.5.3 进程的终止和等待终止 15

2.6 进程的创建和映像改换 16

2.6.1 进程的创建 16

2.6.2 进程映像的改换 16

2.7 线程 18

2.7.1 进程和线程 18

2.7.2 多线程 18

2.7.3 线程的状态 19

2.7.4 线程应用示例 19

第3章 进程通信 21

3.1 进程间互斥控制方法 21

3.1.1 锁的表示和操作 21

3.1.2 锁的安全控制 21

3.2 信号量和semWait、semSignal操作 23

3.3 信号量的应用 24

3.3.1 利用信号量实现互斥 24

3.3.2 两个进程间的同步 24

3.3.3 生产者和消费者问题 25

3.4 进程间的数据通信 26

3.4.1 消息通信 26

3.4.2 共享存储区 27

3.4.3 Solaris门 27

3.5 软中断和信号机构 28

3.5.1 信号的产生与类型 28

3.5.2 信号的处理方式及设置 29

3.5.3 信号的传送 30

3.6 死锁 30

3.6.1 产生死锁的原因 31

3.6.2 产生死锁的条件 31

3.6.3 死锁的预防 31

3.6.4 死锁的避免 32

3.6.5 死锁的检测 33

第4章 文件系统 35

4.1 文件目录 35

4.1.1 目录的内容 35

4.1.2 目录的结构 35

4.2 文件存储资源分配 35

4.3 文件的系统调用 36

4.3.1 文件的创建、打开、关闭和取消 36

4.3.2 文件的读/写 37

4.4 文件的标准子例程 37

4.4.1 标准I/O的概念 37

4.4.2 流文件的打开和关闭 38

4.4.3 流文件的读/写 39

4.5 UNIX文件系统的内部结构 40

4.5.1 索引节点 40

4.5.2 文件索引结构 40

4.5.3 目录结构 42

4.5.4 打开文件结构 43

4.6 管道文件和管道通信 45

4.6.1 管道文件 45

4.6.2 管道的读/写和关闭 45

4.6.3 有名管道 46

第5章 UNIX系统和网络程序设计 48

5.1 高级进程间通信 48

5.1.1 消息通信 48

5.1.2 共享内存 49

5.1.3 信号灯 50

5.2 远程进程间通信Socket 51

5.2.1 Socket通信概述 51

5.2.2 Socket系统调用 52

5.3 UDP套接字编程 54

5.3.1 UDP套接字的基本概念 54

5.3.2 UDP套接字基本函数 54

5.4 Solaris门通信 55

5.5 RPC(远程过程调用) 57

5.5.1 RPC概述 57

5.5.2 RPC服务地址的获取 57

5.5.3 rpcgen编程指南 58

5.5.4 客户端身份验证 59

第6章 Linux的动态内核模块机制 60

6.1 操作系统的体系结构 60

6.1.1 单体式结构 60

6.1.2 微内核结构 60

6.2 Linux的动态内核模块机制概述 61

6.3 Linux内核模块的动态加载/卸载 62

6.3.1 内核模块的动态加载 62

6.3.2 内核模块的动态卸载 62

6.4 Linux动态模块的开发与实现 63

6.4.1 Linux模块的基本组成 63

6.4.2 Linux内核模块的符号引用 63

6.4.3 Linux内核模块的编译和运行模式 63

6.4.4 Linux内核模块的调试和信息输出 64

第2部分 实验指导书 66

操作系统实验指导 66

(一)实验的目的和要求 66

(二)实验步骤 66

(三)实验报告要求 68

实验1 Linux虚拟存储器的实现 69

实验2 可变分区存储管理 72

实验3 请求分页系统页面淘汰算法 75

实验4 进程调度算法 77

(一)多级反馈队列调度算法 77

(二)进程调度算法的实现 79

实验5 进程和进程控制 82

(一)进程控制和信号机制 82

(二)生产者和消费者问题 83

实验6 进程的数据通信 86

(一)消息通信 86

(二)共享内存和信号量 87

实验7 并发线程和线程通信 89

实验8 Linux消息队列的实现 90

实验9 死锁实验 93

(一)死锁的避免 93

(二)死锁的检测 94

实验10 文件系统的用户界面 96

(一)文件复制 96

(二)管道文件通信 97

实验11 文件系统设计 99

实验12 有名管道机制的实现 102

实验13 Linux的内核模块扩展 105

实验14 Linux的系统调用扩展 108

实验15 Solaris门函数进程通信 114

实验16 远程进程通信 118

(一)TCP通信实验 118

(二)UDP通信实验 120

实验17 远程过程调用 122

实验18 Shell程序设计 124

实验19 嵌入式Linux系统的安装与引导 126

实验20 操作系统安全 128

(一)操作系统登录的可信路径 128

(二)基于硬件标识的程序权限控制 129

实验21 Linux的安全访问控制 131

第3部分 部分实验参考解答 134

实验1 Linux虚拟存储器实现参考解答 134

实验3 请求分页系统页面淘汰算法参考解答 139

实验4 进程调度算法参考解答 146

(一)多级反馈队列调度算法 146

(二)FCFS进程调度算法的实现 159

实验5 进程和进程控制参考解答 180

(二)生产者和消费者问题 180

实验8 Linux消息队列的实现参考解答 188

实验9 死锁实验参考解答 208

(一)死锁的避免 208

(二)死锁的检测 215

实验11 文件系统设计参考解答 222

实验13 Linux的内核模块扩展参考解答 242

实验14 Linux的系统调用扩展参考解答 248

实验19 嵌入式Linux系统的安装与引导参考解答 267

实验20 操作系统安全参考解答 270

(一)操作系统登录的可信路径 270

(二)基于硬件标识的程序权限控制 272

实验21 Linux的安全访问控制参考解答 275

参考文献 279

返回顶部