计组—— I/O系统

📕:参考王道课件


 目录

一、I/O系统的基本概念

1.什么是“I/O”?

​编辑2.主机如何和I/O设备进行交互?

3.I/O控制方式

(1)程序查询方式

(2)程序中断方式

(3)DMA控制方式

 (4)通道控制方式

4.I/O系统的基本组成


一、I/O系统的基本概念

1.什么是“I/O”?

“I/O”就是“输入/输出”。

I/O设备就是可以将数据输入到计算机或者可以接收计算机输出数据的外部设备。

常见的外部设备:

2.主机如何和I/O设备进行交互?

主机如何和I/O设备 通过I/O接口 进行交互。

“I/O接口”,又称 I/O控制器、设备控制器,负责协调主机与外部设备之间的数据传输。

I/O控制器多种多样,也会制定相应的标准。

比如:用于控制USB设备的I/O接口,用于控制SATA3.0硬盘的I/O接口。

其实I/O控制器就是一块芯片,常被集成在主板上。

3.I/O控制方式

CPU控制I/O的完成有三种方式,分别为 程序查询方式 、 程序中断方式 、DMA控制方式、通道控制方式。

以 CPU控制键盘I/O的完成为例:

(1)程序查询方式

CPU不断轮询检查I/O控制器中“状态寄存器”,检测到状态为“已完成”之后,再从数据寄存器取出输入数据。

(2)程序中断方式

等待键盘I/O时,CPU可以先去执行其他程序。

键盘I/O完成后,I/O控制器向CPU发出中断请求,CPU响应中断请求,并取走输入数据。

以上这两种,是每准备好一个字就给CPU发送一次中断请求 ,这样CPU需要花大量的时间来处理中断服务程序,导致CPU的利用率严重下降。

所以有了下面这一种 DMA控制方式,它适用于高速外设。

(3)DMA控制方式

DMA控制方式:主存与高速I/O设备之间有一条 直接数据通路(DMA总线)。

CPU向DMA接口发出“读/写”命令,并指明主存地址、磁盘地址、读写数据量等参数。

DMA控制器自动控制磁盘与主存的数据读写,每完成一整块数据读写,才向CPU发出一次中断请求。

一整块数据,比如,1KB为一整块。

 (4)通道控制方式

通道可以识别并执行一系列通道指令 。通道指令种类、功能通常比较单一。

通道指令执行过程如上图所示。

第一步:CPU向通道发出I/O指令。

        指明通道程序在内存中的位置,并指明要操作的是哪个I/O设备,然后CPU就可以去做其他事情了。

第二步:通道执行内存中的通道程序。

         通道执行内存中的通道程序,控制I/O设备完成一系列任务。

第三步:发送中断请求

        通道执行完规定的任务后,向CPU发出中断请求,之后CPU对中断进行处理。

4.I/O系统的基本组成

I/O系统,一般由 I/O软件I/O硬件 两部分组成。

(1)I/O硬件

I/O硬件,包括外部设备、I/O接口、I/O总线等。

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

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

相关文章

号卡推广管理系统源码/手机流量卡推广网站源码/PHP源码+带后台版本+分销系统

源码简介: 号卡推广管理系统源码/手机流量卡推广网站源码,基于PHP源码,而且它是带后台版本,分销系统。运用全新UI流量卡官网系统源码有后台带文章。 这个流量卡销售网站源码,PHP流量卡分销系统,它可以支持…

C#餐饮收银系统

一、引言 餐饮收银系统是一种用于管理餐馆、咖啡厅、快餐店等餐饮业务的计算机化工具。它旨在简化点餐、结账、库存管理等任务,提高运营效率,增强客户体验,同时提供准确的财务记录。C# 餐饮收银系统是一种使用C#编程语言开发的餐饮业务管理软…

【Java】微服务——Ribbon负载均衡(跟进源码分析原理)

添加LoadBalanced注解,即可实现负载均衡功能,这是什么原理 1.负载均衡原理 SpringCloud底层其实是利用了一个名为Ribbon的组件,来实现负载均衡功能的。 2.源码跟踪 为什么我们只输入了service名称就可以访问了呢?之前还要获取…

MySQL - mysql服务基本操作以及基本SQL语句与函数

文章目录 操作mysql客户端与 mysql 服务之间的小九九了解 mysql 基本 SQL 语句语法书写规范SQL分类DDL库表查增 mysql数据类型数值类型字符类型日期类型 示例修改(表操作) DML添加数据删除数据修改数据 DQL查询多个字段条件查询聚合函数分组查询排序查询…

conda安装使用jupyterlab注意事项

文章目录 一、conda安装1.1 conda安装1.2 常见命令1.3 常见问题 二、jupyterlab2.1 jupyterlab安装和卸载2.2 常见错误2.2.1 版本冲突,jupyterlab无法启动2.2.2 插件版本冲突 2.3 常用插件2.3.1 debugger2.3.2 jupyterlab_code_formatter 2.4 jupyter技巧 一、conda…

iOS---生成证书文件的时候无法选择导出.p12文件

解决办法: 左栏有两个分类,一个钥匙串,一个是种类,要选择种类里面的【我的证书】或【证书】进行导出。选择【系统】找到【我的证书】这样导出不了"个人信息交换(.p12)" 正确做法是:选择【登录】找到【我的…

智能合约漏洞,BEVO 代币损失 4.5 万美元攻击事件分析

智能合约漏洞,BEVO 代币损失 4.5 万美元攻击事件分析 一、事件背景 北京时间 2023 年 1 月 31 日,在 twitter 上看到这样一条消息: BEVO 代币被攻击,总共损失 45000 美元,导致 BEVO 代币的价格下跌了 99%。 有趣的是…

2023蓝帽杯初赛电子取证部分

取证案情介绍: 2021年5月,公安机关侦破了一起投资理财诈骗类案件,受害人陈昊民向公安机关报案称其在微信上认识一名昵称为yang88的网友,在其诱导下通过一款名为维斯塔斯的APP,进行投资理财,被诈骗6万余万元…

CSS 语法

CSS 实例 CSS 规则由两个主要的部分构成:选择器,以及一条或多条声明: 选择器通常是您需要改变样式的 HTML 元素。 每条声明由一个属性和一个值组成。 属性(property)是您希望设置的样式属性(style attribute&#x…

Raspberry Pi 5 新平台 新芯片组

Raspberry Pi 5 的 CPU 和 GPU 性能提高了两到三倍;内存和 I/O 带宽大约是两倍;并且是首款采用英国剑桥内部设计的芯片的 Raspberry Pi 计算机,4GB 型号的售价为 60 美元,8GB 版本的售价为 80 美元 主要特点包括: 2.4…

【C++】可变参数模板使用,在emplace中应用

🌏博客主页: 主页 🔖系列专栏: C ❤️感谢大家点赞👍收藏⭐评论✍️ 😍期待与大家一起进步! 文章目录 一、可变参数模板1.参数包的展开方式1.递归方式展开2.逗号表达式展开参数包 二、empl…

【问题证明】矩阵方程化为特征值方程求得的特征值为什么是全部特征值?不会丢解吗?

问题 这个问题困扰了我好久,一直感觉如果有其他的特征值没法证伪,不过一直存在思想的层面,没有实际解决,今天突然想到动笔来解决,遂得解,证明如下。 证明 总结 这个证明看似证明过后很直观,但…

AcWing算法提高课-5.6.1同余方程

宣传一下 算法提高课整理 CSDN个人主页:更好的阅读体验 原题链接 题目描述 求关于 x x x 的同余方程 a x ≡ 1 ( m o d b ) ax ≡ 1 \pmod b ax≡1(modb) 的最小正整数解。 输入格式 输入只有一行,包含两个正整数 a , b a,b a,b,用一…

CSS详细基础(五)选择器的优先级

本节介绍选择器优先级,优先级决定了元素最终展示的样式~ 浏览器是通过判断CSS优先级,来决定到底哪些属性值是与元素最为相关的,从而作用到该元素上。CSS选择器的合理组成规则决定了优先级,我们也常常用选择器优先级来合理控制元素…

MySQL优化、锁、总结常见问题

慢 SQL 如何定位呢? 慢 SQL 的监控主要通过两个途径: 慢查询日志:开启 MySQL 的慢查询日志,再通过一些工具比如 mysqldumpslow 去分析对应的慢查询日志,当然现在一般的云厂商都提供了可视化的平台。服务监控&#xf…

以太网的MAC层

以太网的MAC层 一、硬件地址 ​ 局域网中,硬件地址又称物理地址或MAC地址(因为用在MAC帧),它是局域网上每一台计算机中固化在适配器的ROM中的地址。 ​ 关于地址问题,有这样的定义:“名字指出我们所要寻…

阿里云关系型数据库有哪些?RDS云数据库汇总

阿里云RDS关系型数据库大全,关系型数据库包括MySQL版、PolarDB、PostgreSQL、SQL Server和MariaDB等,NoSQL数据库如Redis、Tair、Lindorm和MongoDB,阿里云百科分享阿里云RDS关系型数据库大全: 目录 阿里云RDS关系型数据库大全 …

PDF文件压缩软件 PDF Squeezer mac中文版​软件特点

PDF Squeezer mac是一款macOS平台上的PDF文件压缩软件,可以帮助用户快速地压缩PDF文件,从而减小文件大小,使其更容易共享、存储和传输。PDF Squeezer使用先进的压缩算法,可以在不影响文件质量的情况下减小文件大小。 PDF Squeezer…

【正点原子】无法打开 源 文件 “linux/time_types.h“ (dependency of “linux/ide.h“)

问题描述 在VS code中些驱动代码时显示: 检测到 #include 错误。请更新 includePath。已为此翻译单元(/home/alientek/linux/atk-mp1/Linux_Drivers/2_LED/led.c)禁用波形曲线。C/C(1696) 无法打开 源 文件 "linux/time_types.h" (dependency of "…

大模型RLHF算法更新换代,DeepMind提出自训练离线强化学习框架ReST

文章链接: https://arxiv.org/abs/2308.08998 大模型(LLMs)爆火的背后,离不开多种不同基础算法技术的支撑,例如基础语言架构Transformer、自回归语言建模、提示学习和指示学习等等。这些技术造就了像GPT-3、PaLM等基座…