计算机组成原理学习笔记第8章I/O系统 8.2 输入/输出方式
名人说:非学无以广才,非志无以成学。——诸葛亮
本篇笔记整理:Code_流苏(CSDN)
Last(在此处点击使用,直达文末)
First (在文末点击使用,返回文章首部)目录
- 1.输入/输出方式
- 2.无条件I/O方式
- 3.程序控制I/O方式
- ①简介
- ②程序查询的I/O原理
- ②设备状态字寄存器
- ③优缺点及应用场景
- 4.中断I/O方式
- ①简介
- ②优缺点及应用场合
- 5.DMA方式
- ①简介
- ②优缺点及应用场合
- 6.通道和I/O处理机方式
- ①简介
- ②通道
- ③I/O处理机
- ④优缺点及应用场合
★观前提示:本专栏笔记内容适合有一定的基础或复习时观看,内容如有错,还请大家评论指出!非常感谢!
1.输入/输出方式
①无条件I/O方式
②程序控制I/O方式
③
中断I/O方式
④
DMA(Direct Memory Access)方式
⑤通道方式
⑥I/O处理机方式
2.无条件I/O方式
◆ 在程序的适当位置
直接安排I/O指令,当程序执行到这些I/O指令
时,CPU默认外设始终是准备就绪
的(I/O总是准备好接收CPU的输出数据,或总是准备好向CPU输入数据),无需检查I/O的状态,就进行数据的传输;
◆ 硬件接口电路和软件控制程序都比较简单。输入时,必须确保CPU执行I/O指令读取数据时,外设已将数据准备好
;输出时,必须确保外部设备的数据锁存器为空
,即外设已将上次的数据取走,等待接收新的数据,否则会导致数据传送出错
,但一般的外设难以满足这种要求。 数据、 避免数据出错;
3.程序控制I/O方式
①简介
◆ 程序控制I/O方式是一种早期计算机
采用的输入/输出方式,数据在计算机和外设之间的传送全部靠计算机程序控制
;计算机执行I/O指令时,先获取外设状态,并根据外设的状态决定下一步操作。
②程序查询的I/O原理
◆ 程序先向I/O设备发出I/O命令字
;
◆ 读取I/O设备工作状态
信息;
◆ 检查状态字中的标志,看是否可以进行数据交换;
◆ 若设备未准备就绪,则返回到上步,重复查询;否则,发出设备准备就绪信号
;
◆ CPU与I/O接口的数据缓冲寄存器进行数据交换
,与此同时,将接口中的状态标志复位。
②设备状态字寄存器
◆ 用来标志设备的工作状态
,以便接口对外部设备进行监视。
◆ CPU通过程序查询设备状态位来判断设备的状态。
◆ 因此,设备状态寄存器是设备对主机的窗口,主机通过它了解设备的状态,并对设备设置操作方式
。
◆ 设备状态寄存器又叫设备状态字(DSW)是设备所有状态的集合,每种状态均用一个触发器来表示。
程序控制I/O方式特点:何时对何设备进行输入输出操作完全受CPU控制
,
外围设备与CPU处于异步工作
关系,数据的输入/输出都要经过CPU
。
③优缺点及应用场景
1️⃣优点
计算机和外设之间能够同步,控制简单,硬件简单。
2️⃣缺点
CPU的大量时间用来查询外设的状态。
3️⃣适用场景
适用于结构简单,只需少量硬件的电路。
4.中断I/O方式
①简介
当外设准备好后,主动通知
CPU并进行接收或输出数据的方法;
CPU接到外设的通知后暂停
现行的工作,转入中断服务程序
,和外设交换数据,
等中断程序处理完毕后,再返回
到被中断的原程序中继续以前被暂停的工作。
②优缺点及应用场合
1️⃣优点
节约CPU时间,实时性好。
2️⃣缺点
控制电路相对复杂,服务开销较大(现场和断点的保护)。
3️⃣应用场合
实时性要求高,且数据传输量又不大的场合。
5.DMA方式
①简介
是一种完全由硬件
执行的I/O交换方式。
当外设准备好后,通知DMA控制器
,DMA控制器从CPU接管总线,并完成外
设和内存之间的大量数据传输
;传输完成后DMA控制器将总线控制权交还给
CPU,整个数据交换的过程不需要CPU参与
。
②优缺点及应用场合
1️⃣优点
既有中断的优点,同时又降低了服务开销。
2️⃣缺点
控制电路更加复杂。
3️⃣应用场合
高速、大批量数据传输。
6.通道和I/O处理机方式
①简介
在复杂的计算机系统中,外围设备的台数一般比较多,设备的种类、工作方式
和工作速度的差别很大
,为了把对外围设备的管理工作从CPU中分离出来,采
用通道或I/O处理机方式。
②通道
通道
是能够专门执行I/O指令的处理机,它可以实现对外围设备的统一管理,
以及外设与主存之间的数据传输。
③I/O处理机
I/O处理机
是通道方式的进一步发展,它的结构更接近于一般处理机。
④优缺点及应用场合
1️⃣优点
一个通道可以控制多台外设,且与CPU并行工作时间最长。
2️⃣缺点
价格较高,不宜过多使用。
3️⃣应用场合
适用于以字节为单位的干预,同时实现CPU、通道和I/O设备三者并行操作的场合。
Last (一键到达文章末尾)
First(一键返回到文章目录)
笔记内容学习资料:计算机组成原理微课版(谭志虎、秦磊华等编著)
课件资料及视频学习:MOOC计算机组成原理(华中科大)
计算机组成原理专栏——笔记及测验练习都在这
如果对大家有帮助的话,希望大家能多多点赞+关注!这样我动力会更足哦! ღ( ´・ᴗ・` )比心。
计算机组成原理学习笔记第8章I/O系统 8.2 输入/输出方式相关推荐
- 计算机组成原理学习笔记第1章 1.3——实验一 计算机性能测试
计算机组成原理学习笔记第1章 1.3--实验一 计算机性能测试 本篇笔记整理:Code_流苏(CSDN) 目录 计算机组成原理学习笔记第1章 1.3--实验一 计算机性能测试 0️⃣思维导图(自制) ...
- 计算机组成原理学习笔记第5章指令系统 5.6——MIPS指令详解
有诗云:苔花如米小,也学牡丹开.--袁枚 本篇笔记整理:Code_流苏(CSDN) Last(在此处点击使用,直达文末) First (在文末点击使用,返回文章首部) 目录 0.思维导图 1.R型指令 ...
- 计算机组成原理学习笔记第6章中央处理器CPU 6.2——数据通路DataPath
有诗云:苔花如米小,也学牡丹开.--袁枚 本篇笔记整理:Code_流苏(CSDN) Last(在此处点击使用,直达文末) First (在文末点击使用,返回文章首部) 目录 0.思维导图 1.数据通路 ...
- 计算机组成原理学习笔记第5章指令系统 5.3——操作数寻址方式
有诗云:苔花如米小,也学牡丹开.--袁枚 本篇笔记整理:Code_流苏(CSDN) Last(在此处点击使用,直达文末) First (在文末点击使用,返回文章首部) 目录 0.思维导图 1.立即数寻 ...
- 计算机组成原理学习笔记第4章 4.2——主存中的数据组织
有诗云:苔花如米小,也学牡丹开.--袁枚 本篇笔记整理:Code_流苏(CSDN) 目录 0.思维导图 1.存储字长 2.数据存储与边界的关系 ①按边界对齐的数据存储 ②未按边界对齐的数据存储 ③边界 ...
- 计算机组成原理学习笔记第4章 4.9——Cache地址映射与变换方法
有诗云:苔花如米小,也学牡丹开.--袁枚 本篇笔记整理:Code_流苏(CSDN) 目录 0. 思维导图 1. 主存与Cache地址映射概述 2. 全相联映射的工作原理 3. 直接映射的工作原理 4. ...
- 计算机组成原理学习笔记第4章 4.10——替换算法
有诗云:苔花如米小,也学牡丹开.--袁枚 本篇笔记整理:Code_流苏(CSDN) Last(在此处点击使用,直达文末) Frist (在文末点击使用,返回文章首部) 目录 0. 思维导图 1. 需要 ...
- 计算机组成原理学习笔记第4章 4.8——相联存储器
有诗云:苔花如米小,也学牡丹开.--袁枚 本篇笔记整理:Code_流苏(CSDN) 目录 0. 思维导图 1. 相联存储器的作用 2. 判断的基本思路 3. 相联存储器的基本结构及工作原理 4. 相联 ...
- 计算机组成原理学习笔记第4章 4.12——虚拟存储器
有诗云:苔花如米小,也学牡丹开.--袁枚 本篇笔记整理:Code_流苏(CSDN) Last(在此处点击使用,直达文末) Frist (在文末点击使用,返回文章首部) 目录 0. 思维导图 1. 虚拟 ...
最新文章
- java map深拷贝_java 实现Map的深复制
- vista——最恰当的中文译名应该是“喂死它”
- Mycat常见问题与解决方案
- OpenStack 对接 Ceph 环境可以创建卷但不能挂载卷的问题
- python3 configparse 配置模块
- IndiaHacks 2016 - Online Edition (Div. 1 + Div. 2) A. Bear and Three Balls 水题
- 两难!到底用 Spring BeanUtils 还是 Apache BeanUtils?
- 通俗解释优化的线性感知机算法:Pocket PLA
- pycharm新建python file没有默认头_Pycharm 设置默认头的图文教程
- 最难面试的IT公司之ThoughtWorks代码挑战——FizzBuzzWhizz游戏(C#解法)
- python写sql语句_如何在Python脚本中执行多个SQL语句?
- 解决npm下载包慢的方法
- pycharm代码删除恢复
- Node-RED使用指南:28:撤销与删除恢复
- 简单个人静态HTML网页设计作品 基于HTML+CSS+JavaScript仿小米手机网站 html静态在线购物商城网页制作
- scrapy框架爬取斗鱼女主播照片,依据颜值排行榜
- 电脑键盘打字错乱怎么办?按键混乱的5种解决方法
- 【免费赠送源码】Springboot科研项目管理系统3lk11计算机毕业设计-课程设计-期末作业-毕设程序代做
- 软件工程——Alpha(2/3)
- Mac之如何查看已用端口