1、内容内容1.I/OI/O组成;组成;组成;组成;2.I/OI/O控制;控制;控制;控制;指指指指I/OI/O完成的方法。完成的方法。完成的方法。完成的方法。3.I/OI/O缓冲;缓冲;缓冲;缓冲;4.I/OI/O分配;分配;分配;分配;5.I/OI/O处理。处理。处理。处理。指具体指具体指具体指具体I/OI/O命令的完成过程。命令的完成过程。命令的完成过程。命令的完成过程。6.磁盘管理磁盘管理磁盘管理磁盘管理第1页/共74页5.1 I/O系统系统 5.1.1 I/O5.1.1 I/O设备设备设备设备一、类型一、类型一、类型一、类型(1 1)按速度分:)按速度分:)按速度分:)按速度分:低:键盘
2、低:键盘低:键盘低:键盘 中:打印机中:打印机中:打印机中:打印机 高:磁盘。高:磁盘。高:磁盘。高:磁盘。(2 2)按信息交换单位分:)按信息交换单位分:)按信息交换单位分:)按信息交换单位分:块:磁盘块:磁盘块:磁盘块:磁盘,可定位可定位可定位可定位 字符:打印机、串口字符:打印机、串口字符:打印机、串口字符:打印机、串口(3 3)按设备的共享属性分:)按设备的共享属性分:)按设备的共享属性分:)按设备的共享属性分:独占:如临界资源独占:如临界资源独占:如临界资源独占:如临界资源 共享:磁盘共享:磁盘共享:磁盘共享:磁盘 虚拟:如本身因有属性为独占,但将其虚拟为几个逻辑设备。虚拟:如本身因
3、有属性为独占,但将其虚拟为几个逻辑设备。虚拟:如本身因有属性为独占,但将其虚拟为几个逻辑设备。虚拟:如本身因有属性为独占,但将其虚拟为几个逻辑设备。(4 4)使用特性:)使用特性:存储设备存储设备输入输出设备输入输出设备第2页/共74页二、设备与控制器之间的接口:二、设备与控制器之间的接口:(图图5.1)CPUCPU控制器控制器控制器控制器设备设备设备设备三种信号:三种信号:三种信号:三种信号:(1 1)数据信号:)数据信号:)数据信号:)数据信号:双向,有缓存双向,有缓存双向,有缓存双向,有缓存(2 2)控制信号:控制器发给设备;要求其完成相)控制信号:控制器发给设备;要求其完成相)控制信号
4、:控制器发给设备;要求其完成相)控制信号:控制器发给设备;要求其完成相关操作关操作关操作关操作(3 3)状态信号:设备发给控制器,后者)状态信号:设备发给控制器,后者)状态信号:设备发给控制器,后者)状态信号:设备发给控制器,后者“显示显示显示显示”;图图5.1 设备与控制器间的接口设备与控制器间的接口第3页/共74页5.1.2 设备控制器设备控制器一、功能:接收一、功能:接收一、功能:接收一、功能:接收CPUCPU命令,控制命令,控制命令,控制命令,控制I/OI/O设备工作,解放设备工作,解放设备工作,解放设备工作,解放CPU.CPU.1.1.接收和识别命令。接收和识别命令。接收和识别命令。
5、接收和识别命令。应有相应的应有相应的应有相应的应有相应的RegisterRegister来存放命令(来存放命令(来存放命令(来存放命令(“命令寄存器命令寄存器命令寄存器命令寄存器”)2.2.数据交换数据交换数据交换数据交换 CPUCPU控制器的数据寄存器控制器的数据寄存器控制器的数据寄存器控制器的数据寄存器设备设备设备设备3.3.设备状态的了解和报告设备状态的了解和报告设备状态的了解和报告设备状态的了解和报告 设备控制器中应用设备控制器中应用设备控制器中应用设备控制器中应用“状态寄存器状态寄存器状态寄存器状态寄存器”4.地址识别地址识别地址识别地址识别 CPUCPU通过通过通过通过“地址地址地
6、址地址”与设备通信,设备控制器应能识别与设备通信,设备控制器应能识别与设备通信,设备控制器应能识别与设备通信,设备控制器应能识别它所控制的设备地址以及其各寄存器的地址。它所控制的设备地址以及其各寄存器的地址。它所控制的设备地址以及其各寄存器的地址。它所控制的设备地址以及其各寄存器的地址。5.5.数据缓冲数据缓冲数据缓冲数据缓冲6.6.差错控制差错控制差错控制差错控制第4页/共74页5.1.2 设备控制器设备控制器一、组成(图一、组成(图一、组成(图一、组成(图5.25.2)各类寄存器:数据、命令、状态各类寄存器:数据、命令、状态各类寄存器:数据、命令、状态各类寄存器:数据、命令、状态信号线:数
7、据线信号线:数据线信号线:数据线信号线:数据线(独立寻址、内存寻址独立寻址、内存寻址独立寻址、内存寻址独立寻址、内存寻址)、地址、地址、地址、地址线、控制线线、控制线线、控制线线、控制线I/OI/O逻辑:在其控制下完成与逻辑:在其控制下完成与逻辑:在其控制下完成与逻辑:在其控制下完成与CPUCPU、设备的通信。、设备的通信。、设备的通信。、设备的通信。图图5.2设备控制器的组成设备控制器的组成第5页/共74页图5-2设备控制器的组成 第6页/共74页通道通道:一种专用处理部件(特殊处理机),负责外设与:一种专用处理部件(特殊处理机),负责外设与主存的信息交换,独立于主存的信息交换,独立于CPU
8、运行。运行。中断中断:主机接到外部硬件(如:主机接到外部硬件(如I/O设备)发来的信号时,设备)发来的信号时,马上停止原来的工作,转去处理这一事件,处理完后马上停止原来的工作,转去处理这一事件,处理完后回到断点继续工作。回到断点继续工作。总线总线:系统中多个模块间:系统中多个模块间(各个部件和设备间各个部件和设备间)传送信息的传送信息的一组公共通路。一组公共通路。几个概念几个概念第7页/共74页5.1.3 I/O通道通道一、引入一、引入一、引入一、引入 通道通道通道通道一种特殊的执行一种特殊的执行一种特殊的执行一种特殊的执行I/OI/O指令的处理机,指令的处理机,指令的处理机,指令的处理机,与
9、与与与CPUCPU共享内存,共享内存,共享内存,共享内存,可以有自己的总线。可以有自己的总线。可以有自己的总线。可以有自己的总线。引入目的引入目的引入目的引入目的解脱解脱解脱解脱CPUCPU对对对对I/OI/O的组织、管理。的组织、管理。的组织、管理。的组织、管理。CPUCPU只需发送只需发送只需发送只需发送I/OI/O命令给通道,通道通过调用内存中的命令给通道,通道通过调用内存中的命令给通道,通道通过调用内存中的命令给通道,通道通过调用内存中的相应通道程序完成任务。相应通道程序完成任务。相应通道程序完成任务。相应通道程序完成任务。第8页/共74页5.1.3 I/O通道通道二、类型二、类型二、
10、类型二、类型1.1.字节多路通道:(图字节多路通道:(图字节多路通道:(图字节多路通道:(图5-35-3)各子通道以时间片轮转方式共享通道,各子通道以时间片轮转方式共享通道,各子通道以时间片轮转方式共享通道,各子通道以时间片轮转方式共享通道,适用于低、中速设备。适用于低、中速设备。适用于低、中速设备。适用于低、中速设备。2.2.数组选择通道:数组选择通道:数组选择通道:数组选择通道:无子通道,仅一主通道,某时间由某设无子通道,仅一主通道,某时间由某设无子通道,仅一主通道,某时间由某设无子通道,仅一主通道,某时间由某设备独占,适于高速设备。备独占,适于高速设备。备独占,适于高速设备。备独占,适于
11、高速设备。但通道未共享,利用率低。但通道未共享,利用率低。但通道未共享,利用率低。但通道未共享,利用率低。3.3.数组多路通道:数组多路通道:数组多路通道:数组多路通道:在图在图在图在图5-5-3 3中,多子通道不是以时间片方式,而中,多子通道不是以时间片方式,而中,多子通道不是以时间片方式,而中,多子通道不是以时间片方式,而是是是是“按需分配按需分配按需分配按需分配”,综合了前面,综合了前面,综合了前面,综合了前面2 2种通道种通道种通道种通道类型的优点。类型的优点。类型的优点。类型的优点。第9页/共74页图图5-3字节多路通道字节多路通道第10页/共74页数组选择通道数组选择通道第11页/
12、共74页5.1.3 I/O通道通道三、通道三、通道三、通道三、通道“瓶颈瓶颈瓶颈瓶颈”问题:问题:问题:问题:解决:采用复联方式解决:采用复联方式解决:采用复联方式解决:采用复联方式,图图图图5.45.4、5.55.5图图5-4 单通路单通路I/O系统系统第12页/共74页图图5-5 多通路多通路I/O系统系统第13页/共74页5.1.4 总线系统总线系统一、微机一、微机一、微机一、微机I/OI/O系统系统系统系统设备控制器:与设备是一对多的关系,系统是通设备控制器:与设备是一对多的关系,系统是通过它与设备通信过它与设备通信系统系统设备控制器设备控制器 设备设备如:磁盘设备,打印设备如:磁盘设
13、备,打印设备缺点:总线瓶颈,缺点:总线瓶颈,CPU瓶颈。瓶颈。第14页/共74页5.1.4 总线系统总线系统二、主机二、主机二、主机二、主机I/OI/O系统(四级结构)系统(四级结构)系统(四级结构)系统(四级结构)计算机计算机计算机计算机I/OI/O通道通道通道通道I/OI/O控制器控制器控制器控制器设备设备设备设备 I/OI/O通道相当于对总线的扩展,即多总线方式,且通道相当于对总线的扩展,即多总线方式,且通道相当于对总线的扩展,即多总线方式,且通道相当于对总线的扩展,即多总线方式,且通道有一定的智能性,能与通道有一定的智能性,能与通道有一定的智能性,能与通道有一定的智能性,能与CPUCP
14、U并行,解决其负并行,解决其负并行,解决其负并行,解决其负担。担。担。担。ISAISA(工业标准接口总线)(工业标准接口总线)(工业标准接口总线)(工业标准接口总线)/EISA/EISA LocalBUSLocalBUS:VESAVESA(视频电子标准协会)(视频电子标准协会)(视频电子标准协会)(视频电子标准协会)/PCI/PCI(外(外(外(外围组件接口)围组件接口)围组件接口)围组件接口)第15页/共74页第16页/共74页5.2 I/O控制方式控制方式四个阶段:四个阶段:四个阶段:四个阶段:程序程序程序程序I/OI/O中断中断中断中断I/ODMAI/ODMA控制控制控制控制通道控制。通
15、道控制。通道控制。通道控制。趋势:提高并行度。趋势:提高并行度。趋势:提高并行度。趋势:提高并行度。第17页/共74页5.2.1 程序程序I/O(忙(忙等待方式)等待方式)查询方式:查询方式:查询方式:查询方式:CPUCPU需花代价不断查询需花代价不断查询需花代价不断查询需花代价不断查询I/OI/O状态(图状态(图状态(图状态(图5-7a5-7a)CPUCPU资源浪费极大。资源浪费极大。资源浪费极大。资源浪费极大。例:例:例:例:99.9ms+0.1ms=100ms ;99.9ms+0.1ms=100ms ;99.9ms99.9ms在忙等在忙等在忙等在忙等第18页/共74页5.2.2 中断中断
16、I/O向向向向I/OI/O发命令发命令发命令发命令返回返回返回返回执行其它任务。执行其它任务。执行其它任务。执行其它任务。I/OI/O中断产生中断产生中断产生中断产生CPUCPU转相应中断处理程序。转相应中断处理程序。转相应中断处理程序。转相应中断处理程序。如:读数据,读完后以中断方式通知如:读数据,读完后以中断方式通知如:读数据,读完后以中断方式通知如:读数据,读完后以中断方式通知CPUCPU,CPUCPU完成数据从完成数据从完成数据从完成数据从I/OI/O内存内存内存内存第19页/共74页图图5-5-7 7程序程序I/OI/O和和中断驱动方中断驱动方式式第20页/共74页5.2.3 DMA
17、方式方式用于块设备中用于块设备中一、引入一、引入一、引入一、引入 中断中断中断中断I/OI/O,CPUCPU“字节字节字节字节”干预一次,即每干预一次,即每干预一次,即每干预一次,即每“字节字节字节字节”传传传传送产生一次中断。不利于送产生一次中断。不利于送产生一次中断。不利于送产生一次中断。不利于块设备块设备块设备块设备的的的的I/OI/O DMADMA:由:由:由:由DMADMA控制器直接控制总线传递控制器直接控制总线传递控制器直接控制总线传递控制器直接控制总线传递数据块数据块数据块数据块。DMADMA控制器完成从控制器完成从控制器完成从控制器完成从I/OI/O内存。内存。内存。内存。二、
18、二、二、二、DMADMA控制器组成控制器组成控制器组成控制器组成 一组寄存器一组寄存器一组寄存器一组寄存器+I/O+I/O控制逻辑。控制逻辑。控制逻辑。控制逻辑。CRCR(命令(命令(命令(命令/状态)状态)状态)状态);DR;DR(数据)(数据)(数据)(数据);MARMAR(内存地址)(内存地址)(内存地址)(内存地址);DC;DC(计数)(计数)(计数)(计数)DMADMA工作过程(例):工作过程(例):工作过程(例):工作过程(例):第21页/共74页第22页/共74页DMA方式方式DMA工作流程工作流程第23页/共74页例:例:DMA工作过程(输入数据工作过程(输入数据)1、CPU向
19、控制器发送的读命令被送到命令寄存器(向控制器发送的读命令被送到命令寄存器(CR)2、待输入数据的目标地址被送到内存地址寄存器(、待输入数据的目标地址被送到内存地址寄存器(MAR)3、待输入数据的字节数送到数据计数器(、待输入数据的字节数送到数据计数器(DC)4、待输入数据的源地址送到、待输入数据的源地址送到I/O控制逻辑上。控制逻辑上。5、启动、启动DMA,CPU处理其他任务,数据输入由处理其他任务,数据输入由DMA控控制器控制制器控制6、输入数据按字节送入数据寄存器(、输入数据按字节送入数据寄存器(DR)并存储到内)并存储到内存目标地址,存目标地址,MAR+1,DC-1,若,若DC=0,DM
20、A控制器发送中断请求,否则,继续控制器发送中断请求,否则,继续按上述步骤传送。按上述步骤传送。第24页/共74页5.2.4 I/O通道控制方式通道控制方式 DMADMA方式:对需多离散块的读取仍需要多次中断。方式:对需多离散块的读取仍需要多次中断。方式:对需多离散块的读取仍需要多次中断。方式:对需多离散块的读取仍需要多次中断。通道方式:通道方式:通道方式:通道方式:CPUCPU只需给出只需给出只需给出只需给出(1 1)通道程序首址。)通道程序首址。)通道程序首址。)通道程序首址。(2 2)要访问)要访问)要访问)要访问I/OI/O设备设备设备设备后,通道程序就可完成一组块操作后,通道程序就可完
21、成一组块操作后,通道程序就可完成一组块操作后,通道程序就可完成一组块操作 操作操作PRecord计数计数内存地址内存地址Write0080813Write001401034Write01605830Write013002000Write002501850Write11250720第25页/共74页5.3 缓冲管理缓冲管理目的:组织管理、分配、释放目的:组织管理、分配、释放buffer5.3.1 引入引入1.缓和缓和CPU和和I/O设备间速度不匹配的矛盾。设备间速度不匹配的矛盾。如:计算如:计算打印打印buffer打印打印2.减少对减少对CPU的中断频率的中断频率如:如:buffer越大,越大,
22、“buffer满满”信号发信号发生频率越低。生频率越低。3.提高提高CPU和和I/O并行性并行性 第26页/共74页5.3 缓冲管理缓冲管理5.3.2 单缓冲单缓冲由于由于C和和T可并行,可并行,M和和C或或M和和T不能并行,因此处不能并行,因此处理一块数据时间:理一块数据时间:Max(C,T)+M用户进程何时阻塞?用户进程何时阻塞?第27页/共74页图图5-11单缓冲工作示意图单缓冲工作示意图 第28页/共74页5.3 缓冲管理缓冲管理5.3.2双缓冲双缓冲效率有所提高,且进一步平滑了传输峰值。效率有所提高,且进一步平滑了传输峰值。系统处理一块数据的时间约为:系统处理一块数据的时间约为:MA
23、X(C,T)收发可双向同时传送。(图收发可双向同时传送。(图P174,513)第29页/共74页图图5-12双缓冲工作示意图双缓冲工作示意图 第30页/共74页5.3 缓冲管理缓冲管理5.3.3 循环多缓冲循环多缓冲类型:类型:R:空缓冲;空缓冲;G:满缓冲;:满缓冲;C:当前缓冲:当前缓冲第31页/共74页循环多缓冲的使用nextg:指示下一个应取数据的:指示下一个应取数据的bufnexti:指示下一个空:指示下一个空buf.Getbuf:取取Nextg对应缓冲区提供使用,将对应缓冲区提供使用,将Nextg置为空置为空,Nextg=(Nextg+1)Mod N将将Nexti对应缓冲区提供使用
24、,将对应缓冲区提供使用,将Nexti置为满,置为满,Nexti=(Nexti+1)Mod NReleasebuf:若若C满,则改为满,则改为G;若若C空,则改为空,则改为R;第32页/共74页循环多缓冲的同步问题循环多缓冲的同步问题Nexti 追上追上Nextg:表示输入速度表示输入速度输出速度,全部输出速度,全部buf满,这时输入进满,这时输入进程程阻塞阻塞Nextg追上追上Nexti:输入速度输入速度 SPi SPi为为n n在输入井中分配空间在输入井中分配空间 设备数据由输入设备数据由输入bufbuf送输入井送输入井 生成输入请求表挂输入请求队列。生成输入请求表挂输入请求队列。b.CPU
25、b.CPU空闲空闲取请求表中的任务取请求表中的任务,送到内存进程送到内存进程缓冲区执行。缓冲区执行。(2 2)输出:(打印)输出:(打印)a.a.进程进程n n请求请求SPoSPo为为n n在输出井中申请磁盘空间在输出井中申请磁盘空间 将数据由进程将数据由进程bufbuf转到输出井转到输出井 生成一打印请求表并挂请求打印队列。(如有多个生成一打印请求表并挂请求打印队列。(如有多个请求,重复上述操作)请求,重复上述操作)b.b.打印机空打印机空 查打印请求表中的任务查打印请求表中的任务 取输出井中对应数据取输出井中对应数据 输出输出buf buf 打印打印第46页/共74页4.特点特点1.提高提
26、高I/O速度:速度:对低速设备操作对低速设备操作 变为对输入变为对输入/出井操作。出井操作。2.将独占设备改造为共享设备将独占设备改造为共享设备分配设备的实质时分配输入分配设备的实质时分配输入/出井出井3.实现了虚拟设备功能实现了虚拟设备功能第47页/共74页5.4.5设备独立性设备独立性一、概念一、概念(P184):即设备无关性,指应用程序独立于具体使用的物理设备。即设备无关性,指应用程序独立于具体使用的物理设备。逻辑设备逻辑设备物理设备物理设备逻辑设备表(逻辑设备表(LUT):):第48页/共74页5.4.5 设备独立性设备独立性分配流程:进程给出逻辑名分配流程:进程给出逻辑名通过通过LU
27、T得到物理设备及其得到物理设备及其driver入口。入口。优点:优点:设备分配更灵活;设备分配更灵活;逻辑设备和物理设备间可以是多逻辑设备和物理设备间可以是多多的映射关系。提高了物理设备的共享性,以多的映射关系。提高了物理设备的共享性,以及使用的灵活性。如:及使用的灵活性。如:某逻辑名可对应这一类设备,提高均衡性某逻辑名可对应这一类设备,提高均衡性与容错性。与容错性。几个逻辑名可对应某一个设备,提高共享几个逻辑名可对应某一个设备,提高共享性。性。易于实现易于实现I/O重定向。重定向。不变程序,只需改变不变程序,只需改变LUT表的映射关系。表的映射关系。第49页/共74页5.4.5 设备独立性设
28、备独立性 二、设备独立性软件的主要功能:二、设备独立性软件的主要功能:(1)执行所有设备的公有操作执行所有设备的公有操作分配回收分配回收名字映射(逻辑设备名名字映射(逻辑设备名-物理设备名)物理设备名)设备保护设备保护缓冲管理缓冲管理差错控制差错控制(2)向用户层软件提供统一接口(设备应向所有用户提向用户层软件提供统一接口(设备应向所有用户提供相同的接口)供相同的接口)read、write第50页/共74页5.4.5 设备独立性设备独立性三三.名字映射名字映射LUT的生成的生成在用户进程第一次请求设备时完成映射并在在用户进程第一次请求设备时完成映射并在LUT中中生成相应项生成相应项LUT的配置
29、方法的配置方法(1)整个系统一张)整个系统一张LUT表:表:要求:逻辑名不重复,(一般用于单用户系统)要求:逻辑名不重复,(一般用于单用户系统)(2)每个用户一张)每个用户一张LUT表。表。可重名可重名/可限制用户对某些设备的使用。可限制用户对某些设备的使用。逻辑设备逻辑设备物理设备物理设备Driver入口入口逻辑设备表结构逻辑设备表结构第51页/共74页图图5-19逻辑设备表(类似于页表或段表)逻辑设备表(类似于页表或段表)第52页/共74页5.5设备处理设备处理设备处理程序即是设备驱动程序。设备处理程序即是设备驱动程序。设备驱动程序的功能和特点设备驱动程序的功能和特点设备驱动程序的处理过程
30、设备驱动程序的处理过程第53页/共74页设备驱动程序的功能和特点设备驱动程序的功能和特点功能:功能:接收进程的接收进程的I/O命令命令检查命令合法性,检查设备状态,设置设备工作方检查命令合法性,检查设备状态,设置设备工作方式式发出发出I/O命令(驱动命令(驱动I/O操作)操作)响应设备中断响应设备中断构成通道程序构成通道程序特点:特点:和硬件紧密相关、各个设备有自己的设备驱动和硬件紧密相关、各个设备有自己的设备驱动第54页/共74页5.5.2设备驱动程序处理过程设备驱动程序处理过程包括包括启动过程启动过程中断处理过程中断处理过程1、启动过程、启动过程将抽象要求转化为具体要求将抽象要求转化为具体
31、要求检查检查I/O请求合法性请求合法性读出和检查设备状态读出和检查设备状态传送必要的参数传送必要的参数设置工作方式设置工作方式启动启动I/O设备设备第55页/共74页5.5.3中断处理程序中断处理程序流程流程设备启动设备启动I/O完成完成发送中断发送中断CPU调用中断调用中断处理过程处理过程2、中断处理过程、中断处理过程唤醒被阻塞的唤醒被阻塞的驱动驱动程序进程程序进程保护被中断进程环境保护被中断进程环境转入相应的设备处理程序转入相应的设备处理程序中断处理中断处理恢复被中断进程的现场恢复被中断进程的现场第56页/共74页5.6磁盘存储器管理磁盘存储器管理5.6.1 磁盘性能简述磁盘性能简述 一、
32、数据组织和格式一、数据组织和格式磁道磁道扇区扇区字节字节二、类型二、类型1.固定头磁盘:固定头磁盘:每个磁道上有一个磁头,快每个磁道上有一个磁头,快2.移动头磁盘:移动头磁盘:每个盘面仅有一个磁头,慢每个盘面仅有一个磁头,慢 第57页/共74页图5-23磁盘的结构和布局 第58页/共74页盘片图例:盘片图例:磁头读写位磁头读写位置置磁道磁道第59页/共74页图5-24磁盘的格式化 第60页/共74页3.磁盘容量的计算:磁盘容量的计算:1)表格表格(容量,道,扇区面对照表容量,道,扇区面对照表)容量容量磁道编号磁道编号扇区编号扇区编号面面360k03919双面双面(0,1)1.2M079115双
33、面双面(0,1)1.44M079118双面双面(0,1)360k软盘:软盘:24090.5k360k1.2M软盘:软盘:280150.5k1.2M1.44M软盘:软盘:280180.5k 1.44M第61页/共74页5.6.1 磁盘性能简述磁盘性能简述三、磁盘访问时间:三、磁盘访问时间:1.寻道时间寻道时间:TS=m*n+sm:常量,:常量,n:磁道数,:磁道数,s:磁盘启动时间。:磁盘启动时间。2.旋转延迟时间旋转延迟时间Tr(平均旋转延迟时间)(平均旋转延迟时间):指定扇区旋转到磁头下所需时间。指定扇区旋转到磁头下所需时间。设每秒设每秒r转,则转,则T r 1/(2r)(均值)(均值)3.
34、数据传输时间数据传输时间:Ttb/(rN)b:每次读:每次读/写字节数写字节数N:每道上的字节数:每道上的字节数访问时间:访问时间:Ta=Ts+1/(2r)+b/(rN)可见,由于特定磁盘,只有集中放数据,集中读写(可见,由于特定磁盘,只有集中放数据,集中读写(b的的值大)才能更好提高传输效率。值大)才能更好提高传输效率。第62页/共74页例子(时间比较)例子(时间比较)寻道时间寻道时间寻道时间寻道时间:20ms20ms,磁盘通道传输速率,磁盘通道传输速率,磁盘通道传输速率,磁盘通道传输速率:1MB/s1MB/s,转速,转速,转速,转速r=r=3600rpm3600rpm,每扇区,每扇区,每扇
35、区,每扇区512512字节字节字节字节,每磁道,每磁道,每磁道,每磁道32 32 扇区扇区扇区扇区。目标:读。目标:读。目标:读。目标:读 128k128k 数据,问:访问时间为多少?数据,问:访问时间为多少?数据,问:访问时间为多少?数据,问:访问时间为多少?因为:因为:因为:因为:60*16kB=960kB/s1MB/s60*16kB=960kB/s1MB/s顺序组织顺序组织顺序组织顺序组织(20(208.338.3316.67)16.67)(8.33(8.3316.67)716.67)7220(ms)220(ms)随机组织随机组织随机组织随机组织(20(208.338.330.52)25
36、60.52)2567385.6(ms)7385.6(ms)其中:其中:3600转转/分分=60转转/秒,秒,0.5KB*32=16KB/道道其中:其中:1/r=1/6016.67ms,均值,均值=1/(2r)8.33ms;128KB/16KB=8其中:其中:其中:其中:Ttb/(rN)=0.5KB/(60*16KB)0.52(ms),128KB/0.5KB=256第63页/共74页5.6.2 磁盘调度磁盘调度 目标:减少寻道时间目标:减少寻道时间一、一、FCFS(Fisrt Come First Second)特点:简单,寻道时间长,相当于随机访问模式。特点:简单,寻道时间长,相当于随机访问模
37、式。二、二、SSTF(最短寻道优先)(最短寻道优先)第64页/共74页FCFS调度算法调度算法 SSTF调度算法调度算法100道开始道开始被访问的下一个被访问的下一个磁道磁道移动距离移动距离5545583391918219072160701501038112184146平均寻道长度:平均寻道长度:55.3100道开始道开始被访问的下一个被访问的下一个磁道磁道移动距离移动距离90105832553391638118201501321601018424平均寻道长度:平均寻道长度:27.5第65页/共74页三、扫描算法。三、扫描算法。1.进程进程“饥饿现象饥饿现象”SSTF存在。存在。2.SCAN算
38、法算法(电梯调度算法)(电梯调度算法)在在移动方向固定移动方向固定的情况下采用了的情况下采用了SSTF,以避免,以避免饥饿现象饥饿现象四、循环扫描四、循环扫描CSCAN一个方向读完,不是象一个方向读完,不是象SCAN那样回头,而是循环。那样回头,而是循环。访问时间:访问时间:2TT+Smax第66页/共74页SCAN调度算法调度算法 CSCAN调度算法调度算法100道开始,增加方向道开始,增加方向被访问的下一个被访问的下一个磁道磁道移动距离移动距离1505016010184249094583255339163811820平均寻道长度:平均寻道长度:27.8100道开始,增加方向道开始,增加方向
39、被访问的下一个被访问的下一个磁道磁道移动距离移动距离15050160101842418166382039155165839032平均寻道长度:平均寻道长度:27.5第67页/共74页5.6.2 磁盘调度磁盘调度五、五、NStepSCAN和和FSCAN算法。算法。1.NStepSCAN粘臂:由于连续对某磁道访问引起的垄断访问,将磁盘粘臂:由于连续对某磁道访问引起的垄断访问,将磁盘请求队列分为长为请求队列分为长为N的的m个子队列,如下图处理。当个子队列,如下图处理。当N=1时,改算法蜕化为时,改算法蜕化为FCFS。当。当N较大时,类似于较大时,类似于SCAN.SCAN第68页/共74页5.6.2
40、磁盘调度磁盘调度2.FSCAN(简化的(简化的N-Step-Scan算法)算法)第69页/共74页5.6.3 磁盘高速缓存磁盘高速缓存1.形式形式逻辑上属于磁盘、物理上是驻留在内存中的盘块逻辑上属于磁盘、物理上是驻留在内存中的盘块固定大小固定大小(单独开辟存储空间单独开辟存储空间)和可变大小(把所有和可变大小(把所有未利用的内存空间变为共享的缓冲池)未利用的内存空间变为共享的缓冲池)2.数据交付方式数据交付方式数据交付指将磁盘高速缓存中的数据传送给请求者数据交付指将磁盘高速缓存中的数据传送给请求者进程进程步骤:先查缓存、后查磁盘并更新缓存步骤:先查缓存、后查磁盘并更新缓存方式:方式:数据交付数
41、据交付指针交付指针交付第70页/共74页5.6.3 磁盘高速缓存磁盘高速缓存3.置换算法置换算法常用最近最久,还需考虑以下几方面常用最近最久,还需考虑以下几方面:访问频率访问频率可预见性可预见性数据一致性:将需要一致性的块放在替换队列的头数据一致性:将需要一致性的块放在替换队列的头部,优先回写。部,优先回写。4.周期性回写磁盘周期性回写磁盘第71页/共74页5.6.4 提高磁盘提高磁盘I/O速度的其它方法速度的其它方法1.提前读提前读2.延迟写延迟写访问频率高的磁盘块放在替换队列的尾部,减少回访问频率高的磁盘块放在替换队列的尾部,减少回写次数写次数3.优化物理块的分布优化物理块的分布目的是减小
42、磁头移动距离目的是减小磁头移动距离簇分配方式:一个簇为多个连续的块簇分配方式:一个簇为多个连续的块4.虚拟盘(虚拟盘(RAM盘)盘)和磁盘高速缓存区别:虚拟盘由用户控制;磁盘高和磁盘高速缓存区别:虚拟盘由用户控制;磁盘高速缓存由系统控制。速缓存由系统控制。第72页/共74页5.6.5 廉价磁盘冗余阵列廉价磁盘冗余阵列并行交叉存取并行交叉存取并行交叉存取并行交叉存取冗余存取冗余存取冗余存取冗余存取校验存取校验存取校验存取校验存取优点优点优点优点可靠性高可靠性高可靠性高可靠性高磁盘磁盘磁盘磁盘I/OI/O速度高速度高速度高速度高性价比高性价比高性价比高性价比高第73页/共74页RAID的分级的分级
43、最初的最初的RAID:RAID0级:级:无容错技术无容错技术,仅提供了并行交叉存取。,仅提供了并行交叉存取。RAID1级:支持容错技术,具有磁盘镜像功能。级:支持容错技术,具有磁盘镜像功能。RAID2级:支持容错技术,支持海明码校验。级:支持容错技术,支持海明码校验。RAID3级:支持容错技术,具有并行传输功能,使用一台级:支持容错技术,具有并行传输功能,使用一台专门奇偶校验盘。专门奇偶校验盘。RAID4级:支持容错技术,与级:支持容错技术,与3相比,支持大的块校验。相比,支持大的块校验。RAID5级:支持容错技术,具有独立传输功能。级:支持容错技术,具有独立传输功能。强化后的强化后的RAID:RAID6级:支持容错技术,设置了一个专用的、可快速访级:支持容错技术,设置了一个专用的、可快速访问的异步校验盘。问的异步校验盘。RAID7级:支持容错技术,对级:支持容错技术,对6的改进,具有较高的传输的改进,具有较高的传输速率和优异的性能。速率和优异的性能。第74页/共74页