I/O系统(一)
输入输出系统的发展大致可以分为4个阶段
1.早期阶段

特点:
1.1每个IO设备都得有一套独立的逻辑电路和CPU相连。
1.2输入输出过程需要通过CPU,穿插在程序运行的过程中,处理IO时候CPU停止计算
1.3每个IO设备的逻辑控制电路与CPU的控制器构成不可分割的一体,增减困难
2.接口模块,DMA阶段

特点:
2.1接口中有数据通路和控制通路,作为缓冲和串并转换,在传输数据的时候得执行中断,不是完全的并行。
2.2DMA,在IO设备和主存之间有一个直接数据通路,资源利用率进一步提高。
3通道结构

大型计算机中IO设备多,数据传输频繁,采用DMA,增加成本,DMA接口同时访问主存会有冲突。CPU对众多DMA接口管理也会影响效率。
特点:3.1可以看做是具有特殊功能的处理器。根据CPU的IO指令进行启动,停止或改变工作状态,从属CPU的一个专用处理器。IO设备在处理输入输出CPU不直接管理。
4.具有IO处理机的阶段。
4.1独立主机工作,可以完成码制转换,格式处理,数据块监测等操作。
输入输出系统组成
IO软件
主要任务:1将用户编写程序输入主机
2运算结果输出
3输入输出协调
IO指令一般分为:
1.将数据从IO输入主机
2.从主机到IO设备
3.状态测试
4.形成操作命令
通道指令:对IO系统专门设置的指令,一般指明,参与传送的数据组首地址,传送的字节数,设备的设备码。
通道控制字CCW,可以存放在主存中,由通道从主存取出执行。
IO指令主要完成开启,停止IO设备。IO传输由通道指令完成。
IO硬件
主要是接口和IO设备
一个通道可以和多个设备控制器连接。
一个设备控制器又可以和多个同一类型的设备连接。
IO设备与主机
1.IO设备编码方式
有两种方式,统一编址,不统一编址。统一编址就是将IO地址看做是储存地址的一部分。不统一编制就是把IO地址和储存器地址分开,所有对IO访问必须用专有IO指令。
2.设备寻址
每台设备都有一个设备号,由IO指令的设备码字段直接指出该设备的设备号。
3.传送方式
近距离,数据线多,速度快,并行传输
串行传输,远距离,速度慢
联络方式
1立即响应
2异步工作采用应答信号联络,一应一答
3同步工作采用同步时标联络
IO设备与主机连接方式
辐射式和总线式
IO设备与主机信息传送方式
1.程序查询方式
CPU不断查询IO设备是否准备好。CPU和IO是串行,CPU利用率不高。
2.程序中断方式
在CPU启动IO后,继续执行自身程序,当IO准备就绪向CPU发出中断请求,然后CPU相应。
CPU如要传输一批数据,CPU反复启动IO设备,响应中断,直到数据传输完毕。
3.DMA
主存和IO设备间有一条数据通路,主存和IO交换不占用CPU
I/O系统(一)的更多相关文章
- 2012高校GIS论坛
江苏省会议中心 南京·钟山宾馆(2012年4月21-22日) 以"突破与提升"为主题的"2012高校GIS论坛"将于4月在南京举行,由南京大学和工程中心共同承办 ...
- 在Openfire上弄一个简单的推送系统
推送系统 说是推送系统有点大,其实就是一个消息广播功能吧.作用其实也就是由服务端接收到消息然后推送到订阅的客户端. 思路 对于推送最关键的是服务端向客户端发送数据,客户端向服务端订阅自己想要的消息.这 ...
- 数据库优化案例——————某市中心医院HIS系统
记得在自己学习数据库知识的时候特别喜欢看案例,因为优化的手段是容易掌握的,但是整体的优化思想是很难学会的.这也是为什么自己特别喜欢看案例,今天也开始分享自己做的优化案例. 最近一直很忙,博客产出也少的 ...
- ABP文档 - 通知系统
文档目录 本节内容: 简介 发送模式 通知类型 通知数据 通知重要性 关于通知持久化 订阅通知 发布通知 用户通知管理器 实时通知 客户端 通知存储 通知定义 简介 通知用来告知用户系统里特定的事件发 ...
- win7安装时,避免产生100m系统保留分区的办法
在通过光盘或者U盘安装Win7操作系统时,在对新硬盘进行分区时,会自动产生100m的系统保留分区.对于有洁癖的人来说,这个不可见又删不掉的分区是个苦恼.下面介绍通过diskpart消灭保留分区的办法: ...
- iOS---iOS10适配iOS当前所有系统的远程推送
一.iOS推送通知简介 众所周知苹果的推送通知从iOS3开始出现, 每一年都会更新一些新的用法. 譬如iOS7出现的Silent remote notifications(远程静默推送), iOS8出 ...
- (系统架构)标准Web系统的架构分层
标准Web系统的架构分层 1.架构体系分层图 在上图中我们描述了Web系统架构中的组成部分.并且给出了每一层常用的技术组件/服务实现.需要注意以下几点: 系统架构是灵活的,根据需求的不同,不一定每一层 ...
- Hyper-V 激活Windows系统重启后黑屏的解决方法 + 激活方法
异常处理汇总-服 务 器 http://www.cnblogs.com/dunitian/p/4522983.html 服务器相关的知识点:http://www.cnblogs.com/dunitia ...
- Beanstalkd一个高性能分布式内存队列系统
高性能离不开异步,异步离不开队列,内部是Producer-Consumer模型的原理. 设计中的核心概念: job:一个需要异步处理的任务,是beanstalkd中得基本单元,需要放在一个tube中: ...
- [APUE]系统数据文件与信息
一.口令文件 UNIX口令文件包含下表中的各个字段,这些字段包含在 由于历史原因,口令文件是/bin/passwd,而且是一个文本文件,每一行都包括了上表中的七个字段,字段之间用":&quo ...
随机推荐
- SQL 入门了解
SQL 随着应用程序的功能越来越复杂,数据量越来越大,如何管理这些数据就成了大问题: 读写文件并解析出数据需要大量重复代码: 从成千上万的数据中快速查询出指定数据需要复杂的逻辑. 如果每个应用程序都各 ...
- Redhat 6.5安装JDK和Tomcat小记
下面将今天在Linux 6.5环境安装JDK和Tomcat的过程记录下来,以备以后查用. Linux环境:Redhat 6.5 JDK版本:7u79 Tomcat版本:7.0.70 1.下载JDK文件 ...
- 第一个Python小项目:图片转换成字符图片
实现的效果: ...
- git项目提交后执行添加忽略操作
需要删除文件暂存区中的忽略文件 git rm -r --cached 需要忽略的已提交文件或文件夹 eg: git rm -r --cached target/
- LINUX 查看当前系统的内存使用情况 vmstat
Linux vmstat 命令 Vmstat命令是最常见的Linux/Unix监控工具,可以展现给定时间间隔的服务器的状态值,包括服务器的CPU使用率,内存使用,虚拟内存交换情况,IO读写情况. 相比 ...
- springMVC的高级数据绑定,以及json交互,全局异常配置,
一.窄化请求映射 1.在class上添加@RequestMapping(url)指定通用请求前缀, 限制此类下的所有方法请求url必须以请求前缀开头,通过此方法对url进行分类管理. 如下: @Con ...
- WordPress版微信小程序2.1.8版发布
近来的工作比较多,同时也在思考这个项目未来的发展方向,尽管不断有新的wordpress站长,利用我的开源程序搭建了微信小程序,但个人对这个项目的热情日渐减少,促使我不断完善和维护这个开源项目的动力也再 ...
- solr schema.xml Field属性详解
<field name="id" type="string" indexed="true" stored="true&quo ...
- disabled和readonly区别
disabled和readonly这两个属性有一些共同之处,比如都设为true,则form属性将不能被编辑,往往在写js代码的时候容易混合使用这两个属性,其实他们之间是有一定区别的: 如果一个输入项的 ...
- Oracle创建pfile spfile 文件及其恢复
1.Oralce在启动实例的时读取$ORACLE_HOME/dbs下面的初始化文件.初始化文件分为:A.静态参数文件PFILE,一般名为initSID.oraB.永久参数文件SPFILE,一般名为sp ...