当前位置: 首页 > news >正文

io控制方式

程序直接控制方式

完成一次读写操作的流程(以读操作为例子)

1.cpu向控制器发出读指令,于是设备启动,并且状态寄存器设置为1(未就绪)

2.轮询检查控制器的状态

3.输入设备准备好数据后,将数据传给控制器,并且报告自身状态

4.控制器讲输入的数据放到数据寄存器中,并将状态改为0

5.cpu发现设备以及就绪,即可讲数据寄存器的内容读入cpu的寄存器中,再把cpu寄存器中的内容放入内存

6.若还需要继续读如数据,则cpu继续发出读指令

关键词:轮询

cpu干预的频率很频繁,IO操作开始之前完成之后需要cpu介入,并且在等待IO完成的过程中CPU需要不断轮询检查

数据传输的单位

每次读写一个字

数据的流向:
读:从IO设备-》cpu-〉内存
写:从内存-》cpu-〉io设备

每个字的读写都需要cpu帮助

优点:实现简单,在读写之后,加上实现循环的检查一系列指令即可

缺点:cpu和io设备只能串形工作,cpu一直轮询检查,长期处于忙等,cpu利用率低

中断控制方式

引入中断机构,因为io速度很慢,cpu速度快,因此可以阻断等待io的进程。当io完成后,控制器向cpu发出一个中断信号(告诉cpu现在要去做别的事情)

cpu监测到中断信号之后,会保存当前的允许环境信息,转而去执行中断处理程序,处理该中断,处理过程中,cpu从io控制器读一个字的数据传送到cpu寄存器(如果你没有好,我先干别的,如果你好了,发一个字给我)

注意:

1.cpu在每个指令周期末尾检查中断

2.中断处理过程中需要保存,恢复进程的允许环境,这个过程是需要一定时间开销的,可见,如果中断发生频率太高,也会降低系统性能


1.cpu的干预频率

每次io操作开始之前,完成之后需要cpu介入

等待io完成的过程中cpu可以切换到别的进程执行

2.数据传输单位:每次读写一个字

数据的流向:
读:从IO设备-》cpu-〉内存
写:从内存-》cpu-〉io设备

优点:解决了程序直接控制方式最大的缺点,使得cpu和io设备可并行工作,cpu利用率得到明显提升。

缺点:每个字在io设备与内存直接的传输,都需要经过cpu,而频繁中断处理会消耗较多cpu时间

DMA方式

直接存储器存取(Direct Memory Access)

1.数据传输单位是一个块,而不是一个字

2.数据的流向是从设备直接放入内存,或者内存直接到设备,不再需要cpu作为快递小哥

3.仅在传送一个或者多个数据库的开始和结束时,才需要cpu干预

DR(data register):暂存从设备到内存,或者从内存到设备的数据

MAR(memory Address Register)表示数据应该放在内存的什么位置

DC(Data Counter):表示剩余要读写的字节数

CR(Command Register)用来存放cpu发来的io命令


1.cpu干预频率:

仅在传送一个或者多个数据块的开始和结尾才需要cpu干预

2.每次读写一个或者多个块,而不是字(每次读写只能是连续的多个块,且这些块在读如内存后内存中也是连续的)

读:IO设备-》内存

写:内存-〉io设备

优点:数据传输以块为单位,cpu介入评论进一步降低,数据的传输不再需要现经过cpu在写入内存,cpu和io设备的并行性得到提升

缺点:cpu每发出一条io指令,只能读写一个或者多个连续的数据块

通道控制方式

26不考

http://www.jsqmd.com/news/10145/

相关文章:

  • 【基础】 - ACPI是什么?
  • 我 是 人 机
  • 方法作业
  • 2025 汽车改装公司最新推荐榜:一站式服务生态企业盘点,含奔驰宝马新能源改装及新锐品牌权威测评重庆宝马汽车改装/重庆新能源汽车改装/重庆汽车改装贴膜/重庆汽车改装轮毂刹车公司推荐
  • 2025 布袋包装厂家最新推荐榜:自贸区实力厂商领衔,含手提袋、帆布袋等全品类,年销 500 万级生产商精选无纺布袋/布袋生产/云南布袋包装/茶叶布袋厂家推荐
  • 2025 年阳光导入源头厂家最新推荐榜:领军企业技术实力、案例与直销模式深度解析及选择指南工厂/学校/医院/地下车库/隧道阳光导入系统厂家推荐
  • 用低成本FPGA实现FSMC接口的多串口(UART)控制器
  • 2025 火烧板源头厂家最新推荐榜单:自有矿山保障品质,高硬度耐磨产品全覆盖,五莲花 / 芝麻白 / 防滑芝麻黑采购优选指南
  • 实用指南:Python数据可视化科技图表绘制系列教程(一)
  • Luogu P11660 我终将成为你的倒影 题解 [ 紫 ] [ 分块 ] [ 分类讨论 }
  • 2025 年最新推荐!小程序开发机构排行榜:覆盖定制开发 / 电商 / 预订 / 配送多场景优质服务商成都小程序开发/小程序定制开发/电商小程序开发/预订服务小程序开发公司推荐
  • CF280D k-Maximum Subsequence Sum 题解(线段树+反悔贪心维护k段最大子段和)
  • 2025年微信小程序开发:趋势、最佳实践与AI整合 - 指南
  • 深入解析:【LeetCode 热题100】回溯:括号生成 组合总和(力扣22 / 39 )(Go语言版)
  • 完整教程:基于 COM 的 XML 解析技术(MSXML) 的总结
  • 详细介绍:Windows如何定制键盘按键
  • TheHackersLabs Templo writeup
  • 深入解析:Oracle、PostgreSQL 与 MySQL 数据库对比分析与实践指南
  • PCIe扫盲——链路初始化与训练基础(三)之LTSSM
  • #attrs
  • 国庆比赛总结
  • 记录第一个博客
  • PCIe扫盲——链路初始化与训练基础(二)
  • 20251008J赛合订本
  • 2025 年氨基酸水溶肥厂家最新推荐榜单:聚焦花芽分化膨果上色需求,精选优质企业助农户科学选购花芽分化/膨果上色/促花稳果/低温酶解氨基酸水溶肥厂家推荐
  • VMware ESXi 8.0U3g macOS Unlocker OEM BIOS 2.7 H3C 新华三 定制版
  • 2025 年最新防火涂料厂家排行榜:钢结构各类防火涂料优质厂家最新推荐,助力建筑安全选型 钢结构/水性/隧道/环保/饰面型防火涂料厂家推荐
  • [计算机组成] 计算机字体文件及其运行原理
  • 后量子密码技术延迟随数据量增加而降低
  • 深度解析 Qt 最顶层类 QObject:继承关系与内存生命周期管理 - 详解