第五章 设备管理.

Slides:



Advertisements
Similar presentations
阻塞操作. 在 linux 里,一个等待队列由一个 wait_queue_head_t 类型的结构来描述 等待队列的初始化: static wait_queue_head_t testqueue; init_waitqueue_head(&testqueue);
Advertisements

Linux 系统. 操作系统发展需求 1 没有操作系统 2 简单批处理操作系统 3 多道程序设计的批处理 4 多道程序设计的分时操作系统 5 多处理机并行系统 6 网络操作系统 7 分布式操作系统.
计算机网络课程总结 一、计算机网络基础 计算机网络定义和功能、基本组成 OSI/RM参考模型(各层的功能,相关概念, 模型中数据传输 等)
LSF系统介绍 张焕杰 中国科学技术大学网络信息中心
第五章 设备管理 5.1 I/O系统 5.2 I/O控制方式 5.3 缓冲管理 5.4 设备分配 5.5 设备处理 5.6 磁盘存储管理.
实验四 利用中规模芯片设计时序电路(二).
第三节    缓冲管理 缓冲技术实现基本思想 当一个进程执行写操作输出数据时,先向系统申请一个主存区域──缓冲区,然后,将数据高速送到缓冲区。若为顺序写请求,则不断把数据填到缓冲区,直到它被装满为止。此后,进程可以继续它的计算,同时,系统将缓冲区内容写到I/O设备上。 当一个进程执行操作输入数据时,先向系统申请一个主存区域──缓冲区,系统将一个物理记录的内容读到缓冲区域中,然后根据进程要求,把当前需要的逻辑记录从缓冲区中选出并传送给进程。
5.4 顺序脉冲发生器、 三态逻辑和微机总线接口 顺序脉冲发生器 顺序脉冲 计数型 分类 移位型.
第五章 设备管理 5.1 I/O系统 5.2 I/O控制方式 5.3 缓冲管理 5.4 设备分配 5.5 设备处理 5.6 磁盘存储器管理.
第五章 设备管理 5.1 I/O系统 5.2 I/O控制方式 5.3 缓冲管理 5.4 设备分配 5.5 设备处理 5.6 磁盘存储器管理.
第五章 设 备 管 理 5.1 I/O系统 5.2 I/O控制方式 5.3 缓冲管理 5.4 I/O软件 5.5 设备分配
小学生游戏.
Oracle数据库 Oracle 子程序.
设备管理.
Chapter 13 輸入/輸出系統 (I/O Systems)
全国计算机等级考试 二级基础知识 第二章 程序设计基础.
计算机基础知识 丁家营镇九年制学校 徐中先.
第5节 磁盘 磁盘的结构 磁盘的地址 磁盘访问的优化 磁盘使用过程 举例.
Kvm异步缺页中断 浙江大学计算机体系结构实验室 徐浩.
LSF系统介绍 张焕杰 中国科学技术大学网络信息中心
Hadoop I/O By ShiChaojie.
第三章 微机基本系统的设计 第一章 8086程序设计 第二章 MCS-51程序设计 第四章 存贮器与接口 第五章 并行接口
第七章设备管理 7. 1 概述 7. 2 I/O软件的组成 7. 3 I/O硬件特点 7. 4 有关技术 7. 5 网络设备 7
存储系统.
中国科学技术大学计算机系 陈香兰 Fall2013 第九讲 设备管理 中国科学技术大学计算机系 陈香兰 Fall2013.
大学计算机基础 典型案例之一 构建FPT服务器.
走进编程 程序的顺序结构(二).
李元金 计算机与信息工程学院 第 22 讲 磁盘存储器的管理(1) 李元金 计算机与信息工程学院 1/
操作系统教程(第3版) 第五章 设备管理 面向21世纪课程教材 高等教育出版社 2003年8月.
PURSUING EXCELLENCE / TOWARD SUCCESS WUCHANG UNIVERSITY OF TECHNOLOGY
第十章 IDL访问数据库 10.1 数据库与数据库访问 1、数据库 数据库中数据的组织由低到高分为四级:字段、记录、表、数据库四种。
数据挖掘工具性能比较.
CPU结构和功能.
应用实例 识别Ps & Pt ADTS 压力通道并校验 CPD8000 New MENSOR‘s ADTS: CPA8001.
设备管理 第7章 设备管理.
移相正弦信号发生器设计 采用直接数字综合器DDS发生器的设计 原理:图1是此电路模型图
第六章 设备管理 Devices Management
操作系统原理与设计 Operating Systems: Design and Implementation
内容摘要 ■ 课程概述 ■ 教学安排 ■ 什么是操作系统? ■ 为什么学习操作系统? ■ 如何学习操作系统? ■ 操作系统实例
C语言程序设计 主讲教师:陆幼利.
微机系统的组成.
计算机系统结构 第六章 输入输出系统.
第11章 设备管理 (Chapter 11 Device Management)
$9 泛型基础.
第四章 MCS-51定时器/计数器 一、定时器结构 1.定时器结构框图
本节内容 随机读取 视频提供:昆山爱达人信息技术有限公司.
(Random Access Memory)
第五章 设备管理 5.1 I/O系统 5.2 I/O控制方式 5.3 缓冲管理 5.4 设备分配 5.5 设备处理 5.6 磁盘存储器管理.
工业机器人知识要点解析 (ABB机器人) 主讲人:王老师
第二章 补充知识 2.1 总线和三态门 一、总线(BUS) 三总线结构 数据总线DB(Data Bus)
信号量(Semaphore).
iSIGHT 基本培训 使用 Excel的栅栏问题
第八章 总线技术 8.1 概述 8.2 局部总线 8.3 系统总线 8.4 通信总线.
本节内容 文件系统 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
Visual Basic程序设计 第13章 访问数据库
HSC高速输出例程 HORNER APG.
第六章设备管理 本章重点: 1.掌握设备管理的功能和任务; 2.掌握设备的分类方法; 3.掌握I/O控制的实现;
临界区问题的硬件指令解决方案 (Synchronization Hardware)
GIS基本功能 数据存储 与管理 数据采集 数据处理 与编辑 空间查询 空间查询 GIS能做什么? 与分析 叠加分析 缓冲区分析 网络分析
Google的云计算 分布式锁服务Chubby.
基于列存储的RDF数据管理 朱敏
本节内容 动态链接库 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
24 or 1024? PWN Jawbone Up24 手环.
第十七讲 密码执行(1).
FVX1100介绍 法视特(上海)图像科技有限公司 施 俊.
李元金 计算机与信息工程学院 第 18 讲 设备管理(2) 李元金 计算机与信息工程学院 1/
5.1 I/O系统 5.2 I/O控制方式 5.3 缓冲管理 5.4 设备分配 5.5 设备处理 5.6 磁盘存储器管理
入侵检测技术 大连理工大学软件学院 毕玲.
第七章设备管理 概述 I/O软件的组成 I/O硬件特点 有关技术 设备处理 典型外部设备.
DSP技术与应用 电子与信息技术系.
Presentation transcript:

第五章 设备管理

内容 (1)I/O组成; (2)I/O控制; 指I/O完成的方法。 (3)I/O缓冲; (4)I/O分配; (5)I/O处理。

5.1 I/O系统 5.1.1 I/O设备 一、类型 (1)按速度分: 中:打印机 高:磁盘。 (2)按信息交换单位分: 字符:打印机、串口 低:键盘 中:打印机 高:磁盘。 (2)按信息交换单位分: 块:磁盘,可定位 字符:打印机、串口

5.1 I/O系统 5.1.1 I/O设备 一、类型 (3)按设备的共享属性分: 独占:如临界资源 共享:磁盘 虚拟:如本身因有属性为独占,但将其虚拟为几个逻辑设备。

二、设备与控制器之间的接口:(图5.1) CPU―――控制器―――设备 三种信号: (1)数据信号:——双向,有缓存 (2)控制信号:控制器发给设备;要求其完成相关操作 (3)状态信号:设备发给控制器,后者“显示”;

5.1.2 设备控制器 一、功能:接收CPU命令,控制I/O设备工作,解放CPU. 1.接收和识别命令。 5.1.2 设备控制器 一、功能:接收CPU命令,控制I/O设备工作,解放CPU. 1.接收和识别命令。 应有相应的Register来存放命令(“命令寄存器”) 2.数据交换 CPU——控制器的数据寄存器——设备 3.设备状态的了解和报告 设备控制器中应用“状态寄存器” 4.地址识别 CPU通过“地址”与设备通信,设备控制器应能识别它所控制的设备地址以及其各寄存器的地址。

5.1.2 设备控制器 一、功能:接收CPU命令,控制I/O设备工作,解放CPU, 5.数据缓冲 6.差错控制 二、组成(图5.2) 5.1.2 设备控制器 一、功能:接收CPU命令,控制I/O设备工作,解放CPU, 5.数据缓冲 6.差错控制 二、组成(图5.2) 各类寄存器:数据、命令、状态 信号线:数据线(独立寻址、内存寻址)、地址线、控制线 I/O逻辑:在其控制下完成与CPU、设备的通信。

5.1.3 I/O通道 一、引入 通道 一种特殊的执行I/O指令的处理机,与CPU共享内存,可以有自己的总线。 引入目的 解脱CPU对I/O的组织、管理。 CPU只需发送I/O命令给通道,通道通过调用内存中的相应通道程序完成任务。

5.1.3 I/O通道 二、类型 1.字节多路通道:(图5-3) 各子通道以时间片轮转方式共享通道,适用于低、中速设备。 2.数组选择通道: 无子通道,仅一主通道,某时间由某设备独占,适于高速设备。 但通道未共享,利用率低。 3.数组多路通道: 在图5-3中,多子通道不是以时间片方式,而是“按需分配”,综合了前面2种通道类型的优点。

5.1.3 I/O通道 三、通道“瓶颈”问题: 解决:采用复联方式 图5.4

5.1.4 总线系统 微机I/O系统 设备控制器:与设备是一对多的关系,系统是通过它与设备通信 系统―――设备控制器――― 设备 5.1.4 总线系统 微机I/O系统 设备控制器:与设备是一对多的关系,系统是通过它与设备通信 系统―――设备控制器――― 设备 如:磁盘设备,打印设备 缺点:总线瓶颈,CPU瓶颈。

5.1.4 总线系统 二、主机I/O系统(四级结构) 计算机―――I/O通道―――I/O控制器―――设备 5.1.4 总线系统 二、主机I/O系统(四级结构) 计算机―――I/O通道―――I/O控制器―――设备 I/O通道相当于对总线的扩展,即多总线方式,且通道有一定的智能性,能与CPU并行,解决其负担。 ISA/EISA/LocalBUS/VESA/PCI

5.2 I/O控制方式 四个阶段: 程序I/O——中断I/O——DMA控制——通道控制。 趋势:提高并行度。

5.2.1 程序I/O(忙—等待方式) 查询方式:CPU需花代价不断查询I/O状态(图5-7a) CPU资源浪费极大。 例:99.9ms+0.1ms=100ms 在5.2.1中99.9在忙等

5.2.2 中断I/O 向I/O发命令——返回——执行其它任务。 I/O中断产生——CPU转相应中断处理程序。 如:读数据,读完后以中断方式通知CPU,CPU完成数据从I/O——内存

5.2.3 DMA方式——用于块设备中 一、引入 中断I/O,CPU“字节”干预一次,即每“字节”传送产生一次中断。 DMA:由DMA控制器直接控制总线传递数据块。DMA控制器完成从I/O——内存。 图5.7c 二、组成 一组寄存器+控制逻辑。图5.8 CR(命令/状态); DR(数据); MAR(内存地址); DC(计数) DMA工作过程(例):

Direct Memory Access

DMA

DMA

DMA

5.2.4 I/O通道控制方式 DMA方式:对需多离散块的读取仍需要多次中断。 通道方式:CPU只需给出 (1)通道程序首址。 后,通道程序就可完成一组块操作 操作 P Record 计数 内存地址 Write 80 813 140 1034 1 60 5830 300 2000 250 1850 720

5.3 缓冲管理 目的:组织管理、分配、释放buffer 5.3.1 引入 1.缓和CPU和I/O设备间速度不匹配的矛盾。 5.3 缓冲管理 目的:组织管理、分配、释放buffer 5.3.1 引入 1.缓和CPU和I/O设备间速度不匹配的矛盾。 如:计算——打印buffer——打印 2.减少对CPU的中断频率 如:buffer越大,“buffer满”信号发生频率越低。 3.提高CPU和I/O并行性

5.3 缓冲管理 5.3.2 单缓冲 由于C和T可并行,M和C或M和T不能并行,因此处理一块数据时间:Max(C,T)+M 5.3 缓冲管理 5.3.2 单缓冲 由于C和T可并行,M和C或M和T不能并行,因此处理一块数据时间:Max(C,T)+M 用户进程何时阻塞?

5.3 缓冲管理 5.3.2双缓冲 效率有所提高,且进一步平滑了传输峰值。 系统处理一块数据的时间约为:MAX(C,T) 5.3 缓冲管理 5.3.2双缓冲 效率有所提高,且进一步平滑了传输峰值。 系统处理一块数据的时间约为:MAX(C,T) 收发可双向同时传送。(图5-13)

5.3 缓冲管理 5.3.3 循环多缓冲 类型: R:空缓冲;G:满缓冲;C:当前缓冲

循环多缓冲的使用 nextg:指示下一个应取数据的buf nexti:指示下一个空buf. Getbuf: 取nextg对应缓冲区提供使用,将Nextg置为空,Nextg=(Nextg+1)Mod N 将Nexti对应缓冲区提供使用,将Nexti置为满,Nexti=(Nexti+1)Mod N Releasebuf: 若C满,则改为G; 若C空,则改为R;

循环多缓冲的同步问题 Nexti 追上Nextg: 表示输入速度>输出速度,全部buf满,这时输入进程阻塞 Nextg追上Nexti:

5.3.4 缓冲池 缓冲池:系统提供的公用缓冲 一、组成: 3个队列: 空缓冲队列emq 输入队列inq 输出队列outq 四个工作缓冲区: 5.3.4 缓冲池 缓冲池:系统提供的公用缓冲 一、组成: 3个队列: 空缓冲队列emq 输入队列inq 输出队列outq 四个工作缓冲区: hin:收容输入数据 sin:提取输入数据 hout:收容输出数据 sout:提取输出数据

二、4种工作方式 1.收容输入;2.提取输入 3.收容输出;4.提取输出

5.3 缓冲管理 1.hin=getbuf(emq); putbuf(inq,hin) 5.3 缓冲管理 1.hin=getbuf(emq); putbuf(inq,hin) 2.sin=getbuf(inq); 计算; putbuf(emq,sin) 3.hout=getbuf(emq); putbuf(outq, hout) 4.sout=getbuf(outq);输出;putbuf(emq,sout)

三、Getbuf和Putbuf过程 Putbuf(type) Getbuf(type) Begin Begin wait(MS(type)); addbuf(type,number); signal(MS(type)); signal(RS(type)); end Getbuf(type) Begin wait(RS(type)); wait(MS(type)); B(number):=takebuf(type); signal(MS(type)); end

5.4 设备分配 包括:对设备、设备控制器、通道的分配 5.4.1 数据结构 一、设备控制表DCT: 5.4 设备分配 包括:对设备、设备控制器、通道的分配 5.4.1 数据结构 一、设备控制表DCT: 二、控制器控制表(COCT),通道表(CHCT),系统设备表(SDT),图5-17 SDT:记录了系统中全部设备及其驱动程序地址。

设备控制表DCT DCT1 DCT2 DCTn 设备类型type 设备标识符:deviceid 设备状态:等/不等 忙/闲 指向控制器表的指针 重复执行次数或时间 设备队列的对首指针 DCT1 DCT2 DCTn

5.4.2 设备分配应考虑的若干因素 一、设备的固有属性: 共享+虚拟:注意调度的合理性; 独享:排它性分配,控制不好可能死锁。 二、分配算法: (1)FIFO; (2)优先权。

5.4.2 设备分配应考虑的若干因素 三、安全性: 安全分配(同步):每进程获得一I/O后,即block,直到其I/O完成。 5.4.2 设备分配应考虑的若干因素 三、安全性: 安全分配(同步):每进程获得一I/O后,即block,直到其I/O完成。 即打破了死锁条件。 缺点:CPU、I/O对该进程是串行,进程进展缓慢。 不安全分配(异步):需进行安全性检查,进程执行效率高。

5.4.3 设备独立性 一、概念: 即设备无关性,指应用程序独立于具体使用的物理设备。 逻辑设备 物理设备 逻辑设备表(LUT): 逻辑设备 5.4.3 设备独立性 一、概念: 即设备无关性,指应用程序独立于具体使用的物理设备。 逻辑设备 物理设备 逻辑设备表(LUT): 逻辑设备 物理设备 Driver入口

5.4.3 设备独立性 分配流程:进程给出逻辑名——通过LUT得到物理设备及其driver入口。 优点: 设备分配更灵活; 5.4.3 设备独立性 分配流程:进程给出逻辑名——通过LUT得到物理设备及其driver入口。 优点: 设备分配更灵活; 逻辑设备和物理设备间可以是多——多的映射关系。提高了物理设备的共享性,以及使用的灵活性。如: 某逻辑名可对应这一类设备,提高均衡性与容错性。 几个逻辑名可对应某一个设备,提高共享性。

5.4.3 设备独立性 易于实现I/O重定向。 不变程序,只需改变LUT表的映射关系。 二、设备独立性软件 执行所有设备的公有操作 5.4.3 设备独立性 易于实现I/O重定向。 不变程序,只需改变LUT表的映射关系。 二、设备独立性软件 执行所有设备的公有操作 分配回收 名字映射 保护 缓冲 差错控制 向用户层软件提供统一接口 read、write

Struct general_op{ int (*read)(…) int (*write)(…) }; driver1: Struct general_op dev_op={ dev1_read, dev1_write }; driver2: Struct general_op dev_op={ dev2_read, dev2_write Gen_read(fd,…) { dev_op=map(fd); dev_op->read(…); }

5.4.3 设备独立性 三.名字映射 LUT的生成 LUT的配置 (1)整个系统一张LUT表: 要求:逻辑名不重复,(一般用于单用户系统) 5.4.3 设备独立性 三.名字映射 LUT的生成 在用户进程第一次请求设备时完成映射并在LUT中生成相应项 LUT的配置 (1)整个系统一张LUT表: 要求:逻辑名不重复,(一般用于单用户系统) (2)每个用户一张LUT表。 可重名/可限制用户对某些设备的使用。 逻辑设备 物理设备 Driver入口

5.4.4 独占设备分配程序 进程n请求设备: begin search (sdt, phdevice) 5.4.4 独占设备分配程序 进程n请求设备: begin search (sdt, phdevice) if not busy (phdevice) then compute(safe)——对独占设备 if safe then alloc (n, phdevice); else begin insert (DL(phdevice), n);-----将n插入设备等待队列DL上 return end;

设备忙—else begin; insert (DL (phdevice), n); return; end; controllerid=controllerid (COCT ptr(dct)); ――device分配成功 if not busy (COCT (controllerid)) then alloc (n, controllerid); else begin insert (col, n); channeled=channeled(chatptr (controllerid)); ――控制器分配成功

if not busy (chct (channelid)) then allocation (n, channelid); else begin insert (chl, n) return; end; 优化: 1)增加设备的独立性 2)考虑多通路情况

5.4.5 SPOOLING技术 1概念 假脱机技术,在联机情况下同时出现外围操作 作用:通过缓冲方式,将独占设备改造为共享设备

2、spooling组成: 1.输入#和输出#: 在磁盘上开辟的2个大存储空间,模拟输入和输出设备。 2.输入buf和输出buf(内存中) 3.输入Spi和输出SPo进程。 分别控制(1),(2)的动作。 SPi相当于脱机输入控制器。 SPo相当于脱机输出控制器。

3例 (1)输入 a.进程n请求――> SPi为n在输入#中分配空间——>设备数据由输入buf送输入#——>生成输入请求表挂输入请求队列。 b.CPU空——取请求表中的任务,送进程缓冲区。 (2)输出:(打印) a.进程n请求——>SPo为n在输出#中分配空间——>将数据由进程buf转到输出#——>生成一打印请求表挂打印请求队列。 b.打印机空——>查打印请求表中的任务——> 取输出#中对于数据——>输出buf ——>打印

4特点 1.提高I/O速度: 对低速设备操作——>变为对输入/出#操作。 2.将独占设备改造为共享设备 分配设备的实质时分配输入/出# 3.实现了虚拟设备功能

5.5设备处理 设备处理程序即是设备驱动程序。 设备驱动程序的功能和特点 设备驱动程序的处理过程

设备驱动程序的功能和特点 功能: 接收进程的I/O命令 检查命令合法性 检查设备状态 设置设备工作方式 驱动I/O操作 响应设备中断 构成通道程序

设备驱动程序的功能和特点 特点: 和硬件紧密相关、各个设备有自己的设备驱动

5.5.2设备驱动程序处理过程 包括 启动过程 中断处理过程 将抽象要求转化为具体要求 检查I/O请求合法性 读出和检查设备状态 传送必要的参数 设置工作方式 启动I/O设备

5.5.3中断处理程序 流程 设备启动->I/O完成->发送中断->CPU调用中断处理过程 中断处理过程 唤醒被阻塞的驱动程序进程 保护被中断进程环境 转入相应的设备处理程序 中断处理(特性) 恢复被中断进程的现场

5.6磁盘存储器管理 5.6.1 磁盘性能简述 一、数据组织和格式(图5-22) 磁道——扇区——字节 二、类型 1.固定头磁盘: 每个磁道上有一个磁头,快 2.移动头磁盘: 每个盘面仅有一个磁头,慢

5.6.1 磁盘性能简述 三、磁盘访问时间: 1.寻道时间:TS=m*n+S m:常量,n:磁道数,s:磁盘启动时间。 2.旋转延时间Tr: 指定扇区旋转到磁头下所需时间。 设每秒r转,则Tr=1/2r(均值) 3.数据传输时间Tt=b/rN b:读写字节数 N:每道上的字节数 访问时间:Ta=Ts+1/2r+b/rN 可见,由于特定磁盘,只有集中放数据,集中读写(b大)才能更好提高传输效率。

例子 寻道时间: 20ms 磁盘通道传输速率: 1MB/s 转速r=3600rpm 每扇区512字节 每磁道32 扇区 目标:读 128k 数据

时间比较 60*16k=960k<1MB/s 顺序组织 (20+8.3+16.7)+(8.3+16.7)×7=220(ms) 随机组织 (20+8.3+0.5)×256=7373(ms)

5.6.2 磁盘调度 目标:减少寻道时间 一、FCFS(Fisrt Come First Second) 特点:简单,寻道时间长,相当于随机访问模式。 二、SSTF(最短寻道优先) 三、扫描算法。 1.进程“饥饿现象” SSTF存在。 2.SCAN算法: 在移动方向固定的情况下采用了SSTF,以避免饥饿现象

FCFS调度算法 SSTF调度算法 100道开始 被访问的下一个磁道 移动距离 55 45 58 3 39 19 18 21 90 72 160 70 150 10 38 112 184 146 平均寻道长度:55.3 100道开始 被访问的下一个磁道 移动距离 90 10 58 32 55 3 39 16 38 1 18 20 150 132 160 184 24 平均寻道长度:27.5

5.6.2 磁盘调度 四、循环扫描CSCAN(图9-5) 一个方向读完,不是象SCAN那样回头,而是循环。 访问时间:2TT+Smax 五、N—Step—SCAN和FSCAN算法。 1. N—Step—SCAN 粘臂:由于连续对某磁道访问引起的垄断访问,将磁盘请求队列分为长为N的子队列m个,如下图处理。当N=1时,为FCFS。当N时,为SCAN.

5.6.2 磁盘调度 2.FSCAN

SCAN调度算法 CSCAN调度算法 100道开始,增加方向 被访问的下一个磁道 移动距离 150 50 160 10 184 24 90 94 58 32 55 3 39 16 38 1 18 20 平均寻道长度:27.8 100道开始,增加方向 被访问的下一个磁道 移动距离 150 50 160 10 184 24 18 166 38 20 39 1 55 16 58 3 90 32 平均寻道长度:27.5

5.6.3 磁盘高速缓存 形式 逻辑上是磁盘、物理上是驻留在内存中的盘块 固定大小和可变大小 数据交付方式 数据交付指将磁盘高速缓存中的数据传送给请求者进程 步骤:先查缓存、后查磁盘并更新缓存 方式: 数据交付 指针交付

5.6.3 磁盘高速缓存 置换算法 最近最久 访问频率 可预见性 数据一致性:将需要一致性的块放在替换队列的头部,优先回写。 周期性回写磁盘 例:ms-dos采用写穿透方式

5.6.4 提高磁盘I/O速度的其它方法 提前读 延迟写 访问频率高的磁盘块放在替换队列的尾部,减少回写次数 优化物理块的分布 目的是减小磁头移动距离 簇分配方式:一个簇为多个连续的块 虚拟盘(RAM盘) 和磁盘高速缓存区别:虚拟盘由用户控制;磁盘高速缓存由系统控制。

5.6.5 廉价磁盘冗余阵列 并行交叉存取(条化存取) 冗余存取 校验存取 优点 可靠性高 磁盘I/O速度高 性价比高

RAID 0 (不冗余)

RAID 0

RAID 0 不冗余 不校验 分布式存储 低可靠性 低价格 并行 I/O 访问

RAID 1 (镜像) 分布存放 镜像冗余 不校验

RAID 1 读性能比 RAID 0好 (选择寻道时间小的磁盘访问) 写性能比 RAID 0差 存储开销大 可靠性高

RAID 2 (汉明码校验冗余)

RAID 3 用一个校验盘

RAID 4 (Block-Level Parity)

RAID 4 和RADI3相比较,RAID4基于大的块校验

RAID 5

RAID 5 解决了RAID4校验盘不可靠性问题

试验 实现SSTF算法和SCAN算法 要求 给出任意的输入流、计算平均寻道长度。 输入流长度、磁头移动方向可定制。 测试:设有100各磁道,访问序列如下: 23,5,98, 14,66,25,78,34,66,74,56,87,12,39,71,49,58 当前磁头在50道,上次访问的磁道是18道。