第六章 输入输出系统(三)——设备驱动程序+与设备无关的I/O软件

本文详细介绍了设备驱动程序在I/O系统中的角色,包括接收和转化I/O请求,以及与设备控制器的交互。讨论了四种I/O控制方式:程序I/O、中断驱动、直接存储器访问(DMA)和I/O通道。重点阐述了DMA的工作过程和其减少CPU干预的优势,并提及了I/O通道在处理多数据块时的作用。此外,还探讨了与设备无关的I/O软件,强调其在设备分配灵活性和安全性方面的关键作用。
摘要由CSDN通过智能技术生成

设备驱动程序是I/O系统的高层与设备控制器之间的通信程序,其主要任务:
1.接收上层软件发来的抽象I/O要求,如read、write等命令;
2.再把它转化为具体要求,发送给设备控制器,启动设备去执行。
3.反方向,它也将由设备控制器发来的信号,传送给上层软件。

I/O控制方式:
程序I/O方式
中断驱动I/O方式
直接存储器访问方式【DMA】
I/O通道控制方式
宗旨:减少主机对I/O控制的干预,将CPU从繁杂的I/O控制事物中解脱出来。

直接存储器访问方式【DMA】
特点:
1.数据传输的基本单位是数据块;
2.所传送的数据是从设备直接送入内存的,或者直接从内存进设备;不需要CPU操作。
3.CPU干预进一步减少:仅在传送一个或多个数据块的开始和结束时,才需CPU干预,整块数据的传送是在控制器的控制下完成的。可见DMA方式又是成百倍的减少了CPU对I/O的干预,进一步提高了CPU与I/O设备的并行操作程度。

DMA控制器由三部分组成:
1.主机与DMA控制器的接口;
2.DMA控制器与块设备的接口;
3.I/O控制逻辑。

DMA的工作过程:【附图】
1.CPU先向磁盘控制器发送一条读命令。
2.该命令被送到命令寄存器CR中。
3.同时发送数据读入到内存的起始地址,该地址被送入MAR中;
4.要读数据的字数则送入数据计数器DC中;
5.将磁盘中的数据原地址直接送入DMA控制器的I/O控制逻辑上,按设备状态启动磁头到相应位置

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值