(计算机系统结构专业论文)磁盘阵列scsi接口及cache预取算法研究.pdf_第1页
(计算机系统结构专业论文)磁盘阵列scsi接口及cache预取算法研究.pdf_第2页
(计算机系统结构专业论文)磁盘阵列scsi接口及cache预取算法研究.pdf_第3页
(计算机系统结构专业论文)磁盘阵列scsi接口及cache预取算法研究.pdf_第4页
(计算机系统结构专业论文)磁盘阵列scsi接口及cache预取算法研究.pdf_第5页
已阅读5页,还剩56页未读 继续免费阅读

(计算机系统结构专业论文)磁盘阵列scsi接口及cache预取算法研究.pdf.pdf 免费下载

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

文档简介

华中科技大学硕士学位论文 摘要+ 磁盘阵列是一种存储解决方案,磁盘阵列的i o 性能直接影响着存储 系统的总体性能表现。由于海量存储的兴起,磁盘阵列系统中挂接的磁盘 驱动器的数量很大,容易造成主机存储接口成为系统的i o 瓶颈;多用户 同时读大块连续数据的请求在磁盘阵列中表现为随机的请求模式,常规预 取算法对这种请求模式当作随机请求处理,造成性能下降。本课题主要针 对解决瞄上两种矛盾展开研究工作。 为了加快主机存储接口的数据传输速度,采用l s l 5 3 c 1 0 1 0 6 6s c s i 控 制器作为主机接口通道,这种s c s i 控制器实现了u l t r a l6 0s c s i 协议性能。 通过对s c s i 控制器相关寄存器的设置和s c s i 协议扩展消息的交互,实现 了主机存储通道的数据传输速度达到1 6 0 m b s 。 c a c h e 智能预取算法能够分析规律化随机数据请求中所包含的数据请 求连续特征,调度相应的磁盘c a c h e ,分别进行数据预取,保证最大限度 的c a c h e 命中率,实时统计c a c h e 命中率,并且根据统计的结果,决定下 一次预取的长度,保证最大限度的减少预取失效的开销。采用多磁盘c a c h e 智能预取算法的磁盘阵列能够在不降低性能的情况下应用于更广的数据存 储环境。 通过采用以上两种优化技术,磁盘阵列在i o 性能上有了定的提高, 能更好地适应实际应用环境的数据存储要求,这必将促进磁盘阵列在存储 领域的广泛应用。 关键词:磁盘阵列,输入输出性能,小型计算机系统接口驱动程序,智 能预取 ,本文的研究工作受到国家自然科学基金( 6 0 2 7 3 0 7 4 ) 的资助 华中科技大学硕士学位论文 = = ;= = = = = = = = = = = = = = = = = = = = = = = = = = 2 = = 一一= , a b s t r a c t * r a i di s p r e s e n t n o t o n l y a s as o r to f s t o r a g e s o l u t i o n t h ei o p e r f o r m a n c eo fr a i dd i r e c t l ya f f e c t st h eb e h a v i o ro fs t o r a g es y s t e m w h e n m a s s i v es t o r a g eb o o m i n gq u i c k l y ,t h e s t o r a g ei n t e r f a c eo fh o s tc o m p u t e ri s e a s y t ob e c o m et h es y s t e mi ob o t t l e n e c k t h er e q u e s t sh a v eb e h a v i o u ro f r a n d o mr e q u e s tm o d e li nr a i ds y s t e mt h a tw h e n m u l t i p l eu s e r sa r er e a d i n g l a r g e m o u n t so f s e q u e n t i a l d a t aa tt h es a m et i m e ,i tw i l lr e d u c e t h e p e r f o r m a n c eo ft h es y s t e mb e c a u s et h er o u t i n ep r e f e t e h i n gj u s tr e g a r dt h e r e q u e s t sa sr a n d o mr e q u e s t s ,t h er e s e a r c hd e v o t e d t os o l v et h et w o p r o b l e m s a st o s p e e du p t h ed a t at r a n s f e r t h r o u g h t h eh o s t s t o r a g ei n t e r f a c e , l s l 5 3 c1010 - 6 6 ,as c s ic o n t r o l l e r ,w h i c hi m p l e m e n t st h es c s ip r o t o c o lo f u l t r a l6 0 ,w o r k sa st h ei n t e r f a c ep a s s w a yo fh o s tc o m p u t e r t h es p e e do fd a t a t r a n s f e rb e t w e e ns c s id e v i c e si su p t o16 0 m b si m p l e m e n t e db yt h es e t t i n go f r e g i s t e r si nt h es c s lc o n t r o l l e ra n dt h ei n t e r c o u r s eo fe x p e n d e ds c s ip r o t o c o l m e s s a g e s c a c h es m a r tp r e f e t c ha l g o r i t h mc a na n a l y z et h ec h a r a c t e r so fs e q u e n t i a l d a t ar e q u e s t sf r o mt h er a n d o md a t ar e q u e s t s t h i sa l g o r i t h mc a nm a k es u r et h e m a x i u mo ft h er a t eo fc a c eh i tb ys c h e d u l i n gr i g h td i s kc a c h ea n d p r e f e t c h i n g d a t af r o md i s k s a tt h es a m et i m e ,t h i sa l g o r i t h mw i l lc o u n tt h en u m b e ro f c a c h eh i ti nr e a it i m e ,t h e nd e c i d et h e l e n g t h o fn e x t p r e f e t c h i n g ,w h i c h r e d u c i n gt h ec o s to fp r e f e t c h i n gf a i la tt h eb e s t t h er a i du s i n gc a c h es m a r t p r e f e t c ha l g o r i t h mc a nh ea p p l i e di nm o r ee x p e n d e dd a t as t o r a g ee n v i r o n m e n t i nc a s eo fn o tr e d u c i n gt h ep e r f o r m a n c e t h r o u g ha d o p t i n gt h ea b o v et w ok i n d so fo p t i m i z a t i o nt e c h n o l o g y ,t h e r e i sc e r t a i ni m p r o v e m e n to ni o p e r f o r m a n c ei nt h er a i d ,w h i c hc a nm e e tt h e n e e d so fd a t as t o r a g ei t lt h ee n v i r o n m e n to fa c t u a la p p l i c a t i o nb e t t e r 。 k e y w o r d s :r a i d ,i op e r f o r m a n c e ,s c s id e v i c ed r i v e r ,s m a r tp r e f e t c h + t h i sr e s e a r c hi ss u p p o r t e db yn a t i o n a ln a t u r a ls c i e n c ef o u n d a t i o n ( 6 0 2 7 3 0 7 4 ) i i 独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得 的研究成果。尽我所知,除文中已经标明引用的内容外,本论文不包含任何其 也 个人或集体已经发表或撰写过的研究成果。对本文的研究做出贡献的个人和集体, 均已在文中以明确方式标鹳,本人完全意识到本声明的法律结果由本入承担, 学位论文作者签名:襻 日期:工。o 铲年华月于p 目 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,即:学校 有权保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅 和借阅。本人授权华中科技大学可以将本学位论文韵全部或部分内容编入有关数 据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 。 保密口,在年解密后适用本授权书。 本论文属于 不保密口。 ( 请在以上方框内打“”) 学位论文作者签名:彳南昏艮 日期:a n o 尹年印月;o 日 指导教师签名:歹学丹 日期:力呻甲年岁月矿日 华中科技大学硕士学位论文 p 1 1 课题背景 1绪论 近几年来,由于v l s i 技术的迅速发展和多级并行处理技术的广泛使 用,计算机主机的性能得到了空前的提高。但对于传统的磁盘阵列技术, 性能的改进则远远赶不上主机性能的发展,处理器的性能于磁盘速度之间 的差异越来越大。我们把一个计算机系统的运行分为处理、传输和存储三 个部分,设这三部分的执行时间百分比分别为p 、t 、s ,m 、n 、l 分别为 某段时期中三部分的性能提高倍数,则根据著名的a m d a h l 法则,整个计 算机系统的性靖g 加速比s 由下式得到: s 2 弦砺1 观 当m 、n 远大于l 时,那么整个系统性能的提高就受限于慢速i o 设备性 能的提高速度。因此,计算机的i o 系统与c p u 之间长期存在并不断增大 的速度差距是影响系统性能提高的瓶颈。造成i o 瓶颈的主要原因有两个: 一个是由于磁盘驱动器速度于主存速度、c p u 的处理速度差距很大;二是 由于数据库、知识库、翻译系统数据处理等作业对磁盘访问次数增多、随 机性强,因而构成通路阻塞。 在计算机技术加速发展和应用需求日盏高涨的今天,解决计算机i o 瓶颈问题便提到了尤为重要的地步,特澍是解决磁盘i o 瓶颈问题受到了 计算机研究工作者的广泛关注,磁盘阵列技术就是解决存储系统i o 瓶颈 问题的一种有效的方法。存储及其相关产品占整个服务器花费的比重达到 了7 0 8 0 ,企业已经由传统的根据服务器配置选择存储系统转变为根据存 储系统选择服务器产品。人们对存储产品及其服务需求的快速增长,无疑 给存储技术的进步和存储服务产业的发展提供了良好的契机。 本课题的研究工作就是基于现有的集成式磁盘阵列系统进一步提高性 能,满足用户日益高涨的存储要求。目前磁盘阵列主流产品采用s c s i 接口, 本课题从提高s c s i 接口通道传输速度入手,然后研究多用户应用环境中的 c a c h e 预取算法,为推进磁盘阵列的产品化进程做出贡献。 华中科技大学硕士学位论文 1 2 存储技术的国内外概况 1 2 ,l 磁盘阵列( r a i d ) 技术概况 r a i d 【2 “1 ( r e d u n d a n ta r r a yo fi n d e p e n d e n td i s k s ) 作为一秘数据保存手 段,它的作用是提供服务器中接入多个磁盘( 专指硬盘) 时,以磁盘阵列 方式组成一个超大容量、响应速度快、可靠性高的存储子系统。通过对数 据分块( s t r i p ) 和交叉存取( d e c l u s t e r ) 两项技术的使用【5 8 】,实现多磁盘 驱动器并行操作,以提高访问速度,缩短磁盘读写的平均排队与等待时间。 在2 0 世纪8 0 年代,由b e r k e l e y 的p a t t e r s o n 教授提出r a i d 概念,并 将r a i d 分为六个不同的分级,其后又加入了r a i d 分级6 。目前在工业界 又有许多新的r a i d 级别产生,其中被广泛采用的有采a i d 7 ,以及一些多 重r a i d 级别,如r a i d l 0 、r a i d 5 0 和r a i d 5 3 1 , 9 - 1 “。 1 r a i d o :分条 r a i d 0 是简单的、不带有校验的磁盘分条。本质上他并不是一个真正 的r a i d ,因为它并不提供任何形式的冗余2 1 。典型的r a i d 0 是使用独立 访问的方法将数据分条,然后发送给成员磁盘,而不是使用连锁访问方法。 它能实现多个i o 操作的同时并行处理,因为r a i d 0 不需要计算校验,因 而它是所有类型的阵列中吞吐量最大的。 2 r a i d l :镜像 r a i d l 又称镜像阵列。在镜像阵列中,磁盘分成一组镜像对,每个磁盘 上的数据在成镜像的磁盘上保持着完全一样的备份。r a i d t 具有很高的 可靠性,它可容忍多至n 2 个磁盘的失效。r a i d l 中的每个驱动器都有 自己独立的数据通道,支持并性读写,唯一的缺点是代价昂贵,系统需 要牺牲一半的i o 带宽和容量来获得较高的可靠性。 。 3 。r a i d 5 :分布式校验盘的独立访问 r a i d 5 是一种旋转奇偶校验独立存取的阵列方式。它没有固定的校验 盘,而是按照某种规则把奇偶校验信息均匀地分布在阵列所有的磁盘上, 所以每块磁盘上都既有数据信息也有校验信息,这一改变解决了争用校验 盘的问题。根据校验信息存放策略不同,r a i d 5 可分为左对称、左不对称、 右对称、右不对称、平面左对称等多种结构。r a i d 5 中多个盘可以并行读 写,是纠单错磁盘阵列中性能价格比较优的一种阵列结构。r a i d 5 既适用 华中科技大学硕士学位论文 于大数据量的操作,也适用于各种事务处理,它是一种快速、大容量和容 错分布合理的磁盘阵列。 4 r a i d 6 :使用双校验的独立访问 r a i d 6 是r a i d 5 的一个扩展,它使用二维校验技术,即在r a i d 5 的基础 上使用第二种独立的校验信息分布在各磁盘上的校验方案( 如图1 1 所示) 。 即使在双盘出错的情况下,仍能保证数据的完整性和有效性,因此,它有 很高的数据有效性和可靠性。数据和校验信息分块交叉存储在所有磁盘上, 多个磁盘可同时读写,i o 传输率较高。但每次写入数据时要对三个磁盘驱 动器( 一个数据盘和两个校验盘驱动器) 访问两次,因此写性能比r a i d 5 差。 通常的r a i d 6 是采用r s ( r e e d - s o l o m o n ) 码纠双错的结构。 圉凰离圉圉圉 倒撵纠陵剥艄矧 阳丽钉h 蕊卅隐雨嗣瀚瀚瀚瞄意蠲阳蕊们 圃圄圈固圄斟 :一j :一j :一j :一j :一一ji 一, 图1 1r a i d 6 :使用双校验的独立访问 9 e 5 r a i d 7 :非同步访问 图1 2r a i d 7 :非同步访问 r a i d 7 突破了以往r a i d 标准的技术架构,采用了非同步访问,极大 地减轻了数据写瓶颈,提高了i o 速度。所谓非同步访问,即r a i d 7 的每 个i o 入口都有一条专用的高速通道,作为数据或控制信息的流通路径, 因此可独立地控制自身系统中每个磁盘的数据存取。r a i d 7 的构造如图 1 2 。r a i d 7 自身带有智能化实时操作系统和用于存储管理的软件工具,可 完全独立予主机运行,不占用主机c p u 资源。r a i d 7 的实时操作系统对阵 列进行初始化,并安排阵列的所有数据传输,将它们转换到相应的物理磁 盘驱动器上。如果一个磁盘出现故障,操作系统会自动执行恢复操作,并 可管理备份磁盘的重建过程。r a i d 7 系统内置的实时操作系统还可对主机 发送过来的读写指令进行优化处理,将可能被读取的数据预先读入快速缓 华中科技大学硕士学位论文 存中,从而大大减少了磁头的转动次数,提高了i o 速度。但r a i d 7 的每 m b 成本相当高,并且对电源的要求很高,必须使用u p s 才能保证不至于 因为掉电而丢失c a c h e 中的数据。 6 r a i d l 0 :分块与镜像结合 r a i d1 0 是一种采用分块与镜像技术相结合的阵列,级别,它实际是 r a i d0 + r a i d l 。由于采用了分块技术,多个盘可以并行操作,镜像技术 则保证了高的容错能力,是一种比较理想的阵列级别。但由于采用了镜像 技术,也带来了写性能的降低和较高的容错代价。 7 r a i d 5 3 : r a i d 5 3 其实应该被称为“r a i d 0 3 ”,因为它是以r a i d3 阵列为分块 的r a i d 0 。r a i d 5 3 具备了r a i d 3 的容错能力,其高速数据传输率归功于 r a i d 3 ,对小块数据请求的高速i o 速率归功于r a i d 0 。但它实现起来非 常昂贵,所有磁盘必须主轴同步,按字节分块导致了格式化容量的低利用 率。 8 r a i d 5 0 : r a i d 5 0 是将多个磁盘驱动器组( s u p e r d r i v eg r o u p ) 中的数据分块的 一种大型阵列。r a i d 5 0 提供包括校验和数据的分块。r a i d 5 0 将数据分成 更小的块,然后将分成的块在r a i d 5 组上条带化。r a i d 5 0 是以r a i d 5 阵 列为分块的r a i d 0 ,它通过增加r a i d 0 改善r a i d 5 性能,特别是写性能,- 以及比单一r a i d 级别更好的容错性能。大多数r a i d 5 0 的特性与r a i d 5 3 相似,但是在事务处理环境中,r a i d 5 0 在小文件读写方面的性能优于 r a i d 5 3 。 r a i d 方案包括的这些不同级鄹并没有高低之分,它们表明了不同的设 计结构,这些设计结构有三个共同的特性:( 1 ) r a i d 是由一组物理磁盘驱 动器组成,操作系统把它看作是一个独立的逻辑驱动器;( 2 ) 数据分布存储 在物理驱动器阵列中:( 3 ) 使用冗余的磁盘容量保存奇偶校验信息,从而保 证当一个磁盘失败时,数据具有可恢复性( r a i d 0 除外) 。不同的r a i d 级 别中,第二个特性和第三个特性的细节不同;r a i d 0 不支持第三个特性。 1 2 2s c s i 存储接口技术的研究概况 小型计算机系统接1 2 1 1 3 1 ( s m a l lc o m p u t e rs y s t e m i n t e r f a c e ,s c s i ) 的 华中科技大学硕士学位论文 控制器带有自身的总线和指令集,是一种高性能的智能并行接口。其优点 是数传率高、可扩充性好、通用性好,支持多任务。在过去的二十中,s c s l 协议由8 - b “总线宽度,5 m b s 传输率的单端接口发展为1 6 - b i t 总线宽度, 3 2 0m b s 传输率的差分接口。一个1 6 - b i t 的s c s i 总线可以连接最多1 6 个 s c s i 设备,但其中每次只能有两个设备互相通信。s c s i 发展至今,已形成 s c s i 一1 至s c s i 一3 系列标准,下面介绍各个标准的概况。 s c s i - 1 :s c s i l 于1 9 8 3 年开始研究,1 9 8 6 年制定的s c s i 标准的主要 特点是:支持同步和异步的s c s i 设备;支持7 台8 位的s c s i 设备;传输 速率最大为5 m b s ;支持w o r m ( w r i t eo n c er e a dm a n y ) 设备。s c s i 1 适配器使用i s a 总线,它的最大连线长度为6 米,接头为5 0 针。但由于传 输速度太慢,现在已经不使用了。 s c s i 2 :s c s i 2 标准i t 4 1 是1 9 9 2 年制定的,它在s c s i 1 标准中加入以 下新功能:支持高密度s c s i 接头:支持c d r o m 和扫描仪;s c s i 总线具 有奇偶校验功能;支持f a s ts c s i 和w i d e s c s i ;支持t a g g e dq u e u i n g 功能。f a s ts c s i 是s c s i 2 的标准规格。w i d es c s i 是s c s i 2 附带制定 的加强规格。f a s ts c s i 可使s c s i 总线上的数据传输速度达到1 0 m b s 。 这个速度是s c s i 1 设备速度的两倍。绝大多数s c s i 硬盘都支持f a s ts c s i 标准。f a s ts c s i 设备要求数据同步传输。w i d es c s i 总线和f a s ts c s i 总线比较,在同一时间中可传输1 6 位的数据,这就使支持w i d es c s i 的 设备的数据传输速率提高到2 0 m b s 。并且w i d es c s i 总线上可同时支持8 位和1 6 位s c s i 设备。 s c s i 3 :与s c s i 2 相比,s c s i 3 能支持更多的计算机硬件种类,并 且数据传输率也更快。s c s i - 3 【l 5j 支持u l t r a s c s i ,s c s i - 3 也叫f a s t 一2 0 , 它定义怎样在8 位s c s i 总线上每秒传输2 0 m b 数据和在1 6 位w i d es c s i 总线上每秒传输4 0 m b 数据。支持光纤通道,提供高达1 0 0 m s 的传输率: 支持串行通道可串接1 6 3 2 台s c s i 设备。w i d e u l t r as c s i ( l v d ) 也可叫 u l t r a 2s c s i ( l v d ) ,l v d ( l o wv o l t a g ed i f f e l g n c e ) 代表低电压差分技术。 它的传输速率最大可达到8 0 m b s 。 1 9 9 9 年9 月中旬发布的u l t r a 3s c s i 和u l t r a l 6 0s c s i 标准,属于第5 代的s c s i 技术,它的性能可达到w i d eu l t r a 的4 倍,这一技术的传输速率 高达16 0 m b s ,这是由于u l t r a l 6 0s c s i 每个时钟周期发送的是两位数据而 不是一位,因而它比u l t r a 2s c s i 标准( 最高8 0 m b s ) 拥有更高的吞吐量, 华中科技大学硕士学位论丈 它提供的双边界时钟方案允许数据和时钟运行在4 0 0 h z 的频率。u l t r al6 0 s c s l 同时还集成了低压差分技术( l v d ) ,l v d 具有过去的单端技术降低 费用的特点,还能够抵抗商压差分技术设计中的信号噪声和低电位漂移。 s c s i 一4 :s c s i 一4 即u l t r a 3 2 0s c s i 继承了u l t r a l 6 0 的三大特性,其中 速度规格因为时钟频率的翻倍而提高到3 2 0 m b s 。封包传送已成为必备, q a s ( q u i c k a r t r i b i t i o na n ds e l e c t i o n ,快速仲裁与选择) 则仍是可选,此外还 增加了i s i ( i n t e r s y m b o l i n t e r f e r e n c e c o m p e n s a t i o n ,码间干扰) 补偿等8 个必备或可选项。如果还使用传统方式,u | t r a 3 2 0s c s i 的实际数据输出能 力上限也就是2 0 0 m b s 左右,使用封包传送之后则可以提高至3 0 0 m b s , 因此该特性必不可少;而对4 k b 以下的小块数据传输来说,传迭命令、等 待仲裁等额外开销占据的比例很大,在翦者已经得到解决的情况下,q a s 的应用可以避一步提高效率。薪增的8 项里面,用于管理及纠错酌只占一 半不到,其余5 项全都与改善传输质量有关,可见随着运行频率的攀升, 并行总线已经难堪其负。 存储接口采用s c s i 技术提高了存储设备的智能化和传输性能,以下是 s c s i 存储接口的一些主要特点 1 6 1 : 1 ,s c s i 总线允许连接多种计算机硬件设备。同一条s c s i 总线上可同 对串接c d ,r o m 、c d r 光盘刻录机、m o 磁光盘、s c s i 硬盘、磁带机等 设备。 2 s c s i 控制卡可同时串接多台s c s i 设备。一个s c s i 控制卡最多可 接3 2 台s c s l 设备,最少也可接7 台s c s i 设备。如果你的s c s i 控制卡支 特多通道,则可连接更多设备。 3 s c s i 的性能可塑性强,支持多任务环境,适用于多任务操作系统。 晟多可同时处理2 5 5 个任务。 4 s c s i 卡比i d e 接口有更快的数据传输率。尤其是在同时传输多组 数据时就更能显示威力。因此s c s i 设备适合图像处理,在图像处理领域中 直独占鳌头的a p p l e 公司的机型一律采用s c s i 接口。而且现在s c s i 硬盘采用低电压差分l v d 接口,还可使数据传输率提高到3 2 0 m s 。 5 s c s i 卡所支持的更高带宽能更好地平衡p c i 总线传输压力。 6 使用s c s i 可减少对c p u 的依赖,可提高系统整体性能。i d e 硬盘 般对c p u 的占用率为3 3 ,最高可达5 0 以上,但使用s c s i 硬盘,对 c p u 的占用率仅为4 一6 。 华中科技大学硕士学位论文 i 2 ,3 高速缓存管理技术的研究概况 c a c h e 技术是利用存取局部性原理,解决计算机系统中功能部件或模 块间速度不匹配的关键技术。在一个计算机系统中,不同层次有不同的 c a c h e , c a c h e 的性能取决于其参数和管理技术,主要包括c a c h e 地址映 射方法与c a c h e 替换策略。 实用的地址映象方法有许多种,主要的映象方式有以下几种 “9 ,2 4 : 1 全相联映象 此种地址映象是指主存中的任一块可以映象到c a c h e 中任一块位置。 当访问c a c h e 时,给出主存物理地址,用主存块号与目录表中的所有项进 行相联比较。如果匹配( 即命中) ,则从目录表中取出c a c h e 块号,并与字 号合并,形成访c a c h e 的地址,如果不匹配,则说明该块还没有装入c a c h e 。 2 直接映象 它是_ 种最简单的映象方法。主存中的每个块只能映象到c a c h e 中的 一个特定块。直接映象法的优点是所需硬件简单,访问c a c h e 与查表操作 可同时进行,因而提高了地址映象变换的速度,况且因无需相联存储表而 节约了成本。其缺点是块冲突率较高。当两个或两个以上常使用的块恰好 映象到同一c a c h e 块时,命中率显著下降。此外,如调入块在c a c h e 中的 位宣被占用时,仍造成失效,利用率依旧不高。 3 组相联映象 它是一种介于直接映象与全相联映象之间的折衷方案。将c a c h e 分为 s 组,每组有e = m s 块( m 为c a c h e 的容量) 。主存中的块i 与c a c h e 中的 组im o ds 的任一块,即主存块i 与c a c h e 中组的映象是直接映象,而与组 中块的映象为全相联映象,一般地,组相连映象比全相联映象成本要便宜 许多,而性能则接近全相联映象。 4 段相联映象 它是全相联映象的特例。映象方法是将主存与c a c h e 分别分为若干段, 段与段之间采用全相联映象;段内的块则采用直接映象。段相联映象的主 要优点是减少了相联存储器的容量,降低了映象变换的硬件成本。 替换策略和算法避c a c h e 的性能有很大的影响,为使c a c h e 中的数据 能经常被重用,从而减少对下一级的 临时存取,必须对c a c h e 中的数据及 华中科技大学硕士学位论文 时更换。以下是几种常见的替换算法 2 0 , 2 3 】: i 随机替换( r a n d o mr e p l a c e m e n t ,r r ) 算法 它的原理是随机选取和清除一个c a c h e 行,然后装入替换的数据。此 算法最易实现,但性能很差,特别是c a c h e 容量很小时。因为这种替换算 法完全没有利用存取的空间和时间的局部性。 2 先进先出( f i r s ti nf i r s to u t ,f i f o ) 算法 它的原理是:在c a c h e 中存留时间最长的c a c h e 行最先清除,然后调 入新的数据。它适用于具有最强空间局部性的负载 3 最近最少使用( l e a s tr e c e n t l yu s e d ,l r u ) 算法 它是最常用的替换算法,它充分利用了时阅的局部性,认为最近最少 使用的行在不久的将来也不会用到,从而舍弃之。因此,它保存的是最近 使用的数据。对于容量小的c a c h e ,实现此算法比较容易。但对容量大的 c a c h e ,l r u 算法的计算开销相当大。此外,l r u 算法只考虑了最近一次 存取后的时间,而没有考虑多c a c h e 行的存取频度,有失偏颇。 4 最少频度使用( l e a s tf r e q u e n t l yu s e d ,l f u ) 算法 此算法对所有行的使用频度计数,替换使用频度最小的行。它利用存 取记录预测后续存取的可能性,但是如果具有大的频度计数的行不再被存 取,则该行将长时间驻留,造成所谓的c a c h e 污染问题。由此导致缺失率 上升,降低了缓存性能。改进的方法是,对t 未被存取的行的频度每次减1 , 最后将被删除。 5 两级l r u ( d o u b l el r u ) 算法 它是l r u 算法的一个变种。它将c a c h e 分成两部分:试用部分和保护 部分,当数据取进c a c h e 时,先放在试用部分。当行命中时,便移入保护 部分。若保护部分需要更多的空间时,最近最少使用的行便被送回试用部 分。若试用部分需要更多的空间时,则清除其中最近最少使用的行。可见 被存取过多次的行得到了最高的优先级待遇。 以上的几种替换算法中最常用的是l r u 和f i f o 。两者相比,后者的 失效率比前者要高出1 2 左右,即l r u 算法更好一些。 1 3 课题主要研究工作 本课题研究的主要内容是研究磁盘阵列性能的优化技术,希望能从提 华中科技大学硕士学位论文 高主机i o 接口的传输速度和磁盘阵列预取磁盘数据的效率来优化磁盘阵 列i o 性能。课题研究主要从两个方面着手:一是在磁盘阵列中采用了高 速s c s i 存储接口;二是改进了磁盘阵列预取技术和缓存管理策略。随着数 据存储应用需求的提高,研究提高磁盘阵列性能的优化技术是一项具有很 大实用价值的工作。这项工作主要涉及以下几方面内容: 1 分析集成式磁盘阵列的硬件体系结构,并从分析磁盘阵列系统的 启动流程和运行时内部工作流程两方面来描述磁盘阵列系统控制软件 的结构和功能,指出磁盘阵列i o 瓶颈所在。 2 分析s c s i 一3 协议的实现特征,并着重研究s c s i 总线时序的状态 迁移以及实现s c s i 3 协议的消息、命令和状态;在此基础上研究在实 时操作系统下u l t r a l 6 0s c s i 的高速存储接口设备驱动程序的实现,达 到提高主机接口存储通道的传输速度的目的。 3 在与常规磁盘阵列c a c h e 预取技术比较分析的基础上,提出并实 现了多用户有规律的随机数据请求条件下的c a c h e 智能预取算法和缓存 调度的策略。 华中科技大学硕士学位论文 2 磁盘阵列系统的组成 本章分析了一种集成式磁盘阵列系统的硬件组成和控制软件的功能 和结构。从磁盘阵列子系统和主机两方面详细介绍了r a i d 系统软件的启 动流程和初始化过程,讨论了磁盘阵列控制软件处理命令请求的工作流 程,分析了提高磁盘阵列i 0 性能的可能环节。 2 1 磁盘阵列的硬件组成 阵列控制器可以用多种方式构造,一种方式是设计成直接插入计算机 的总线槽口的磁盘阵列卡,磁盘阵列卡的易于插入服务器内形成一个整 体。另一种方式是集成式的r a i d 系统,采用通用计算机部件,包括主板、 s c s i 接口适配卡等组成r a i d 控制器,与磁盘驱动器、冠余电源等形成独 立的r a i d 系统。我们构造了一个集成式的r a i d 系统一h u s t r a i d 3 0 0 0 s c s i 磁盘阵列,r a i d 系统通过主机接口通道与主机连接,将自己虚拟成 个磁盘驱动器,但具有许多单驱动器所不具各的功能。 h u s t r a i d 3 0 0 0s c s i 磁盘阵列的硬件体系结构如图2 。1 所示。 图2 1h u s t - r a i d 3 0 0 0 磁盘阵列的硬件组成 它使用p e n t i u m i i ip c 工控机主板,将s c s i 适配卡和特殊功能部件集 成到一起。主板上有六个6 4 位p c i 插槽,分别是“位3 3 m h z 5 伏和6 4 位6 6 m h z 3 3 伏p c i 总线。图2 1 中l s l 5 3 c 1 0 1 0 6 6 为l s i l o g i c 公司的符 华中科技大学硕士学位论文 合u l t r a l 6 0s c s i 标准的l s l 5 3 c 10 x x 系列的p c i s c s i 适配器,直接插在 主机板的p c i 插槽上。其中连接磁盘驱动器的l s l 5 3 c 1 0 1 0s c s i 适配器, 称之为串控制器,也称m a s t e r 控制器,每个串控制器可连接多达15 个s c s i 接口的硬盘。用于和主机进行通讯的l s l 5 3 c 1 0 1 0 适配器,称之为主机接 口通道适配器,也称s l a v e 控制器。阵列控制卡插在p c i 6 4 底板的p i c m g 插槽上,并通过f l a s h 盘固化阵列控制软件。按照应用需求、主板规格以 及p c i 总线的限制,h u s t r a i d 3 0 0 0 一般配置最多三个串控制器和一个主 机接口通道控制器。 阵列控制器系统控制软件包括许多模块,用于处理r a i d 系统的配置、 命令分解、数据的分块与重组、c a c h e 管理、校验计算、数据的重构与恢 复等功能。c a c h e b u f f e r 用来缓冲数据,主要是存放“读”来命中时从磁 盘读取的数据。每个磁盘在主存中都分配了定大小的c a c h e 。x o r 单元 负责对数据进行校验计算。数据分块单元负责把从主机来的数据按数据分 块大小进行分解,然后放入对应磁盘的“写”缓冲;数据重组单元负责组 合各磁盘“读”数据缓冲区内的数据,组成最后返回给主机的数据。这些 所有部件的操作都由控制软件负责控制。 对于主机而言,阵列通过一个标准的s c s i 接口与之相连,整个磁盘阵 列相当于一个容量很大的s c s i 硬盘。因此,无论主机上使甩何种操作系统, 只要它能够支持s c s i 硬盘,就能访问这个磁盘阵列系统。 - 这种采用系统集成的方式比专用板卡方式有很多优越的地方【2 1 1 。可扩 展性好:一方面作为串控制器的s c s i 适配器在主机板上p c i 插槽范围内 【j 以增加,在普通的p c 机板上就可以达到6 串;另一方面每个s c s i 适配 器可以连接多达1 5 个s c s i 磁盘,这样单台阵列的容量就是相当可观的, 而且我们还可以将图中的s c s i 磁盘换成阵列,这样容量可进一步增加。 维护升级方便:我们使用的都是计算机市场上通用的计算机部件,出现问 题可以及时修复更换。而且随着这些部件的更新换代,阵列的性能也会随 着提高。 当然,这种结构也有其不足之处,具体表现在某些共享的功能部件由 于只能在独占方式下工作而成为系统的瓶颈,如系统中的r a m ,由于被 c p u 、主从通道所共用,而同一个时间段内只能为他们一个所访问,这样 就限制了系统的并行性;还有p c i 总线带宽有限,在标准p c i 下,主机总 线最大速率是6 6 m h z ,6 4 位的p c i 总线上最大传输率达到5 3 3 m b s ,这也 华中科技大学硕士学位论文 对系统内接的i o 设备的数目造成限制,不过可以采用更高带宽的p c i x 来解决。 2 2 磁盘阵列系统的启动流程 磁盘阵列系统分为主机和磁盘阵列子系统两个部分。它的的启动过程 也相应地分为两个阶段。第一个阶段是磁盘阵列子系统的初始化启动过程, 该启动过程包括磁盘阵列嵌入式实时操作系统内核的加载和初始化,磁盘 阵列内存缓冲区的创建和初始化,s c s i 控制器的初始化,磁盘驱动器的初 始化。第二个阶段是主机的启动过程,也就是在磁盘阵列启动完成后,主 机系统程序识别并配置磁盘阵列予系统的过程,这个过程包括主机s c s i 适配卡b i o s 程序识别磁盘阵列子系统,以及主机操作系统识别并初始化 磁盘阵列子系统。下面分别介绍磁盘阵列子系统的启动流程和主机的启动 流程。 2 2 1 磁盘阵列予系统启动流程 首先是操作系统应用程序的初始化。磁盘阵列子系统加电后,执行启 动代码,加载操作系统映像,激活并初始化操作系统内核。首先复位处理 器,执行最少而必要的硬件初始化,完成内核启动之前的初始化。应用程 序对阵列的相关参数进行设置,包括串数、磁盘数、阵列级别、分块大小 等等:接着为每一个串( m a s t e r ) 仓u 建一个任务,并初始化任务所对应的信号 灯;然后给磁盘阵列的c a c h e b u f f e r 分配内存空间并初始化。 接着是b s p ( b o a r d s u p p o r t e dp a c k a g e ) 驱动程序的安装及初始化。为 一个目标系统提供支持的软件被称作一个b s p 。它是一个函数集,包括: 1 在系统b o o t 期间的目标系统硬件初始化 2 与目标系统上的设备的接口,这些设备包括定时器芯片、以太网控 制器芯片,串口和s c s i 控制器芯片( 即这些设备的驱动程序) 。 下面说明s c s i 控制器驱动程序的安装过程,这包括s c s i 控制器配置 文件( m a s t e r 和s l a v e ) 、s c s i 控制器上层和底层驱动程序( m a s t e r 和s l a v e ) 以及相应的头文件。第一步是获取硬件接口参数,包括内存映射地址、i o 端口和系统中断控制器的输入( i r q ) 。p c i 总线是一种即插即用的总线,在 华中科技大学硕士学位论文 = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = :一:;二:一 b i o s 和操作系统的支持下,能够自动地为设备分配合适的内存映射地址、 i o 端口和系统中断控制器的输入。当然,由于硬件的接口方式不同,获 取硬件接口参数的方法也不同,对于i s a 总线来说,这些接口参数是预先 设置好的,可以直接使用。第二步就是将中断服务程序和获取到的控制器 中断向量连接起来。 s c s i 控制器的初始化过程是在b s p 驱动程序中的初始化例程c h i p i n i t f l 中实现的。p c i 接口( 包括p c i 配置寄存器) 和p c i t o s c s i 控制器是 l s l 5 3 c 1 0 x x 系列s c s i 控制器最重要的组成部分。主处理器通过p c i 配 置空间寄存器对l s l 5 3 c 1 0 1 0 进行初始化。在初始化时,每一个p c i 设备 会被指定一个i o 基址和一个内存基址,通过它们可以访问设备的操作寄 存器。寄存器的设置是设备驱动程序设计开发中非常重要的环节。p c it o s c s i 控制器中有两类寄存器,它们是p c i 配置寄存器和s c s i 寄存器,通 过p c i 配置寄存器可以读取或者修改p c i 设备的设备信息( 生产厂商、设 备i d 、延时计时器等) ,并且获得s c s i 寄存器在i 0 空间或内存空间中的 映射基址。在s c s i 命令执行过程中,需要通过s c s i 寄存器实现对 s c s i d m a 核心的操作控制和状态读写。 应用程序 b s p 驱动程序 p c i 鲁l 戋 厂、 l s l 5 3 c 1 0 x x 控帝u 嚣 、j , 卜 q r t 曲e # 、磁盘 0 d i s k j(diskj驱动 7、 一 器 图2 3 磁盘阵列子

温馨提示

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

评论

0/150

提交评论