【操作系统】04.设备管理

IO软件层次

image.png

image.png

IO设备

image.png
image.png

机械部件

image.png
image.png

image.png

分类

image.png

image.png

image.png

设备控制器

image.png

image.png

image.png

image.png

image.png

寄存器编址
image.png

IO控制方式

image.png

程序直接控制方式

image.png

image.png

image.png

中断驱动方式

image.png

image.png

DMA方式

image.png

image.png
image.png

通道控制方式

image.png

image.png

中断处理程序

image.png

设备驱动程序

image.png

设备独立性软件

image.png
image.png
image.png
image.png
image.png
image.png

IO调度

image.png

设备保护

image.png

设备分配与回收

image.png

image.png

image.png

静态分配和动态分配

image.png

数据结构

image.png
image.png
image.png
image.png
image.png

设备分配步骤

image.png

改进
image.png

缓冲区管理

image.png

image.png
缓冲区的组成

  1. 硬件寄存器
    成本高,一般用户队速度要求高的场合,例如存储器管理的快表,设备控制器的数据缓冲区
  2. 内存
    大多数场景

缓冲区作用

image.png

  • 缓和cpu和IO设备之间速度不匹配的矛盾
  • 减少对cpu的中断频率
    如果达到一点数据,就传送一点数据,那么对cpu的中断将会变得十分频繁
  • 解决数据粒度不配的问题
    解决生产者和消费者之间数据交换单元大小不匹配的问题
  • 提高cpu和IO设备的并行性

单缓冲

image.png
image.png

双缓冲

image.png
image.png

image.png

image.png

循环缓冲区

image.png

缓冲池

image.png

用户层软件

image.png

image.png

系统调用

image.png

image.png

image.png

网络设备接口
image.png

Spooling

image.png

脱机技术

image.png

  • 脱机输入/输出方式

image.png

为了缓解主机cpu和IO设备之间速度不匹配的矛盾,出现了脱机IO技术

  • 在外围机的控制下,通过输入设备,将数据输入到磁盘;当cpu需要时,直接从磁盘调入数据到内存
  • 反之,处理机输出数据的时候,先把数据输出到磁盘;然后在另一个外围机的控制下,通过输出设备,将数据输出

假脱机技术

  • 假脱机技术

在多道系统中,可以用一道程序来模拟外围机,这样便可以通过主机的直接控制下,实现以前的脱机输入和输出功能,外围操作和cpu数据处理同时进行,这种技术成为假脱机技术(Spooling技术)
image.png

应用

image.png
image.png
image.png

磁盘

image.png

磁盘结构

image.png

image.png

image.png

读写数据

image.png

磁盘调度算法

image.png

image.png

先来先服务

image.png

最短寻找时间有限

image.png

扫描算法

image.png

Look算法

image.png

循环扫描算法

image.png

C-look算法

image.png

减少磁盘延迟时间

image.png

固态硬盘

image.png

image.png

image.png

猜你喜欢

转载自blog.csdn.net/weixin_50799082/article/details/130950417