0%

IO

💡 TIP

相关链接|

I/O系统

I/O系统的层次结构

  • 用户层软件:产生I/O请求、格式化I/O、Spooling

  • 设备独立性软件:映射、保护、分块、缓冲、分配

  • 设备驱动程序:设置设备寄存器;检测状态

  • 中断处理程序:发出操作指令、驱动设备工作

  • 硬件:执行I/O操作

💡 TIP

磁盘属于共享设备,因为多个进程可以同时使用,因为我们学过磁盘调度算法。

I/O硬件

设备控制器

  • I/O设备包括一个机械部件和一个电子部件。

  • 电子部件称为设备控制器或适配器,在 PC 中,它常常是插入主板扩充槽的印刷电路板

  • 机械部件则是设备本身。

通道

I/O控制方式

  • 轮询

  • 中断

  • 直接存储器存取DMA

  • 通道

直接存储器存取DMA

image-20241222165458479

缓冲技术

image-20241222193829711

image-20241222193849286

💡 TIP

为什么双缓冲区对一块数据的处理时间为$Max(C+M,T)$?

双缓冲区解决了I/O设备写入缓冲区和用户进程读出缓冲区的冲突

即,写入缓冲区和读出缓冲区可以并行

而,在进程操作当前缓冲区数据时,是无法将数据再次读入内存的

因为此时还在操作上一个读入的数据

故,数据读入和数据处理并不能并行。

则处理一块的时间为$Max(C+M,T)$.

若,读出缓冲区和操作数据可以并行,则时间为$Max(C,M,T)$

磁盘存储器

磁盘调度算法

image-20241222201157430


(完)