第七章
输入/输出和
存储系统
北京理工大学管理与经济学院
关磊 博士
2015年6月
北京理工大学管理与经济学院关磊博士
2015年6月
北京理工大学管理与经济学院关磊博士
本章学习目标
理解I/O系统是如何工作的,包括I/O的实现方
法和基本架构。
熟悉不同的存储媒介,了解各种存储方式的异
同。
理解RAID是如何提升磁盘的性能和可靠性的。
熟悉数据压缩的概念以及不同压缩算法的相关
应用。
2015年6月
北京理工大学管理与经济学院关磊博士
7.1 概述
数据的存取是计算机系统的基本功能之一。
一个性能不佳的I/O系统可能会导致某种连锁反
应,降低整个计算机系统的性能。
当我们考虑虚拟存储器时,这一点显然是正确
的。
如果读取数据需要花很长的时间,那么即使是
最快的处理器也不能发挥其最佳性能。
2015年6月
北京理工大学管理与经济学院关磊博士
7.2 AMDAHL 定律
计算机系统的整体性能取决于所有组件的相互
关系。
计算机系统中使用率最高的组件的性能提升,
能够最有效地改进整个计算机系统的性能。
Amdahl定律将上述思想用定量的形式表示:
其中S代表系统整体性能的加速率;f 表
示较快部件完成的工作部分;k是新部件
的加速率。
2015年6月
北京理工大学管理与经济学院关磊博士
7.2 AMDAHL 定律
Amdahl定律给了我们一种简单易用的方法,让我们在
升级部件之后能够估计系统性能的提升。
对于某个系统来说,假设我们计划升级CPU,将比现有
速度快50%,而成本为10000美元;或者升级磁盘,速
度为现在的2.5倍,成为为7000美元。
假设我们知道,日常工作中计算机需要花费70%的时间
来执行CPU操作,30%的时间来等待磁盘服务。
那么,为了用更少的成本获得更大的好处,应选择哪一
个组件升级呢?
2015年6月
北京理工大学管理与经济学院关磊博士
7.2 AMDAHL 定律
如果选择升级处理器,系统的整体性能会提升30% :
如果选择升级磁盘,系统的整体性能会提升22% :
那么,升级处理器的话,每提升1%性能的成本约为333
美元,而升级磁盘的话,每提升1%性能的成为约为318
美元。
2015年6月
北京理工大学管理与经济学院关磊博士
7.3 I/O体系结构
输入/输出(I/O)定义为在外部设备和由CPU及主存储
器组成的主机系统之间移动编码数据的一个子系统部件。
I/O子系统主要包括:
• 用于I/O功能的主存储器模块;
•提供将数据从系统中移入和移出所需要的总线通道;
• 主机和外围设备中的控制模块;
•连接外部元件的接口,例如,连接键盘和磁盘;
•连接主机系统和外围设备的电缆或其他通信链接。
2015年6月
北京理工大学管理与经济学院关磊博士
7.3 I/O体系结构
右图是一个
I/O结构的基
本模型。
2015年6月
北京理工大学管理与经济学院关磊博士
7.3 I/O体系结构
I/O通常有4种控制方法。
程序控制的I/O (programmed I/O)为每个I/O
设备准备一个专用的寄存器。CPU会不断地监
视每个寄存器,等待数据的到达。
直接存储器存取(Direct Memory Access, DMA )
使用专用的芯片来处理I/O操作。
通道控制的I/O (channel I/O)则使用专门的
I/O处理器。
2015年6月
北京理工大学管理与经济学院关磊博士
7.3 I/O体系结构
右图为DMA的配置示
意图。
注意DMA控制器和
CPU共享存储器总线。
DMA运行时的优先级
更高,而且可以从
CPU那里进行周期窃
取(cycle stealing)。
2015年6月
北京理工大学管理与经济学院关磊博士
7.3 I/O体系结构
大型计算机通常采用通道控制的I/O 。
通道控制的I/O通常具有一个或多个I/O处理器(IOP)
来控制多条不同的I/O路径。
对于终端设备和打印机这样的“慢速”设备,通道路径
可以组合在一起(即复用,multiplex),仅通过一个控