chap6-输入输出系统_第1页
chap6-输入输出系统_第2页
chap6-输入输出系统_第3页
chap6-输入输出系统_第4页
chap6-输入输出系统_第5页
已阅读5页,还剩62页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1 1/66/66第第6 6章章 输入输入/ /输出系统输出系统张伟功张伟功首都师范大学信息工程学院首都师范大学信息工程学院办公室:办公室:221221(周四下午)(周四下午)EMAILEMAIL:参考网站:参考网站:http:/ 2/66/666.16.1I/OI/O系统性能与系统性能与CPUCPU性能性能6.26.2I/OI/O系统的可靠性、可用性和可信性系统的可靠性、可用性和可信性6.46.4总线总线6.56.5通道处理机通道处理机6.66.6I/OI/O与操作系统与操作系统第6章 输入/输出系统3 3/66/666.1 I/O6.1 I/O系统性能与系统性能与CPUCPU性能性能1.1

2、. 输入输入/ /输出系统简称输出系统简称I/OI/O系统系统它包括:它包括:qI/OI/O设备设备qI/OI/O设备与处理机的连接设备与处理机的连接2.2. I/OI/O系统是计算机系统中的一个重要组成部分系统是计算机系统中的一个重要组成部分完成计算机与外界的信息交换完成计算机与外界的信息交换给计算机提供大容量的外部存储器给计算机提供大容量的外部存储器 3.3. 按照主要完成的工作进行分类:按照主要完成的工作进行分类:q存储存储I/OI/O系统系统q通信通信I/OI/O系统系统第6章 输入/输出系统4 4/66/666.1 I/O系统性能与CPU性能w人们对人们对I/OI/O系统的作用和性能

3、没有给予足够的重视系统的作用和性能没有给予足够的重视人们更多地关注:人们更多地关注:CPUCPU的性能的性能 许多人甚至认为许多人甚至认为CPUCPU的速度就是计算机的速度。的速度就是计算机的速度。I/OI/O设备通常被称为设备通常被称为外围设备。外围设备。 (外围的就似乎没那么重要了)(外围的就似乎没那么重要了) w系统的响应时间系统的响应时间( (衡量计算机系统的一个更好的指标衡量计算机系统的一个更好的指标) )从用户输入命令开始,到得到结果所花费的时间。从用户输入命令开始,到得到结果所花费的时间。由两部分构成:由两部分构成:qI/OI/O系统的响应时间系统的响应时间qCPUCPU的处理时

4、间的处理时间 5 5/66/666.1 I/O系统性能与CPU性能w误区:误区:使用多进程技术可以忽略使用多进程技术可以忽略I/OI/O性能对系统性能性能对系统性能的影响的影响多进程技术只能够提高系统吞吐率,并不能够减多进程技术只能够提高系统吞吐率,并不能够减 少系统响应时间。少系统响应时间。进程切换时可能需要增加进程切换时可能需要增加I/OI/O操作。操作。可切换的进程数量有限,当可切换的进程数量有限,当I/OI/O处理较慢时,仍处理较慢时,仍 然会导致然会导致CPUCPU处于空闲状态。处于空闲状态。 6 6/66/666.1 I/O系统性能与CPU性能 例例6.16.1 假设一台计算机的假

5、设一台计算机的I/OI/O处理时间占响应时间的处理时间占响应时间的10%10%,当,当I/OI/O性能保持不变,而对性能保持不变,而对CPUCPU的性能分别提高的性能分别提高1010倍和倍和100100倍时,该倍时,该计算机系统的总体性能会发生什么样的变化?计算机系统的总体性能会发生什么样的变化? 解解 假设改进前程序的执行时间为假设改进前程序的执行时间为1 1个单位时间。个单位时间。 如果如果CPUCPU的性能提高的性能提高1010倍,程序的执行时间(包含倍,程序的执行时间(包含I/OI/O处理时处理时间)减少为:间)减少为: (1(1 10%) / 10 + 10% = 0.1910%)

6、/ 10 + 10% = 0.19 即整机性能只能提高到原来的约即整机性能只能提高到原来的约5 5倍,约倍,约50%50%的的CPUCPU性能被浪性能被浪费在费在I/OI/O处理上。处理上。7 7/66/666.1 I/O系统性能与CPU性能 如果如果CPUCPU的性能提高的性能提高100100倍,程序的执行时间减少为:倍,程序的执行时间减少为: (1 (1 10%) / 100 + 10% = 0.109 10%) / 100 + 10% = 0.109 这表示整机性能只能提高约这表示整机性能只能提高约1010倍,约倍,约90%90%的性能被浪费在的性能被浪费在没有改进的没有改进的I/OI/

7、O处理上。处理上。 8 8/66/666.1 I/O系统性能与CPU性能w评价评价I/OI/O系统性能的参数主要有:系统性能的参数主要有:连接特性连接特性(哪些(哪些I/OI/O设备可以和计算机系统相连接)设备可以和计算机系统相连接)I/OI/O系统的容量系统的容量(I/OI/O系统可以容纳的系统可以容纳的I/OI/O设备数)设备数)响应时间和吞吐率等响应时间和吞吐率等w另一种衡量另一种衡量I/OI/O系统性能的方法:系统性能的方法: 考虑考虑I/OI/O操作对操作对CPUCPU的打扰情况。的打扰情况。 即考查某个进程在执行时,由于其他进程的即考查某个进程在执行时,由于其他进程的I/OI/O操

8、操作,使得该进程的执行时间增加了多少。作,使得该进程的执行时间增加了多少。 9 9/66/661.1. 处理器性能已经很高,人们更加关注系统可靠性。处理器性能已经很高,人们更加关注系统可靠性。2.2. 反映外设可靠性能的参数有:反映外设可靠性能的参数有:可靠性可靠性(ReliabilityReliability)可用性可用性(AvailabilityAvailability)可信性可信性(DependabilityDependability)3.3. 系统的可靠性:系统的可靠性:系统从某个初始参考点开始一直连续系统从某个初始参考点开始一直连续提供服务的能力。提供服务的能力。用用平均无故障时间平

9、均无故障时间MTTFMTTF来衡量。来衡量。 (Mean Time To FailureMean Time To Failure) 6.2 I/O6.2 I/O系统的可靠性、可用性和可信性系统的可靠性、可用性和可信性第6章 输入/输出系统1010/66/666.2 I/O系统的可靠性、可用性和可信性MTTFMTTF的倒数就是的倒数就是系统的失效率。系统的失效率。如果系统中每个模块的生存期服从指数分布,则如果系统中每个模块的生存期服从指数分布,则系统整体系统整体的失效率是各部件的失效率之和。的失效率是各部件的失效率之和。w系统的可用性系统的可用性:系统正常工作的时间在连续两次正常服务间隔系统正常

10、工作的时间在连续两次正常服务间隔时间中所占的比率。时间中所占的比率。MTTF+MTTRMTTF+MTTR:平均失效间隔时间平均失效间隔时间MTBFMTBF (Mean Time Between FailureMean Time Between Failure)w系统的可信性:系统的可信性:服务的质量。即在多大程度上可以合理地认为服务的质量。即在多大程度上可以合理地认为服务是可靠的。服务是可靠的。 包括:可靠性、可用性、可维修性、可测性、安全性、保密性包括:可靠性、可用性、可维修性、可测性、安全性、保密性MTTRMTTFMTTF可用性1111/66/666.2 I/O系统的可靠性、可用性和可信性

11、 例例6.26.2 假设磁盘子系统的组成部件和它们的假设磁盘子系统的组成部件和它们的MTTFMTTF如下:如下:(1 1)磁盘子系统由)磁盘子系统由1010个磁盘构成,每个磁盘的个磁盘构成,每个磁盘的MTTFMTTF为为10000001000000小时;小时;(2 2)1 1个个SCSISCSI控制器,其控制器,其MTTFMTTF为为500000500000小时;小时;(3 3)1 1个不间断电源,其个不间断电源,其MTTFMTTF为为200000200000小时;小时;(4 4)1 1个风扇,其个风扇,其MTTFMTTF为为200000200000小时;小时;(5 5)1 1根根SCSISC

12、SI连线,其连线,其MTTFMTTF为为10000001000000小时。小时。 假定每个部件的生存期服从指数分布,同时假定各部件的假定每个部件的生存期服从指数分布,同时假定各部件的故障是相互独立的,求整个系统的故障是相互独立的,求整个系统的MTTFMTTF。1212/66/666.2 I/O系统的可靠性、可用性和可信性 解解 整个系统的失效率为:整个系统的失效率为: 系统的系统的MTTFMTTF为系统失效率的倒数,即:为系统失效率的倒数,即: 即将近即将近5 5年。年。 100000023100000012000001200000150000011000000110系统失效率小时435002

13、31000000MTTF1313/66/666.2 I/O系统的可靠性、可用性和可信性w提高系统组成部件可靠性的方法提高系统组成部件可靠性的方法 有效构建方法有效构建方法(Valid ConstructionValid Construction)(避错)(避错) 在构建系统的过程中消除故障隐患,这样建立起来在构建系统的过程中消除故障隐患,这样建立起来的系统就不会出现故障。的系统就不会出现故障。容错方法容错方法(Fault TolerantFault Tolerant) 在系统构建中采用一定的冗余措施,即使出现故障,在系统构建中采用一定的冗余措施,即使出现故障,也可以通过容错信息保证系统正常工作

14、。也可以通过容错信息保证系统正常工作。1414/66/66I/OI/O设备与设备与CPUCPU和存储器的连接和存储器的连接 1. 1. 通过接口将许多子系统连接起来通过接口将许多子系统连接起来2. 2. 接口使用得最多的就是总线接口使用得最多的就是总线3. 3. 输入输出方式输入输出方式 直接传送直接传送 程序查询程序查询 中断中断 DMA DMA 通道通道 第6章 输入/输出系统1515/66/66在计算机系统中,各子系统之间可以通过总线互相在计算机系统中,各子系统之间可以通过总线互相连接。连接。优点:优点:成本低、多样性成本低、多样性主要缺点:主要缺点:它是由不同的外设分时共享的,形成了它

15、是由不同的外设分时共享的,形成了信息交换的瓶颈,从而限制了系统中总的信息交换的瓶颈,从而限制了系统中总的I/OI/O吞吐吞吐量。量。6.4 6.4 总总 线线第6章 输入/输出系统1616/66/666.4 总 线1. 总线设计存在很多技术难点总线设计存在很多技术难点一个重要原因:一个重要原因:总线上信息传送的速度极大地受总线上信息传送的速度极大地受限于各种物理因素。限于各种物理因素。 如总线的长度、设备的数目、信号的强度等,这如总线的长度、设备的数目、信号的强度等,这些物理因素限制了总线性能的提高。些物理因素限制了总线性能的提高。另外,我们一方面要求另外,我们一方面要求I/OI/O操作响应快

16、,另一方操作响应快,另一方面又要求高吞吐量,这可能造成设计需求上的冲面又要求高吞吐量,这可能造成设计需求上的冲突。突。6.4.1 6.4.1 总线的设计总线的设计1717/66/666.4 总 线w设计总线时需要考虑的一些问题 特性特性 高性能高性能 低价格低价格 总线宽度总线宽度 独立的地址和数据总线独立的地址和数据总线 数据和地址分时数据和地址分时共用同一套总线共用同一套总线 数据总线宽度数据总线宽度 越宽越快(例如:越宽越快(例如:6464位)位) 越窄越便宜(例如:越窄越便宜(例如:8 8位)位) 传输块大小传输块大小 块越大总线开销越小块越大总线开销越小 单字传送更简单单字传送更简单

17、 总线主设备总线主设备 多个(需要仲裁)多个(需要仲裁) 单个(无需仲裁)单个(无需仲裁) 分离事务分离事务 采用采用分离的请求包和分离的请求包和回答包能提高总线带宽回答包能提高总线带宽 不采用不采用持续连接成本持续连接成本更低,而且延迟更小更低,而且延迟更小 定时方式定时方式 同步同步 异步异步 1818/66/666.4 总 线3. 3. 分离事务总线分离事务总线(又称:(又称:流水总线、悬挂总线、包交换总线流水总线、悬挂总线、包交换总线)在有多个主设备时,可以通过打包技术来提高总在有多个主设备时,可以通过打包技术来提高总线带宽。线带宽。基本思想基本思想q将总线事务分成请求和应答两部分。将

18、总线事务分成请求和应答两部分。q在请求和应答之间的空闲时间内,总线可以供其他的在请求和应答之间的空闲时间内,总线可以供其他的I/OI/O使用,这样就不必在整个使用,这样就不必在整个I/OI/O过程中都独占总线。过程中都独占总线。 工作过程的示意图工作过程的示意图 1919/66/666.4 总 线分离事务总线有较高的带宽,但是它的数据传送分离事务总线有较高的带宽,但是它的数据传送延迟通常比独占总线方法大。延迟通常比独占总线方法大。 2020/66/666.4 总 线4. 同步总线同步总线 包含一个供总线上所有设备使用的时钟,并且这包含一个供总线上所有设备使用的时钟,并且这些设备是基于该时钟按照

19、一个固定的协议来发送些设备是基于该时钟按照一个固定的协议来发送地址和数据的。地址和数据的。 优点:优点:速度快、成本低。速度快、成本低。 缺点:缺点:总线操作都必须以同样的时钟频率进行。总线操作都必须以同样的时钟频率进行。 5. 异步总线异步总线 没有统一的参考时钟,每个设备都有各自的定时没有统一的参考时钟,每个设备都有各自的定时方法。方法。采用握手协议采用握手协议 。2121/66/666.4 总 线1.1. I/OI/O总线标准总线标准:定义如何将设备与计算机进行连接的定义如何将设备与计算机进行连接的文档。文档。2.2. 常见常见I/OI/O总线的一些典型特征总线的一些典型特征 6.4.2

20、 6.4.2 总线标准和实例总线标准和实例IDE / Ultra ATA IDE / Ultra ATA SCSI SCSI PCI PCI PCI-X PCI-X 数据宽度(数据宽度(b b) 16 16 8/168/1632/6432/6432/6432/64时钟频率(时钟频率(MHzMHz) 1001001010(FastFast)2020(UltraUltra)4040(Ultra2Ultra2)8080(Ultra3Ultra3)160160(Ultra4Ultra4) 33/6633/6666/100/13366/100/133总线主设备数量总线主设备数量 1 1个个 多个多个 多

21、个多个 多个多个 峰值带宽(峰值带宽(MBpsMBps) 20020032032053353310661066同步方式同步方式 异步异步 异步异步 同步同步 同步同步 标准标准 无无 ANSI X3.131 ANSI X3.131 无无 无无 几种常用并行几种常用并行I/OI/O总线总线 2323/66/666.4 总 线在嵌入式系统中使用较多的在嵌入式系统中使用较多的4 4种串行种串行I/OI/O总线的一些典型特征总线的一些典型特征 I I2 2C C 1-wire 1-wire RS-232 RS-232 SPI SPI 数据宽度(数据宽度(b b) 1 11 12 21 1信号线数量信号

22、线数量 2 21 19/259/253 3时钟频率(时钟频率(MHzMHz) 0.40.410 10 异步异步 0.040.04或异步或异步 异步异步 总线主设备数量总线主设备数量 多个多个 多个多个 多个多个 多个多个 峰值带宽(峰值带宽(MbpsMbps) 3.4 0.014 0.014 0.192 0.192 1 1同步方式同步方式 异步异步 异步异步 异步异步 异步异步 标准标准 无无 无无 EIA, ITU-T V.21 EIA, ITU-T V.21 无无 2424/66/666.4 总 线在服务器系统中使用的在服务器系统中使用的CPU-CPU-存储器互连系统存

23、储器互连系统 HP HyperPlane HP HyperPlane Crossbar Crossbar IBM SP IBM SP SUN Gigaplane-SUN Gigaplane-XB XB 数据宽度(数据宽度(b b) 6464128128128128时钟频率(时钟频率(MHzMHz) 12012011111183.3 83.3 总线的主设备数总线的主设备数 多个多个 多个多个 多个多个 每端口峰值带宽(每端口峰值带宽(MBpsMBps) 9609601700170013001300总峰值带宽(总峰值带宽(MBpsMBps) 7680768014200142001066710667

24、同步方式同步方式 同步同步 同步同步 同步同步 标准标准 无无 无无 无无 2525/66/666.4 总 线1.1. I/OI/O总线的物理连接方式有两种选择总线的物理连接方式有两种选择连接到存储器上连接到存储器上 更常见更常见连接到连接到CacheCache上上2.2. I/OI/O总线连接到存储器总线上的方式总线连接到存储器总线上的方式一种典型的组织结构一种典型的组织结构 6.4.3 6.4.3 与与CPUCPU的连接的连接CPUCache主存主存I/O控制器控制器图形输出图形输出I/O 控制器控制器总线适配器总线适配器网络网络总线适配器总线适配器I/O控制器控制器I/O控制器控制器总线

25、适配器总线适配器磁盘磁盘磁盘磁盘CD2727/66/666.4 总 线wCPUCPU对对I/OI/O设备的编址有两种方式设备的编址有两种方式存储器映射存储器映射I/OI/O(也称为统一编址)(也称为统一编址)q将一部分存储器地址空间分配给将一部分存储器地址空间分配给I/OI/O设备,用设备,用loadload指指令和令和storestore指令对这些地址进行读写将引起指令对这些地址进行读写将引起I/OI/O设备的设备的数据传输。数据传输。q将一部分存储空间留出用于设备控制,对这一部分地将一部分存储空间留出用于设备控制,对这一部分地址空间进行读写就是向设备发出控制命令。址空间进行读写就是向设备发

26、出控制命令。给给I/OI/O设备设备独立编址独立编址q需要在需要在CPUCPU中设置专用的中设置专用的I/OI/O指令来访问指令来访问I/OI/O设备。设备。qCPUCPU需要发出一个标志信号来表示所访问的地址是需要发出一个标志信号来表示所访问的地址是I/OI/O设备的地址。设备的地址。2828/66/666.4 总 线wCPUCPU与外部设备进行输入与外部设备进行输入/ /输出的方式可分为输出的方式可分为4 4种种程序查询程序查询中断中断DMADMA通道通道 检查状态标记Ready?传输数据NY2929/66/666.4 总 线wCPUCPU与外部设备进行输入与外部设备进行输入/ /输出的方

27、式可分为输出的方式可分为4 4种种程序查询程序查询中断中断DMADMA通道通道 主程序响应中断请求中断服务程序返回主程序继续执行主程序断点3030/66/66wCPUCPU与外部设备进行输入与外部设备进行输入/ /输出的方式可分为输出的方式可分为4 4种种程序查询程序查询中断中断DMADMA通道通道 6.4 总 线3131/66/66wCPUCPU与外部设备进行输入与外部设备进行输入/ /输出的方式可分为输出的方式可分为4 4种种程序查询程序查询中断中断DMADMA通道通道 6.4 总 线CPU暂停方式暂停方式周期窃取方式周期窃取方式交替访问方式交替访问方式3232/66/66 程序控制、中断

28、和程序控制、中断和DMADMA方式管理外围设备会引起两个方式管理外围设备会引起两个问题:问题:所有外设的输入所有外设的输入/ /输出工作均由输出工作均由CPUCPU承担,承担,CPUCPU的的计算工作经常被打断而去处理输入计算工作经常被打断而去处理输入/ /输出的事务,输出的事务,不能充分发挥不能充分发挥CPUCPU的计算能力。的计算能力。 大型计算机系统的外设虽然很多,但同时工作的大型计算机系统的外设虽然很多,但同时工作的机会不是很多。机会不是很多。 解决上述问题的方法:解决上述问题的方法:采用通道处理机采用通道处理机 6.4 总 线3333/66/66通道处理机能够负担外围设备的大部分通道

29、处理机能够负担外围设备的大部分I/OI/O工作。工作。通道处理机通道处理机(简称通道):专门负责整个计算机系(简称通道):专门负责整个计算机系统的输入统的输入/ /输出工作。通道处理机只能执行有限的一输出工作。通道处理机只能执行有限的一组输入组输入/ /输出指令。输出指令。6.5 6.5 通道处理机通道处理机第6章 输入/输出系统3434/66/666.5 通道处理机1.1. 一个典型的一个典型的由由CPUCPU、通道、通道、设备控制器、设备控制器、外设构成的外设构成的4 4级层次结构级层次结构的输入的输入/ /输出输出系统。系统。CPU 选择 通道 字节多 路通道 数组多 路通道 主存 磁盘

30、 控制器 磁盘 内部总线 磁盘 控制器 磁盘 磁盘 设备 控制器 设备 控制器 通道总线 设备 控制器 设备 控制器 设备 设备 设备 设备 设备 设备 通道总线 通道总线 3535/66/666.5 通道处理机w通道的功能通道的功能 接收接收CPUCPU发来的发来的I/OI/O指令,并根据指令要求选择指指令,并根据指令要求选择指定的外设与通道相连接。定的外设与通道相连接。执行通道程序执行通道程序 从主存中逐条取出通道指令,对通道指令进行译从主存中逐条取出通道指令,对通道指令进行译码,并根据需要向被选中的设备控制器发出各种操作码,并根据需要向被选中的设备控制器发出各种操作命令。命令。给出外设中

31、要进行读给出外设中要进行读/ /写操作的数据所在的地址写操作的数据所在的地址 如磁盘存储器的柱面号、磁头号、扇区号等。如磁盘存储器的柱面号、磁头号、扇区号等。 3636/66/666.5 通道处理机给出主存缓冲区的首地址给出主存缓冲区的首地址 该缓冲区存放从外设输入的数据或者将要输出到外设该缓冲区存放从外设输入的数据或者将要输出到外设中去的数据。中去的数据。控制外设与主存缓冲区之间的数据传送的长度控制外设与主存缓冲区之间的数据传送的长度对传送的数据个数进行计数,并判断数据传送是否结束。对传送的数据个数进行计数,并判断数据传送是否结束。指定传送工作结束时要进行的操作指定传送工作结束时要进行的操作

32、例如:例如:将外设的中断请求及通道的中断请求送往将外设的中断请求及通道的中断请求送往CPUCPU等。等。检查外设的工作状态是否正常,并将该状态信息检查外设的工作状态是否正常,并将该状态信息送往主存指定单元保存。送往主存指定单元保存。在数据传输过程中完成必要的格式变换在数据传输过程中完成必要的格式变换例如:例如:把字拆分为字节,或者把字节装配成字等。把字拆分为字节,或者把字节装配成字等。 3737/66/666.5 通道处理机w通道的主要硬件通道的主要硬件寄存器寄存器q数据缓冲寄存器数据缓冲寄存器q主存地址计数器主存地址计数器q传输字节数计数器传输字节数计数器q通道命令字寄存器通道命令字寄存器q

33、通道状态字寄存器通道状态字寄存器控制逻辑控制逻辑q分时控制分时控制q地址分配地址分配q数据传送、装配和拆分等数据传送、装配和拆分等3838/66/666.5 通道处理机w通道对外设的控制通过输入通道对外设的控制通过输入/ /输出接口和设备控制器进输出接口和设备控制器进行行通道与设备控制器之间一般采用标准的输入通道与设备控制器之间一般采用标准的输入/ /输出输出接口来连接。接口来连接。通道通过标准接口把操作命令送到设备控制器,设通道通过标准接口把操作命令送到设备控制器,设备控制器解释并执行这些通道命令,完成命令指定备控制器解释并执行这些通道命令,完成命令指定的操作。的操作。4.4.设备控制器能够

34、记录外设的状态,并把状态信息送设备控制器能够记录外设的状态,并把状态信息送往通道和往通道和CPUCPU。3939/66/66 6.5 通道处理机1. 通道完成一次数据输入通道完成一次数据输入/输出的工作过程输出的工作过程在用户程序中使用在用户程序中使用访管指令访管指令进入管理程序,由管进入管理程序,由管理程序生成一个通道程序,并启动通道。理程序生成一个通道程序,并启动通道。q用户在目标程序中设置一条广义指令,通过调用操作用户在目标程序中设置一条广义指令,通过调用操作系统的管理程序来实现。系统的管理程序来实现。q管理程序根据广义指令提供的参数来编制通道程序。管理程序根据广义指令提供的参数来编制通

35、道程序。 q启动输入启动输入/输出设备指令输出设备指令是一条主要的输入是一条主要的输入/输出指令,输出指令,属于特权指令。属于特权指令。n工作流程工作流程 6.5.2 6.5.2 通道的工作过程通道的工作过程4040/66/666.5 通道处理机访管访管 入口入口 OC 设备号设备号 交换长度交换长度 OC OC 主存起始地址主存起始地址 编写通道程序编写通道程序 入口入口 置通道地址字置通道地址字 启动启动 I/O 返回返回 断开通道指令断开通道指令 通道程序通道程序 中断处理程序中断处理程序 I/O 中断请求中断请求 I/O 中断响应中断响应 I/O 中断返回中断返回 管理程序管理程序 用

36、户程序用户程序 通道程序通道程序 广义广义 指令指令 参数参数 和和 启动输入输出设备指令启动输入输出设备指令 选取通道和子通道选取通道和子通道 断开或忙断开或忙? 形成条件码,结束形成条件码,结束 是是 取通道指令取通道指令 有错有错? 选择控制器和设备选择控制器和设备 断开断开? 发启动命令发启动命令 全“全“0”状态?”状态? 通道结束通道结束? 存在中断存在中断? 形成条件码,存通道状态字,结束形成条件码,存通道状态字,结束 设备回答的状态字节为全设备回答的状态字节为全 0, 启动成功, 形成条件码, 启动成功, 形成条件码 设备回答的状态字节为全设备回答的状态字节为全 0, 启动成功

37、, 形成条件码, 启动成功, 形成条件码 虽然设备回答的状态字节非全虽然设备回答的状态字节非全 0, 但是通道指令是属, 但是通道指令是属于辅助性操作,亦为启动成功,形成条件码于辅助性操作,亦为启动成功,形成条件码 否否 是是 形成条件码,结束形成条件码,结束 是是 是是 是是 是是 否否 形成条件码,启动不成功,结束形成条件码,启动不成功,结束 否否 否否 否否 否否 4242/66/666.5 通道处理机通道处理机执行通道程序,完成指定的数据输入通道处理机执行通道程序,完成指定的数据输入/输出工作。输出工作。 通道处理机执行通道程序与通道处理机执行通道程序与CPUCPU执行用户程序是并行的

38、。执行用户程序是并行的。 通道程序结束后向通道程序结束后向CPUCPU发中断请求。发中断请求。2.2. CPUCPU执行程序和通道执行通道程序的时间关系执行程序和通道执行通道程序的时间关系 4343/66/666.5 通道处理机 CPUCPU 运行用户程序运行用户程序 时间时间 请求请求 I/OI/O 访管指令访管指令 响应响应 I/OI/O 中断请求中断请求 CPUCPU 运行运行 I/OI/O 管理程序管理程序 通道运行存放在主存中的通道程序通道运行存放在主存中的通道程序 编制通道程序编制通道程序 启动启动 I/OI/O 操作操作 组织组织 I/OI/O 操作操作 向向 CPUCPU 发中

39、断请求发中断请求 登记或处理登记或处理 4444/66/666.5 通道处理机根据信息传送方式的不同,将通道分为根据信息传送方式的不同,将通道分为三种类型三种类型q字节多路通道字节多路通道q选择通道选择通道q数组多路通道数组多路通道三种类型的通道与三种类型的通道与CPUCPU、设备控制器和外设的连、设备控制器和外设的连接关系接关系 6.5.3 通道的种类4545/66/666.5 通道处理机CPU 选择 通道 字节多 路通道 数组多 路通道 主存 磁盘 控制器 磁盘 内部总线 磁盘 控制器 磁盘 磁盘 设备 控制器 设备 控制器 通道总线 设备 控制器 设备 控制器 设备 设备 设备 设备 设

40、备 设备 通道总线 通道总线 4646/66/666.5 通道处理机1. 字节多路通道字节多路通道 为多台低速或中速的外设服务。为多台低速或中速的外设服务。以字节交叉的方式分时轮流地为它们服务。以字节交叉的方式分时轮流地为它们服务。字节多路通道可以包含多个子通道,每个子通道字节多路通道可以包含多个子通道,每个子通道连接一台设备控制器。连接一台设备控制器。 2. 选择通道选择通道 为多台高速外围设备服务。为多台高速外围设备服务。 在一段时间内只为一台高速外设独占使用。在一段时间内只为一台高速外设独占使用。选择通道的硬件选择通道的硬件 4747/66/666.5 通道处理机q5 5个寄存器个寄存器

41、 数据缓冲寄存器、设备地址寄存器、主存地址数据缓冲寄存器、设备地址寄存器、主存地址计数器、交换字节数计数器、设备状态计数器、交换字节数计数器、设备状态/ /控制寄控制寄存器存器 q格式变换部件格式变换部件用于在主存和设备之间进行字与字节的拆分和装配用于在主存和设备之间进行字与字节的拆分和装配q通道控制部件通道控制部件 w数组多路通道数组多路通道 适用于高速设备。适用于高速设备。3.每次选择一个高速设备后传送一个数据块,轮流每次选择一个高速设备后传送一个数据块,轮流为多台外围设备服务。为多台外围设备服务。4848/66/666.5 通道处理机数组多路通道之所以能够并行地为多台高速设备数组多路通道

42、之所以能够并行地为多台高速设备服务,是因为虽然其所连设备的传输速率很高,服务,是因为虽然其所连设备的传输速率很高,但寻址等辅助操作时间很长。但寻址等辅助操作时间很长。 4949/66/666.5 通道处理机通道流量通道流量一个通道在数据传送期间,单位时间内能够传送一个通道在数据传送期间,单位时间内能够传送的数据量。所用单位一般为的数据量。所用单位一般为Bps。 又称为又称为通道吞吐率通道吞吐率、通道数据传输率通道数据传输率等。等。通道最大流量通道最大流量 一个通道在满负荷工作状态下的流量一个通道在满负荷工作状态下的流量 。6.5.4 6.5.4 通道中的数据传送过程与流量分析通道中的数据传送过

43、程与流量分析5050/66/666.5 通道处理机参数的定义参数的定义 qT TS S:设备选择时间。从通道响应设备发出的数据传送请设备选择时间。从通道响应设备发出的数据传送请求开始,到通道实际为这台设备传送数据所需要的时间。求开始,到通道实际为这台设备传送数据所需要的时间。qT TD D:传送一个字节所用的时间。传送一个字节所用的时间。qp p:在一个通道上连接的设备台数,且这些设备同时都在一个通道上连接的设备台数,且这些设备同时都在工作。在工作。qn n:每台设备传送的字节数,这里假设每台设备传送的每台设备传送的字节数,这里假设每台设备传送的字节数都相同。字节数都相同。qk k:数组多路通

44、道传输的一个数据块中包含的字节数。数组多路通道传输的一个数据块中包含的字节数。在一般情况下,在一般情况下,knkn。对于磁盘、磁带等磁表面存储器,。对于磁盘、磁带等磁表面存储器,通常通常k=512k=512。qT T:通道完成全部数据传送工作所需要的时间。通道完成全部数据传送工作所需要的时间。5151/66/666.5 通道处理机1. 字节多路通道字节多路通道 数据传送过程数据传送过程 通道每连接一台个外设,只传送一个字节,然后通道每连接一台个外设,只传送一个字节,然后又与另一台设备连接,并传送一个字节。又与另一台设备连接,并传送一个字节。p p台设备每台传送台设备每台传送n n个数据总共所需

45、的时间为个数据总共所需的时间为 TS TD TS TD TS TD TS TD D11 D21 Dij Dpn T np)T(TTDSBYTE5252/66/666.5 通道处理机最大流量最大流量实际流量实际流量是连接在这个通道上的所有设备的数据是连接在这个通道上的所有设备的数据传输率之和。传输率之和。qf fi i:第第i i台设备的实际数据传输率台设备的实际数据传输率 DSDSBYTE-MAXTT1)pnT(Tpnfp1iiBYTEff5353/66/666.5 通道处理机w选择通道选择通道 在一段时间内只能单独为一台高速外设服务,当在一段时间内只能单独为一台高速外设服务,当这台设备的数据

46、传送工作全部完成后,通道才能这台设备的数据传送工作全部完成后,通道才能为另一台设备服务。为另一台设备服务。 工作过程工作过程其中:其中:D Di i表示通道正在为第表示通道正在为第i i台设备服务台设备服务 T TD1D1 = T = TD2D2 = = = = T TDnDn = T = TD D TS TD1 TD2TDn D1 T TS TD1 TD2TDn D2 TS TD1 TD2TDn Dp 5454/66/666.5 通道处理机p p台设备每台传送台设备每台传送n n个数据总共所需的时间个数据总共所需的时间 最大流量最大流量 np)TnT(TDSSELECTDSDSSELECT-

47、MAXTnT1)pnTnT(pnf5555/66/666.5 通道处理机w数组多路通道数组多路通道 工作过程工作过程p p台设备每台传送台设备每台传送n n个数据总共所需的时间为:个数据总共所需的时间为: TS TD1 TD2TDk D1 T TS TD1 TD2TDk D2 TS TDk+1 TD2k D1 TS TDn-k TDn Dp np)TkT(TDSBLOCK5656/66/666.5 通道处理机最大流量最大流量选择通道和数组多路通道的选择通道和数组多路通道的实际流量实际流量就是连接在就是连接在这个通道上的所有设备中数据流量最大的那一个这个通道上的所有设备中数据流量最大的那一个 。

48、DSDSBLOCK-MAXTkT1)pnTkT(pnf5757/66/666.5 通道处理机各种通道的实际流量应该各种通道的实际流量应该不大于不大于通道的最大流量通道的最大流量q两边的差值越小,通道的利用率就越高。两边的差值越小,通道的利用率就越高。q当两边相等时,通道处于满负荷工作状态。当两边相等时,通道处于满负荷工作状态。 ip1iBLOCKfmaxfip1iSELECTfmaxfBYTEMAXBYTEffBLOCKMAXBLOCKffSELECTMAXSELECTff5858/66/66 设计设计I/OI/O系统需要注意操作系统的因素。系统需要注意操作系统的因素。在用硬件实现的在用硬件实

49、现的I/OI/O技术中,哪些会实际被采用,技术中,哪些会实际被采用,是由操作系统来决定的。是由操作系统来决定的。 I/OI/O操作主要是在外设和存储器之间进行,所以操作主要是在外设和存储器之间进行,所以操作系统必须保证这些操作系统必须保证这些I/OI/O操作的安全性。操作的安全性。 6.6 I/O6.6 I/O与操作系统与操作系统第6章 输入/输出系统5959/66/666.6 I/O与操作系统DMADMA是使用虚拟地址还是物理地址?是使用虚拟地址还是物理地址?1.1. 使用物理地址进行使用物理地址进行DMADMA传输,存在以下两个问题:传输,存在以下两个问题:对于超过一页的数据缓冲区,由于缓

50、冲区使用的对于超过一页的数据缓冲区,由于缓冲区使用的页面在物理存储器中不一定是连续的,所以传输页面在物理存储器中不一定是连续的,所以传输可能会发生问题。可能会发生问题。 如果如果DMADMA正在存储器和缓冲区之间传输数据时,正在存储器和缓冲区之间传输数据时,操作系统从存储器中移出(或重定位)一些页面,操作系统从存储器中移出(或重定位)一些页面,那么,那么,DMADMA将会在存储器中错误的物理页面上进将会在存储器中错误的物理页面上进行数据传输。行数据传输。 6.6.1 DMA6.6.1 DMA和虚拟存储器和虚拟存储器6060/66/666.6 I/O与操作系统w解决这些问题的方法解决这些问题的方

51、法 使操作系统在使操作系统在I/OI/O的传输过程中确保的传输过程中确保DMADMA设备所访设备所访问的页面都位于物理存储器中,这些页面被称为问的页面都位于物理存储器中,这些页面被称为是是钉在了主存中。钉在了主存中。“虚拟虚拟DMA”DMA”技术技术 q允许允许DMADMA设备直接使用虚拟地址,并在设备直接使用虚拟地址,并在DMADMA期间由硬件期间由硬件将虚拟地址转换为物理地址。将虚拟地址转换为物理地址。 q在采用虚拟在采用虚拟DMADMA的情况下,如果进程在内存中被移动,的情况下,如果进程在内存中被移动,操作系统应该能够及时地修改相应的操作系统应该能够及时地修改相应的DMADMA地址表。地址表。 I/O控制器控制器图形输出图形输出网络网络I/O控制器控制器I/O控制器控制器磁盘磁盘磁盘磁盘虚拟虚拟DMADMA的的I

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论