计算机组成原理(IO,输入输出)

1、“821.2016T1(1)”,表示821真题,2016年的题,T1是 选择题/填空题/大题 的第一题,其他类似标记也是相通

2、个人小白总结自用,不一定适用于其他人,请自行甄别

3、有任何疑问,欢迎私信探讨,看到后会及时回复

选择题

  1. 计算机的外围设备指:主机(主机 = CPU + 内存储器)以外的设备,不止是输入输出设备,还包括外存…
  2. (821.07.T12)通道程序是通道控制字的有序集合

    通道程序,存放在主存,由“通道控制字“组成,由”通道“执行

  3. 磁盘位密度总结:

    磁盘的磁道:位密度(相同的长度下所包含的bit数的多少)不同(长度从内到外越来越大,但是每一圈的bit数都是相同的,所以最终导致各个圈的位密度不同)同心圆

    ②CD-ROM 的光道是:位密度相同的螺旋线

  4. I/O的4种控制方式:

    程序查询 = 程序直接控制

    DMA传输方式,外设中的数据不直接和CPU中的寄存器进行交换

    DMA = Direct Memory Access = 直接存储器存取方式

    CPU响应DMA的时刻是:存储周期结束

  5. 中断:

    外部中断请求,所生成的与中断请求相对应的中断类型号是由:相关外设接口产生

    访管指令(访问管理程序的指令),中断响应优先级最高

    可屏蔽中断:键盘输入、磁盘寻道错中断、打印机输出中断

    不可屏蔽中断:掉电中断、缺页中断、运算溢出

  6. RAID,磁盘冗余阵列

    条带化:把数据分散到多个磁盘(408.13.T20),交叉并行读写,提高数据的存取速度,没有提高RAID的可靠性

填空题

  1. IO控制方式

    DMA访存的3个方式:全串行方式、周期挪用、交替访存方式

    DMA从CPU完全接管对总线的控制,数据交换不再通过CPU寄存器中转,而是直接IO设备主存进行交换

    通道,按工作方式分为:字节多路通道、数组多路通道、选择通道

  2. IO设备的2种编址方式:统一编址、独立编址
  3. 中断响应 – 硬件
  4. 中断处理 – 软件(画表写出屏蔽字,只看中断处理的优先次序)
  5. 中断响应的3个条件:

    中断源有中断请求

    CPU允许中断(即开中断状态)

    CPU在一条指令执行完毕,且没有更紧迫的任务或事件

  6. 多级中断系统,中断服务程序内的执行顺序:删除画删除线后,就是单级中断

    保护现场和旧屏蔽字

    设置新的屏蔽字

    开中断

    中断处理

    关中断

    恢复现场和旧屏蔽字

    开中断

    中断返回

  7. I/O设备和I/O 接口,只是 I/O 的硬件部分,完整的I/O 系统应该包括 I/O硬件 和 I/O软件两个部分
  8. 每个外设都有以一个IO接口的电路与主机连接,一个IO接口中有多个端口,一个端口对应一个地址,这样主存可以用多个地址访问一个外设
  9. 中断向量=中断服务程序的入口地址(易混)不等于中断向量地址
  10. 中断向量地址=中断类型号

    是中断向量的地址,即是中断服务程序入口地址的地址

简答题

开中断,之前,必须保护现场

关中断,之后,再恢复现场

多级中断系统,中断服务程序内的执行顺序:

  1. 保护现场和旧屏蔽字
  2. 设置新的屏蔽字
  3. 开中断
  4. 中断处理
  5. 关中断
  6. 恢复现场和旧屏蔽字
  7. 开中断
  8. 中断返回

中断隐指令(王道P288

CPU响应中断后,暂停当前的程序,是硬件的一系列操作,不是真正意义上的指令,一般有3个操作:

  1. 关中断,设置程序状态字寄存器PSW中的中断标志IF=0,即不允许响应其他中断;
  2. 保存断点和程序状态,(保存地址)将断点和程序状态保存到堆栈或特殊寄存器中。(易混)异常断点是保存当前指令的地址,因为异常处理后需要重新执行;中断的断点是保存下一条指令的指令;
  3. 中断服务程序寻址,通过硬件向量法或软件查询法非硬件向量法,王道5.5小节 ,识别中断源,将对应的服务程序入口地址送给程序计数器PC。

中断处理过程(王道P288

中断隐指令(3步)+ 中断服务程序(7步)

单重中断的中断服务程序执行顺序(408.10T21):

  • 保护现场和屏蔽字
  • 执行中断服务程序
  • 恢复现场和屏蔽字
  • 中断
  • 中断返回

多重中断,则在执行中断服务程序前后分别加:开中断、关中断

大题

  1. 画表,写出每一级的中断屏蔽码

    只看中断处理次序

  2. 画图,同时请求时,画出CPU执行程序的各个中断的运行轨迹
    • 先看中断响应次序最高的响应
    • 再响应该屏蔽字中为0的,中断处理次序最高的响应
    • 执行完再回到首次响应的中断处,看是否还有:未处理 且 屏蔽字为0

      有,则:继续b)c)

      无,则:执行完本中断,返回现行程序,继续执行其他:未处理 且 中断响应次序较高的中断,直到全部执行结束

  3. IO控制方式,CPU用于IO的时间,占整个CPU时间:

补充知识点

I/O端口的编址

统一编址
(只有单总线才可以)
优点
1、不需要专门的输入/输出指令,访存指令都可以直接访问端口,程序设计灵活
2、I/O端口有较大的编址空间(因为与主存共享空间)
3、CPU读写控制逻辑电路简单(逻辑电路不需要太大的改变)
缺点
1、I/O指令类型少,一般只能对端口进行传送操作,程序设计灵活性差
2、需要CPU提供:存储器读/写、I/O设备读/写,两组控制信号,增加CPU逻辑电路的复杂性
独立编址
(有专门的IO指令)
缺点
1、端口占用了主存地址空间,使主存地址空间变小
2、
外设寻址时间长(地址位数多,导致地址译码速度慢)
优点
1、使用专用I/O指令,程序编制清晰
2、I/O端口的地址不占用主存地址空间
3、I/O端口地址位数少,地址译码速度快

I/O控制方式

 程序查询
程序直接控制
程序中断DMA
Direct Memory Access/直接存储器存取方式
通道控制
数据传送需要先找出1s需要查询多少次(王道P298T4/T7)程序控制,程序传送(软件传送)
用处理中断的时间传输数据(王道P298.T6)
硬件控制,硬件传送
周期挪用时,每次IO控制器中的数据缓存大小1B数据消耗1个存储周期,当传送数据达到大块数据规定的量时,消耗1次中断时间(王道P298.T6)
1、通道程序是“通道控制字”的有序集合(821.07.12
2、CPU 查询通道的状态是通过:I/0 指令(
821.05.T14
3、一般用于大型计算机系统
中断方式程序的切换--> 保存和恢复现场DMA不需要使用CPU内部寄存器,所以不需要保存CPU现场
除了预处理和后处理,其他时间不占用CPU资源/一个完整的DMA,只有前后需要CPU的参与
工作特点CPU与I/O一直都是串行工作CPU与外设并行工作
传送与主程序
串行工作
CPU与外设并行工作
传送与主程序
并行工作
中断请求为了传送数据为了向CPU报告数据传输结束(后处理)
响应 指令执行周期结束后响应(除了关中断,不响应)存储周期结束后 = 一个总线事物完成后
每个
机器周期结束均可(取指/间址/执行周期结束后均可),总线空闲时即可响应DMA请求
场景 CPU控制/低速设备DMA控制器控制/高速设备(磁盘)
优先级 DMA优先级高
因为DMA数据成组传输,如果不及时处理将丢失信息
处理异常 不能,仅传送数据
执行 硬件执行的中断隐指令和中断服务程序共同完成全部硬件
使用CPU占比(见公式整理)(见公式整理)
其他CPU询问I/O接口
CPU有“原地踏步”等待现象
1、浮点数运算下溢直接当作机器零处理,不会引发中断
2、中断优先级 王道.P287
DMA > NMI > CPU内部异常 > INTR
硬件故障 > 软件中断
高速设备 > 低速设备(DMA > I/O设备)
输入设备 > 输出设备
实时设备 > 普通设备
1、DMA数据传输的3个阶段
预处理:由每个设备自己的设备驱动程序,设置本次传送的参数。I/O设备向DMA控制器发送DMA请求,DMA接口向CPU发送总线请求。
数据传送:由DMA控制器直接控制总线完成
后处理:DMA向CPU发送中断请求,CPU执行中断服务程序,做DMA结束处理
(王道.P294.T06)
联系1、程序查询和程序中断,用于数据传输率低的设备(408.13.T22,并是说适用所有外设
DMA、通道控制方式,用于数据传输率较高的设备

 DMA的工作方式 / DMA与CPU共同访存的3种方式 / DMA数据传输方法(绿书P351/王道P292

 全串行方式周期挪用/周期窃取交替访存方法/透明DMA方式
释义DMA传输时,CPU停止访存,DMA传送一块数据使用完总线后,再将总线控制权交给CPU即DMA有请求,则可挪用一个或若干个存储周期
传送完一个数据字后,马上释放总线(单字传送方式),单个字传送完后,CPU就可以访问存储器了(在DMA周期挪用时,CPU也可以访问存储器)
将一个CPU工作周期(机器周期)分为两个周期,一个周期DMA专用访存,另一个周期CPU专用访存
优点控制简单,适合高速外设即实现了IO的数据传送,又保证了CPU程序的执行,较好的发挥了主存和CPU的效率适合CPU工作周期(机器周期)比主存存储周期长得多得的情况,不需要总线使用权的申请、建立和归还
缺点1、DMA在访存时,CPU基本处于不工作或保持原状态
2、即使是高速外设,两个单位数据的准备间隔时间一般也是大于存储周期,所以存储器的效能未能充分发挥
DMA每次挪用一个存储周期,都要分别申请、建立、归还总线的控制权硬件逻辑复杂,且要求存储器速度快

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/304501.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

centos7部署zabbix6.4.9

文章目录 [toc]一、环境准备1)部署lnmp2)修改配置文件3)安装数据库 二、部署zabbix1)下载zabbix2)安装zabbix服务端3)修改配置4)开机启动5)安装客户端 三、登录配置1)访问…

数据结构--KMP算法

数据结构–KMP算法 首先我在这里提出以下问题,一会一起进行探讨 1.什么是最长公共前后缀 2. KMP算法怎么实现对匹配原理 3. 最长公共前后缀怎么求解 KMP算法可以用来解决什么问题? 答:在字符串中匹配子串,也称为模式匹配 分析…

mac电脑安装软件报错:无法检查更新,请检查你的互联网连接

1、点菜单栏搜索图标,输入:终端 ,找到后,点击打开 2、输入以下命令:(复制粘贴进去)回车安装 /usr/sbin/softwareupdate --install-rosetta --agree-to-license 3、提示【Install of Rosetta …

电商技术揭秘十八:电商平台的云计算与大数据应用小结

电商技术揭秘相关系列文章 电商技术揭秘一:电商架构设计与核心技术 电商技术揭秘二:电商平台推荐系统的实现与优化 电商技术揭秘三:电商平台的支付与结算系统 电商技术揭秘四:电商平台的物流管理系统 电商技术揭秘五&#xf…

spring boot 集成 flyway依赖 做数据库迁移,让部署没烦恼

flyway 是一个敏捷工具&#xff0c;用于数据库的移植。采用 Java 开发&#xff0c;支持所有兼容 JDBC 的数据库。 主要用于在你的应用版本不断升级的同时&#xff0c;升级你的数据库结构和里面的数据。 还是直接上代码 第一步&#xff1a; <!-- Flyway 数据库迁移 依赖 他…

MySQL排序原理与优化方法(9/16)

order by排序优化 MySQL排序策略 内存临时表 or 磁盘临时表&#xff1f; **内存临时表排序&#xff1a;**在MySQL中&#xff0c;使用InnoDB引擎执行排序操作时&#xff0c;当处理的数据量较小&#xff0c;可以在内存中完成排序时&#xff0c;MySQL会优先使用内存进行排序操作…

知名的开源大模型及其特点

目前&#xff0c;开源的大模型领域涌现出了许多具有不同特点和优势的模型。这些开源大模型不仅推动了AI技术的发展&#xff0c;也为研究者和开发者提供了丰富的资源和工具&#xff0c;促进了AI应用的创新和多样化。以下是一些知名的开源大模型及其特点。北京木奇移动技术有限公…

Python测试框架之pytest详解

前言 Python测试框架之前一直用的是unittestHTMLTestRunner&#xff0c;听到有人说pytest很好用&#xff0c;所以这段时间就看了看pytest文档&#xff0c;在这里做个记录。 官方文档介绍&#xff1a; Pytest is a framework that makes building simple and scalable tests e…

2024年ERP软件上中下游结构分析及细分行业研究

环洋咨询Global Info Research的ERP软件市场调研报告提供ERP软件市场的基本概况&#xff0c;包括定义&#xff0c;分类&#xff0c;应用和产业链结构&#xff0c;同时还讨论发展政策和计划以及制造流程和成本结构&#xff0c;分析ERP软件市场的发展现状与未来市场趋势&#xff…

String类(1)

❤️❤️前言~&#x1f973;&#x1f389;&#x1f389;&#x1f389; hellohello~&#xff0c;大家好&#x1f495;&#x1f495;&#xff0c;这里是E绵绵呀✋✋ &#xff0c;如果觉得这篇文章还不错的话还请点赞❤️❤️收藏&#x1f49e; &#x1f49e; 关注&#x1f4a5;&a…

三年Android开发经验面试经历分享

最近&#xff0c;参加了多家公司的面试&#xff0c;下面是我所经历的一些面试问题及自己的回答思路。 一、京东面试 一面&#xff1a; 项目内容&#xff1a;主要讲述了在实习期间参与的项目&#xff0c;以及在项目中负责的工作和取得的成果。MVP模式&#xff1a;解释了MVP模…

CSS实现三栏自适应布局(两边固定,中间自适应)

绝对定位的元素会脱离文档流&#xff0c;它们是相对于包含块&#xff08;通常是最近的具有相对定位、绝对定位或固定定位属性的父元素&#xff09;进行定位的。当你把一个绝对定位的元素的高度设置为100%时&#xff0c;它会相对于其包含块的高度来确定自己的高度。如果包含块是…

政安晨:【深度学习神经网络基础】(六)—— 前馈神经网络

目录 简述 前馈神经网络结构 计算输出 初始化权重 径向基函数神经网络 径向基函数 政安晨的个人主页&#xff1a;政安晨 欢迎 &#x1f44d;点赞✍评论⭐收藏 收录专栏: 政安晨的机器学习笔记 希望政安晨的博客能够对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎…

Centos7源码方式安装Elasticsearch 7.10.2单机版

版本选择参考&#xff1a;Elasticsearch如何选择版本-CSDN博客 下载 任选一种方式下载 官网7.10.2版本下载地址&#xff1a; https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.10.2-linux-x86_64.tar.gz 网盘下载链接 链接&#xff1a;https://pan…

OpenGL Assimp 加载3D模型介绍

OpenGL Assimp 加载3D模型介绍 Assimp对应模型结构体解说 所有的模型、场景数据都包含在scene对象中&#xff0c;如所有的材质和Mesh。同样&#xff0c;场景的根节点引用也包含在这个scene对象中 场景的Root node&#xff08;根节点&#xff09;可能也会包含很多子节点和一个…

c++的学习之路:16、list(3)

上章有一些东西当时没学到&#xff0c;这里学到了将在补充&#xff0c;文章末附上代码&#xff0c;思维导图。 目录 一、赋值重载 二、带模板的创建 三、析构函数 四、代码 五、思维导图 一、赋值重载 这里的赋值重载就是直接利用交换函数进行把传参生成的临时数据和需要…

对称加密学习

对称加密是一种加密技术&#xff0c;它使用相同的密钥进行数据的加密和解密操作。这种加密方法因其高效性和速度优势&#xff0c;在数据加密领域得到了广泛的应用。 下面是两篇文章&#xff1a; AES加密学习-CSDN博客 加密算法学习-CSDN博客 推荐关注加密专栏&#xff1a; …

建模实例评点(6)业务流程-农业大棚

1 00:00:02,650 --> 00:00:06,000 假设这一步不是老司机来做 2 00:00:06,320 --> 00:00:08,430 主管不是老司机&#xff0c;是个小白 3 00:00:08,440 --> 00:00:09,470 比如像我这样 4 00:00:09,990 --> 00:00:11,580 潘加宇去做这个事情 5 00:00:12,460 -->…

C++感受4-HelloWorld中文版——认识编码

及时了解“编码”对编写代码的影响&#xff0c;是中国程序员越早知道越好的知识点。 一分钟了解什么叫“编码”和“解码”&#xff1b;通过实际演示&#xff0c;充分理解中文Windows下&#xff0c;C源代码编码需要注意的地方&#xff1b;通过 -finput-charsetutf8 等 g 编译配置…