计算机组成结构—IO系统概述

        

目录

一、I/O 系统的发展

1. 早期阶段

2. 接口模块和 DMA 阶段

3. 通道结构阶段

4. 处理机阶段

二、I/O 系统的组成

1. I/O 软件

2. I/O 硬件

三、I/O 设备

1. I/O 设备分类

2. I/O 设备的组成


        在计算机中,除 CPU 和主存两大模块之外,第三个重要部分就是 输入输出模块,也叫做 输入输出系统,简写为 I/O 系统

        I/O 系统的主要功能,就是对不同类型数据信息的输入输出,进行高效的控制管理。

一、I/O 系统的发展

        I/O 系统的结构,从简单到复杂,发展主要经历了四个阶段。

1. 早期阶段

        早期的输入输出设备比较少,计算机的结构是以 CPU 为中心的分散连接方式;所有 I/O 设备都直接连接到 CPU ,与主存交换数据必须通过 CPU。

        这样,每个 I/O 设备都必须配备一套独立的逻辑电路与 CPU 连接,线路复杂、难以维护和扩展;而且输入输出数据会打断 CPU 运行,效率比较低。

2. 接口模块和 DMA 阶段

        之后计算机的连接方式发展出了总线结构,I/O 设备通过接口模块与总线相连,通过总线进行数据传输。

        通常,在接口模块中都会设有 数据通路控制通路。数据可以通过接口起到缓冲作用,也可以完成串并转换;控制通路则可以传送 CPU 发来的控制命令,或者向 CPU 发送来自 I/O 设备的反馈信号。许多接口还可以满足中断请求处理的要求,使 I/O 设备和 CPU 可以并行工作。

        为了进一步提高 CPU 的效率,又出现了 直接存储器存取(Direct Memory Access,DMA)技术。在 I/O 设备和主存之间增加一条专门的数据通路,让它们可以直接交换信息,而无需经过 CPU。

        在现代的小型或微型计算机中,一般都会采用接口模块和 DMA 的接口来实现 I/O 设备和主存的数据交换。

3. 通道结构阶段

        对于大中型计算机,I/O 设备数量庞大、数据传输非常频繁,采用 DMA 方式需要为每个设备都配置专用的 DMA 接口,CPU 也需要对众多的 DMA 接口进行管理;控制非常复杂、工作效率也会受到很大影响。

        因此在大中型计算机中,采用 I/O 通道 的方式来进行数据交换。

        通道 可以看作一种从属于 CPU 的专用处理器,专门负责管理 I/O 设备,实现主存和 I/O 设备之间的数据交换。采用通道结构的计算机,I/O 设备的数据传输就全部交给通道来处理,提高了 CPU 的资源利用率。

4. 处理机阶段

        I/O 系统进一步发展,出现了 I/O 处理机。I/O 处理机基本独立于主机工作,又称为 外围处理机。 具有 I/O 处理机的 I/O 系统与 CPU 的并行性更高,进一步解放了 CPU ,提升了 CPU 的工作效率。

二、I/O 系统的组成

        I/O 系统主要由两部分组成: I/O 软件I/O 硬件

1. I/O 软件

        I/O 系统软件的主要功能包括:

  • 将用户编写的程序输入主机;

  • 将运算结果传送给用户;

  • 协调 I/O 系统和主机的工作。

        不同结构的 I/O 系统采用的软件技术不同。

        生活中常见的计算机一般采用接口模块方式,指令系统中需要设置专门的 I/O 指令;调用 I/O 指令并配合系统软件中的管理程序,就可以实现 I/O 设备与主机的协调工作。

        如果采用通道管理方式,除 I/O 指令外,还需要有 通道指令 和相应的操作系统。

(1)I/O 指令

        I/O 指令也是一种机器指令,它的指令格式与普通的机器指令类似。

        上面的 I/O 指令格式中,分为三个字段:

  • 操作码:指明当前是一条 I/O 指令;

  • 命令码:指明 I/O 设备的具体操作;

  • 设备码:用来对多台 I/O 设备进行区分和选择,相当于设备地址。

        其中,命令码一般会包括以下几种情况:

  • 将数据从 I/O 设备输入主机;

  • 将数据从主机输出至 I/O 设备;

  • 状态测试。检测 I/O 设备的状态(”忙“ 还是 ”准备就绪“),来确定接下来是否可以进行数据交换;

  • 形成具体的操作命令。例如磁盘驱动器的磁头读扇区、写扇区、寻找磁道等等。

(2)通道指令

        通道指令是具有通道的 I/O 系统专门设置的指令,又称为 通道控制字(Channel Control Word,CCW),是通道用来执行 I/O 操作的指令。

        这类指令位数一般会比较多,主要功能有:

  • 指明要交换的一组数据在主存中的首地址;

  • 指明要传送数据的字节数,或者在主存中的末地址;

  • 指明所选设备的设备码,以及要完成的具体操作的命令码。

        对于采用了通道结构的计算机,CPU 执行的 I/O 指令就只负责启、停 I/O 设备,查询通道和设备状态以及对通道进行操作控制;而具体的数据传输则交给通道来完成。

2. I/O 硬件

        I/O 系统的硬件组成是多种多样的,不同结构的 I/O 系统硬件组成也会有所不同。

  • 采用接口模块结构的 I/O 系统,硬件主要包括 接口模块I/O 设备 两大部分。I/O 设备通过接口连接到主机;

  • 采用通道或处理机结构的 I/O 系统,硬件主要包括 通道/处理机设备控制器I/O 设备;一个通道/处理机可以和多个设备控制器相连,一个设备控制器又可以控制多台同类型的设备。

    此外,连接各模块的数据通路(I/O 总线)也是 I/O 硬件的一部分。

三、I/O 设备

        计算机硬件系统中,主要由三部分组成:CPU 、主存储器和输入输出设备。输入输出设备和它们对应的接口模块,就构成了输入输出系统。

        CPU 与主存合称 主机,主机之外的大部分硬件设备都可以称为 I/O 设备,统称为 外部设备,简称 外设

1. I/O 设备分类

        从应用场景和功能上看,I/O 设备可以分为三大类:

(1)人机交互设备

        实现用户(操作者)和计算机之间信息交流的设备,又可以分为两类:

  • 输入设备:将人们熟悉的信息形式转换为机器能识别的信息形式,如键盘、鼠标、摄像头等。

  • 输出设备:将机器运算结果转换为人们熟悉的信息形式,如打印机、显示器等。

(2)信息存储设备

        系统软件和各种有用信息,都需要进行存储保留,这就需要能够持久化保存的外部存储设备。这类存储设备一般可以作为计算机的辅助存储器,比如磁盘、光盘、固态硬盘等。

(3)机-机通信设备

        多台计算机之间、或者是计算机和其它系统之间如果需要进行通信,必须借助专门的通信设备。比如调制解调器(Modem),A/D、D/A 转换设备等。

2. I/O 设备的组成

        I/O 设备的基本组成如下:

  • 设备控制器用来控制 I/O 设备的具体动作,不同的 I/O 设备需要完成的控制功能也不同;

  • 机、电、磁、光部件是 I/O 设备的工作部件,与具体功能有关;内部结构涉及到机、电、磁、光工作原理;

  • 现代 I/O 设备一般还会通过 I/O 接口与主机相连。

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

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

相关文章

Apple开发者应用商店(AppStore)描述文件及ADHOC描述文件生成

创建AD HOC描述文件 1.选中Profiles,然后点击加号创建 2.创建已注册设备可安装描述文件 3.选择要注册的id 4.选择证书 5.选择设备 6.输入文件名,点击生成 7.生成成功,点击下载

Java使用OpenCV计算两张图片相似度

业务:找出两个表的重复的图片。 图片在表里存的是二进制值,存在大量由于一些特殊情况例如扫描有差异,导致图片存的二进制值不同,但图片其实是一样来的。 所以找出两个表重复相同的图片,不可能只是单纯的比较二进制值…

flask招聘数据分析及展示平台-计算机毕业设计源码39292

目 录 摘要 1 绪论 1.1研究意义 1.2国内外研究进展 1.3flask框架介绍 2 1.4论文结构与章节安排 3 2 招聘数据分析及展示平台分析 4 2.1 可行性分析 4 2.2 系统流程分析 4 2.2.1数据增加流程 5 2.3.2数据修改流程 5 2.3.3数据删除流程 5 2.3 系统功能分析 5 2.3.1 功能性分…

亚马逊新品如何快速吸引流量?自养号测评助卖家一臂之力

在亚马逊平台上每天都会有大量的新品推出,而这些新品中有部分可能并没有什么流量和订单,有些可能上架后立马就能获得流量了,那么亚马逊上新品一般几天出单? 一、亚马逊上新品一般几天出单? 亚马逊上新品出单的时间因…

人工智能时代,想转型AI产品经理?这篇文章你不应该错过

前言 在这个日新月异的智能时代,人工智能(AI)已经从未来概念转变为推动各行各业发展的核心驱动力。作为连接技术与市场的桥梁,AI产品经理的角色愈发关键,他们不仅是技术的翻译者,更是创新的推动者。如果你…

Mintegral解析休闲游戏如何靠创意素材吸引玩家

核心玩法简单清晰、容易让人无限上头的休闲游戏,玩法机制一般比较明确、简单,如果要在短时间内吸引玩家注意,除了完整展示游戏流程以外,开发者需要在素材中设置更多亮点性的内容,如吸睛的剧情、爆炸性的视听效果等元素…

组件的注册和引用

在Vue中,开发者可以将页面中独立的、可重用的部分封装成组件,对组件的结构,样式和行为进行设置。组件是 Vue 的基本结构单元,组件之间可以相互引用。 一.注册组件 当在Vue项目中定义了一个新的组件后,要想在其他组件中…

Vue3_对接腾讯云COS_大文件分片上传和下载

目录 一、腾讯云后台配置 二、安装SDK 1.script 引入方式 2.webpack 引入方式 三、文件上传 1.new COS 实例 2.上传文件 四、文件下载 腾讯云官方文档: 腾讯云官方文档https://cloud.tencent.com/document/product/436/11459 一、腾讯云后台配置 1.登录 对…

[职场] 为什么不能加薪? #学习方法#知识分享#微信

为什么不能加薪? 不能加薪的根本原因,终于被我找到了! 朋友们!职场这个地方是个很神奇的世界,有些规则并不是你想象的那样。我们都希望能在这个世界里施展自己的才华,获得升职加薪的荣耀。然而&#xff0c…

seerfar丨OZON运营工具,OZON选品插件

随着全球电商市场的蓬勃发展,OZON作为俄罗斯及东欧地区的重要电商平台,吸引了众多中国商家的目光。然而,如何在OZON平台上脱颖而出,实现高效的商品运营,成为了众多商家亟待解决的问题。在这样的背景下,seer…

tailwindcss的@apply使用

tailwindcss的apply是把在html写的tailwindcss可以挪到style里面 简化页面的可读性 没写之前的 <section class"block-risk absolute flex flex-col items-center p-4 text-center left-0 text-white;" :style"{ top, left: 60px }"> </section…

被拖欠6000万,代工大厂倒闭了····

6月7日消息&#xff0c;据综合媒体报道&#xff0c;电子烟代工大厂佳斯特电子&#xff08;东莞&#xff09;发布公告&#xff0c;将自6月3日起停止一切经营活动&#xff0c;开始自行清算工作。根据佳斯特电子科技&#xff08;东莞&#xff09;有限公司的通告&#xff0c;由于公…

TypeScript环境安装与VScode编辑器的使用

说明大背景环境&#xff0c;我用的是window10系统。 1.安装node.js 。 去官网下载安装包。 虽然我去的是官网&#xff0c;但是不知为何下载了个不知名的东西&#xff0c;后来又找了个链接才下载正确了。 实际上就是一个.msi的文件。我用的版本&#xff1a;node-v18.19.0-x6…

最大矩形问题

柱状图中最大的矩形 题目 分析 矩形的面积等于宽乘以高&#xff0c;因此只要能确定每个矩形的宽和高&#xff0c;就能计算它的面积。如果直方图中一个矩形从下标为 i 的柱子开始&#xff0c;到下标为 j 的柱子结束&#xff0c;那么这两根柱子之间的矩形&#xff08;含两端的柱…

能把试卷上的字消除的软件有哪些?推荐三款好用的

能把试卷上的字消除的软件有哪些&#xff1f;在数字化时代&#xff0c;我们越来越依赖科技手段来解决生活中的各种问题。其中&#xff0c;试卷上的字消除问题&#xff0c;就是一个备受关注的痛点。幸运的是&#xff0c;现在市面上已经出现了多款能够轻松消除试卷上字迹的软件&a…

力扣hot100:295. 数据流的中位数(两个优先队列维护中位数)

LeetCode&#xff1a;295. 数据流的中位数 这个题目最快的解法应该是维护中位数&#xff0c;每插入一个数都能快速得到一个中位数。 根据数据范围&#xff0c;我们应当实现一个 O ( n l o g n ) O(nlogn) O(nlogn)的算法。 1、超时—插入排序 使用数组存储&#xff0c;维持数…

【WEB自动化面试02--学习过程的问题及解决】

day01 1、报错获取不到浏览器二进制文件&#xff1a;需要指定浏览器路径及驱动路径。 第一次使用谷歌浏览器驱动&#xff0c;找不到二进制文件报错&#xff1a; selenium.common.exceptions.WebDriverException: Message: unknown error: cannot find Chrome binary Stacktra…

短视频矩阵源码----如何做正规开发规则分享:

一、什么是SaaS化服务技术开发&#xff1f; &#xff08;短视频矩阵系统是源头开发的应该分为3个端口---- 总后台控制端、总代理端口&#xff0c;总商户后台&#xff09; SaaS是软件即服务&#xff08;Software as a Service&#xff09;的缩写。它是一种通过互联网提供软件应…

Vue2(0基础入门)

环境准备 安装脚手架 vuecli: npm install -g vue/clivite: npm init vuelatest-g 全局安装&#xff0c;任意目录都可以使用vue脚本 进入目录创建项目&#xff1a; 在目录的终端输入&#xff1a;vue ui安装devtool(这个网页是安装好了自动跳转的) 运行项目&#xff1a; …

代码随想录第27天|贪心算法part1

455.分发饼干 先给孩子和饼干排序&#xff0c;每次选取一个最大的饼干给一个最大胃口的孩子&#xff0c;直到饼干分完或者遍历完孩子 class Solution { public:int findContentChildren(vector<int>& g, vector<int>& s) {sort(g.begin(), g.end());sort(…