一、磁盘、磁道、扇区

【复习笔记】操作系统之磁盘管理与IO设备_数据块

二、磁盘的物理地址

【复习笔记】操作系统之磁盘管理与IO设备_数据块_02

三、磁盘调度算法

1. 读写磁盘所需时间

【复习笔记】操作系统之磁盘管理与IO设备_动态分配_03

2. 先来先服务算法(FCFS)

【复习笔记】操作系统之磁盘管理与IO设备_数据块_04

3. 最短寻找时间优先(Shortest Search Time First)

主要思想: 选择眼前最近的,结果未必最优,同贪心算法

【复习笔记】操作系统之磁盘管理与IO设备_数据块_05

4. 电梯算法(SCAN)

主要思想: 像电梯一样,只有到达磁盘边界才回头

【复习笔记】操作系统之磁盘管理与IO设备_数据块_06

5. LOOK算法

主要思想: 在SCAN算法基础上改进,不是到达磁盘边界才回头,到达请求访问的磁盘边界就回头(外部仍有磁盘,但无需访问)

6. C-SCAN算法

【复习笔记】操作系统之磁盘管理与IO设备_柱面_07

5. C-LOOK算法

主要思想: 在C-SCAN算法基础上改进。
唯一区别: 不是到达磁盘边界才回头,到达请求访问的磁盘边界就回头(外部仍有磁盘,但无需访问)。

四、磁盘地址结构的设计

思考:

磁盘的物理地址是 (柱面号,盘面号,扇区号),而不是 (盘面号,柱面号,扇区号)

读完低位地址(扇区号)数据后,需要根据高位地址调整,接着读取数据。

此时若采用 (盘面号,柱面号,扇区号) 的地址,那么需要改变柱面号,即需要物理的移动磁头,花费时间较多。
反之,如果采用 (柱面号,盘面号,扇区号) 编址,我们需要改变盘面号,激活另一个磁头即可,消耗时间较少。

五、IO设备

1. 按使用特性分类

【复习笔记】操作系统之磁盘管理与IO设备_动态分配_08

2. 按传输速率分类

【复习笔记】操作系统之磁盘管理与IO设备_动态分配_09

3. 按信息交换的单位分类

【复习笔记】操作系统之磁盘管理与IO设备_动态分配_10

【复习笔记】操作系统之磁盘管理与IO设备_数据块_11

六、IO控制器

1. IO控制器的功能

【复习笔记】操作系统之磁盘管理与IO设备_动态分配_12

2. IO控制器的组成

【复习笔记】操作系统之磁盘管理与IO设备_柱面_13

3. 两种寄存器的编址方式

【复习笔记】操作系统之磁盘管理与IO设备_数据块_14

七、IO控制方式

1. 程序直接控制方式

流程:

【复习笔记】操作系统之磁盘管理与IO设备_动态分配_15


主要特点:

【复习笔记】操作系统之磁盘管理与IO设备_动态分配_16

2. 中断驱动方式

【复习笔记】操作系统之磁盘管理与IO设备_柱面_17


由于中断方式每次只传送一个字,传送一个字就中断一次,而 频繁处理中断降低系统效率 ,因此提出DMA方式每次传送一个块。

3. DMA方式(Direct Memory Access)

【复习笔记】操作系统之磁盘管理与IO设备_柱面_18


主要特点:

【复习笔记】操作系统之磁盘管理与IO设备_柱面_19

4. 通道控制方式

执行流程:

【复习笔记】操作系统之磁盘管理与IO设备_动态分配_20


主要特点:

【复习笔记】操作系统之磁盘管理与IO设备_数据块_21


四种传送方式的对比

【复习笔记】操作系统之磁盘管理与IO设备_动态分配_22

八、假脱机技术

【复习笔记】操作系统之磁盘管理与IO设备_数据块_23

脱机技术可缓解 慢速纸带机快速CPU 之间的速度差异

SPOOLing系统的组成:

【复习笔记】操作系统之磁盘管理与IO设备_动态分配_24

SPOOLing技术将独占设备改造成共享设备

【复习笔记】操作系统之磁盘管理与IO设备_动态分配_25


原理比较简单,就是先将打印数据存放在输出井,然后将请求挂到队列上,挨个处理即可。

九、设备的分配与回收

1. 静态分配和动态分配
  • 静态分配:进程运行前就为其分配所有需要的资源,运行结束后全部归还
  • 动态分配:进程运行过程中动态申请设备资源
2. 设备、控制器、通道之间的关系

【复习笔记】操作系统之磁盘管理与IO设备_柱面_26

3. 设备分配管理中的数据结构

设备控制表(DCT)

【复习笔记】操作系统之磁盘管理与IO设备_数据块_27


控制器控制表(COCT)

【复习笔记】操作系统之磁盘管理与IO设备_动态分配_28


通道控制表(CHCT)

【复习笔记】操作系统之磁盘管理与IO设备_数据块_29

系统设备表(SDT)

【复习笔记】操作系统之磁盘管理与IO设备_动态分配_30

4. 设备分配的流程

【复习笔记】操作系统之磁盘管理与IO设备_数据块_31

十、缓冲区管理

1. 缓冲区的作用

【复习笔记】操作系统之磁盘管理与IO设备_动态分配_32

2. 单缓冲

【复习笔记】操作系统之磁盘管理与IO设备_数据块_33

3. 双缓冲

【复习笔记】操作系统之磁盘管理与IO设备_动态分配_34


【复习笔记】操作系统之磁盘管理与IO设备_数据块_35


结论: 采用双缓冲策略,处理一个数据块平均耗时【复习笔记】操作系统之磁盘管理与IO设备_柱面_36

4. 循环缓冲区

【复习笔记】操作系统之磁盘管理与IO设备_柱面_37

5. 缓冲池

【复习笔记】操作系统之磁盘管理与IO设备_动态分配_38

  1. 空缓冲队列队头的数据块------>hin------->输入队列队尾
  2. 输入队列队头的数据块------->sin------->空缓冲队列队尾
  3. 空缓冲队列队头的数据块----->hout----->输出队列队尾
  4. 输出队列队头的数据块----->sout------>空缓冲队列队尾