08第八章设备与IO管理1

上传人:ahu****ng1 文档编号:146128829 上传时间:2020-09-27 格式:PPTX 页数:99 大小:559.92KB
返回 下载 相关 举报
08第八章设备与IO管理1_第1页
第1页 / 共99页
08第八章设备与IO管理1_第2页
第2页 / 共99页
08第八章设备与IO管理1_第3页
第3页 / 共99页
08第八章设备与IO管理1_第4页
第4页 / 共99页
08第八章设备与IO管理1_第5页
第5页 / 共99页
点击查看更多>>
资源描述

《08第八章设备与IO管理1》由会员分享,可在线阅读,更多相关《08第八章设备与IO管理1(99页珍藏版)》请在金锄头文库上搜索。

1、第八章 设备与I/O管理,设备及其分类 设备的物理特性 IO传输方式(查询、中断、通道、DMA) 设备分配与去配 设备驱动 设备调度 缓冲技术 输入输出进程 RAID技术 虚拟设备,8.1 设备及其分类,用途 存储型设备 磁盘,磁带,光盘 IO型设备 扫描仪,打印机,mouse,keyboard,monitor, 网络设备 网卡,交换机,etc.,8.1 设备及其分类,管理 共享型设备(块型) 多个进程的IO操作以块为单位可以交叉 独占型设备(块型) 多个进程的IO操作以块为单位不宜交叉 独占型设备(字符型) 多个进程的IO操作以字符为单位不能交叉,IO设备的物理特性 传输一字节发生一次中断

2、存储设备的物理特性 磁带的物理特性,8.2 设备的物理特性,磁盘组的物理特性,盘面0,盘面1,盘面2,盘面m-1,扇区1,扇区0,扇区n-1,柱面0,柱面l-1,.,引臂,柱面号i 盘面号j 扇区号k,块号b(一维地址),(三维地址),编址方法:使相邻块物理上最近 例子:l=2; m=3; n=3 柱面号:0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 盘面号:0 0 0 1 1 1 2 2 2 0 0 0 1 1 1 2 2 2 扇区号:0 1 2 0 1 2 0 1 2 0 1 2 0 1 2 0 1 2 块 号:0 1 2 3 4 5 6 7 8 9 10 11

3、12 13 14 15 16 17,三维地址一维地址: b=imn+jn+k 一维地址三维地址: i=b(mn) j=b mod (mn) n k=b mod (mn) mod n,未考虑读写延迟的扇区编号:,考虑读写延迟的扇区编号(单交错):,考虑读写延迟的扇区编号(双交错):,光盘的物理特性: 读取原理: pit/land 螺旋线,22188圈(展开5.6km), 内侧转速:530转/分; 外侧转速:200转/分(密度均匀,读取速度均匀),14个bit构成一个symble,42个symble构成一个frame,98个frame构成一个sector,Sector 2352bytes,588b

4、its的frame 各包含24字节,Preamble: 16bytes, 前12bytes为: 00FFFFFFFFFFFFFFFFFFFF00 后随3bytes扇区编号,最后字节为mode,2048字节,288字节,8.3 I/O 传输方式,IO操作演变历史 程序查询方式 (programmed IO) (polling) CPU and Device can not work in parallel 中断方式 (interrupt) CPU and device can work in parallel, too many interrupts for CPU 通道方式 (channel)

5、 special processor for dealing with io operations 直接内存方式 (DMA) DMA controller in charge of block io,8.3.1 程序控制查询方式,CPU启动设备,完成,F,T,缺点: 处理机与设备串行工作; 消耗大量处理机时间.,8.3.2 中断驱动方式,CPU 计算 启动设备 计算 计算 中断处理 计算,设备:,工作,特点: CPU与设备并行工作 设备多时对CPU打扰多,8.3.3 DMA方式, 数据传输,CPU,DMA 控制器,内存,缓冲,磁盘, 中断, DMA请求,总线,磁盘 控制器, 回答, DMA编程

6、,启动 中断 状态,8.3.3 DMA方式,.,CPU通过设置DMA控制器实现DMA编程,同时启动磁盘控制器由磁盘读入数据至内部缓冲区并进行和校验; DMA控制器向磁盘控制器发出读请求,并将内存地址放在地址总线上; 磁盘控制器将字节传到内存指定单元; 磁盘控制器向DMA控制器发送回答; DMA控制器将内部地址寄存器加1同时将记数减1,重复上述过程直至计数器为0,此时DMA控制器向CPU发出中断信号.,8.3.4 通道方式,通道 负责IO操作的处理机 指令系统 基本操作:控制、读、写、转移、结束 指令格式:(操作码,传输量,特征位,地址) 运控部件 CAW,CCW,CSW,CDW 存储区域(与C

7、PU共用内存,通道内有缓冲区) 通道程序,IO数据(channel does have its buffers),通道程序执行过程:,按CAW取通道命令CCW,(CAW)+1 CAW,是通道结束命令,执行此命令,F,向CPU发中断,一个通道程序可以控制若干设备进行多次IO传输。,T,通道类型,字节多路通道(byte multiplexer channel) 多个非分配型子通道,连接低速外围设备 数组选择通道(block selector channel) 一个分配型子通道,连接多台高速设备 数组多路通道(block multiplexer channel) 多个非分配型子通道,连接多台高速设备

8、,设备、通道、内存连接,选择通道,磁盘,字节多路通道,打印机,输入机,内存储器,处理机,磁带,数组多路通道,8.4 设备的分配与去配,独占型设备的分配与去配 块型独占 字符型独占 共享型设备的分配与去配 块型共享,数据结构 设备控制块(UCB) 通道控制块(CCB),设备标识 设备状态 相连通道 占有设备进程,通道标识 通道状态 通道类型 占有通道进程,系统设备表(SDT),设备类 总数 设备等待队列 UCB表指针 lp m Sm,UCB UCB UCB, ,独占型设备的分配与去配 用户使用独占型设备活动: 申请,使用,使用,使用,释放 申请:(1) 根据设备类查SDT表 (2) P(Sm)

9、(3) 查UCB表找一空闲设备并分配 使用:(1) 分配通道 (2) IO传输 (3) 去配通道 释放:(1) 找SDT表对应入口 (2) 查UCB表,去配 (3) V(Sm),8.4 设备的分配与去配,共享型设备的分配与去配 用户使用共享型设备活动 使用,使用,使用 特征 来自文件系统; 每次读(写)一块; 通常经过缓冲; 排队优化。 使用 分配通道;IO操作;释放通道,8.5 设备驱动,通道程序 CCW指令序列 静态编制或动态生成 设备启动 通道启动 中断处理 通道向CPU发的中断,8.5 设备驱动,设备,CAW CCW CDW CSW,. 形成通道程序 . 地址CAW . 启动通道 .

10、中断处理 .,启动,中断,内存,CPU,通道,8.5 设备驱动,设备,CAW CCW CDW CSW,. 形成通道程序 . 地址CAW . 启动通道 . 中断处理 .,启动,中断,内存,CPU,通道,8.5 设备驱动,设备,CAW CCW CDW CSW,. 形成通道程序 . 地址CAW . 启动通道 . 中断处理 .,启动,中断,内存,CPU,通道,8.5 设备驱动,设备,CAW CCW CDW CSW,. 形成通道程序 . 地址CAW . 启动通道 . 中断处理 .,启动,中断,内存,CPU,通道,8.6 设备调度,优化服务顺序 考虑因素 公平性 防止饿死 高效性 减少磁盘引臂移动量,磁盘

11、引臂调度(disk head scheduling),先到先服务(FCFS) 请求序列:130,42,180,15,108,68,97,0 15 42 53 68 97 108 130 180 199,移动量: (130-53)+(130-42)+(180-42)+(180-15)+(108-15)+(108-68)+(97-68)=630,磁盘引臂调度(disk head scheduling),最短寻找时间优先(SSTF) 请求序列:130,42,180,15,108,68,97,0 15 42 53 68 97 108 130 180 199,移动量: (53-42)+(180-42)+

12、(180-15)=314,磁盘引臂调度(disk head scheduling),SCAN(LOOK) 请求序列:130,42,180,15,108,68,97,SCAN移动量: (53-0)+(180-0)=233 LOOK移动量: (53-15)+(180-15)=203,0 15 42 53 68 97 108 130 180 199,Look Scan,磁盘引臂调度(disk head scheduling),C-SCAN(C-LOOK) 请求序列:130,42,180,15,108,68,97,特点:所有磁道地位最长等待时间相同 问题:diskhead stickiness(磁头粘

13、性),0 15 42 53 68 97 108 130 180 199,C-Look C-Scan,磁盘引臂调度(disk head scheduling),N-step SCAN(N步扫描) 将磁盘请求队列分为若干个长度为N的子队列,每个队列内采用SCAN算法 例子:磁道由外向内编号0-99,磁头当前位置20,向内移动,N=4 12, 5, 7, 30, 60, 77, 13, 26, 61, 80, 53, 66 2030127513266077806661 53 当N很大时,接近SCAN算法 当N=1时,蜕化为FCFS算法,磁盘引臂调度(disk head scheduling),FSC

14、AN(Freezing SCAN,冻结扫描) 将磁盘请求分为两个子队列, 服务队列 请求队列 用SCAN算法扫描服务队列,并为请求服务,服务期间新到达的请求入请求队列 扫描完成后交换两个队列的地位,8.6.1 磁盘I/O参数,首先分析一下读/写一个磁盘块需要多少时间。它一般由如下三个因素确定: 寻道时间(seek time):将磁盘引臂移动到指定柱面所需要的时间; 旋转延迟(rotational delay):指定扇区旋转到磁头下的时间; 传输时间(transfer time):读/写一个扇区的时间。,8.6.1 磁盘I/O参数,寻道时间Ts计算公式如下: Ts=mns 其中,n为跨越磁道数,

15、m为跨越一个磁道所用时间,s为启动时间。 旋转延迟Tr计算公式如下: Tr=1/(2r) 其中,r为磁盘转速。该公式给出的是平均旋转延迟,它是磁盘旋转一周时间的一半,即旋转半周所花费的时间。,8.6.1 磁盘I/O参数,传输时间Tt计算公式如下: Tt=b/(rN) 其中,b为读/写字节数,r为磁盘转速,N为一条磁道上的字节数。,8.6.1 磁盘I/O参数,因此,可将访问时间Ta表示为: 访问磁盘通常是以扇区(块)为单位的,令M为一个磁道上扇区的个数,则一个扇区的访问时间为:,例题,例8-1设有一个只有一个移动磁头的磁盘,磁道由外向内编号0、1、2、199,磁头移动一个磁道所需时间为1ms,每个磁道有100个扇区,磁盘转速6000r/m。采用CLOOK引臂调度算法,当前引臂位置处于第100磁道,当前移动方向由外向内,并规定引臂向内扫描时为路经请求服务。对于如下磁道请求120、85、70、30,每个请求访问对应磁道上的一个扇区,问: (1)给出引臂移动序列,计算引臂移动量和寻道时间,忽略启动时间; (2)计算平均旋转延迟时间; (

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号