操作系统之I/O管理:1、I/O控制器、I/O控制方式(程序直接控制方式、中断驱动方式、DMA方式、通道控制方式)

基础知识

思维导图

在这里插入图片描述

什么是I/O设备?

在这里插入图片描述

分类

在这里插入图片描述
在这里插入图片描述![在这里插入图片描述
在这里插入图片描述

I/O控制器

思维导图

在这里插入图片描述

I/O控制器功能

在这里插入图片描述

I/O控制器的组成

在这里插入图片描述
在这里插入图片描述

内存映像I/O vs 寄存器独立编址

在这里插入图片描述

I/O控制方式

1、程序直接控制方式

在这里插入图片描述
在这里插入图片描述

为解决上述方式中的缺点,产生了中断驱动方式

2、中断驱动方式

在这里插入图片描述

与程序直接控制相比,区别是:
1、在CPU发出读/写命令后,可将等待I/O的进程阻塞,先切换到别的进程执行
2、I/O完成后,控制器会向CPU发出一个中断信号,CPU检测到中断信号后,会保存当前进程的运行环境信息,转去执行中断处理程序处理该中断。
3、CPU从I/O控制器读一个字的数据传送到CPU寄存器,再写入主存
问题:中断处理过程中需要保存、恢复进程的运行环境,这个过程是需要一定时间开销的。可见,如果中断发生的频率太高,也会降低系统性能;每个字在I/O设备与内存之间的传输,都需要经过CPU。为此提出来DMA方式。

3、DMA方式(直接存储器存取)

在这里插入图片描述

1、CPU到I/O的操作都交由DMA控制器完成,数据的传输不在经由CPU处理,CPU仅在传送一个或多个数据块的开始和结束时,才需要干预。
2、区别于中断驱动方式,多加入一个DMA控制器用于数据传输。
3、DMA控制器:
在这里插入图片描述
1、从DMA控制图中可知,内存到I/O设备的数据传输通过DMA就可以完成,该不需要CPU的干预,大大提高了CPU与I/O设备间的并行效率
2、CPU只是负责发出对I/O设备的请求以及接收当数据传输完成后的中断

在这里插入图片描述

4、通道控制方式

在这里插入图片描述

通道控制方式区别于DMA方式:当CPU请求I/O设备时,会先在内存的任务清单中添加任务,然后通道检查内存中的任务清单,若有任务则由通道负责与I/O设备的数据传输。所以每次可以进行一组数据块的读写。

在这里插入图片描述

对比

在这里插入图片描述

  • 12
    点赞
  • 61
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值