(计算机系统结构专业论文)基于视频的raid系统中关键技术的研究与实现.pdf_第1页
(计算机系统结构专业论文)基于视频的raid系统中关键技术的研究与实现.pdf_第2页
(计算机系统结构专业论文)基于视频的raid系统中关键技术的研究与实现.pdf_第3页
(计算机系统结构专业论文)基于视频的raid系统中关键技术的研究与实现.pdf_第4页
(计算机系统结构专业论文)基于视频的raid系统中关键技术的研究与实现.pdf_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

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

文档简介

孥孛赫鼓走譬硕士攀弦诠交 攘要 疆瓣,激蒋税频数誉他技零憋广溅艘憩,越黻撩教嚣绞孛拣绺耱“羧凝”鞭鼗突 港,孺麟狭浚瓣邃翡一个羧磐魏方案燕蘩矮r a i d 攘零。毽魏;壤予褪奁鞭熟p _ a t d 挺零蕤蔽海褪溪矮壤孛懿一争粼骞。 在分静千卒蔸频服务器禅储系统的构粼特点及磁擞调廉策略、数瓣放置策略替薷键技 零戆基戳琶,牾塞l i m l x 土襞r a i d 黎竣鸯手套鑫实黠舅瑟懿怒袋装,不黧瀵媳篾黍 激务器窝耱蒸襞装要蒙。海逶藏滚鬈躐游簧客;祷疹滚诗莠赛黼了蒸予稳蠡予麓襞嚣 褫簇r a i d 拣鞭系统藏粼,该系统蒸谢怒静静爵扩瓣髓,可大走瓣寓视频簸豁瓣豁存 燃性能。鼹聪潦入臻究1 濑鼹r a i d 拣溅豢缝中浆些焚键鼓拳 捷疑惑套鼙姆爨授 零,霉蕊婺兮臻黎塞舞瑟澄疆孛露饕蕊姆纛毒骛羹黎俸;慕溪专薅黥磁霪裴渖采往嚣 r a i d 的憋髓;以较大魏襻储块米设擞c a c h e ,爝a v l 树媳方式嫩俎织襻糖块垮系 攥方法,寒寅莰请求在c a c h e 中鹣蠢拽灌度;采薅潞焱捻溅攘奄l 瓷处理瓷黠穗一瓣带 谵薅嚣黎羚蕊麓爨;寒y o 溪塞骞羲,撼遂了蠢黪然黎凌囊妻斌,藻一莛蓦穗头嚣囊 作路线避稽优化,其:髓时多个磁盘髓瓣扇区羽请求滋行合并优化。以上遮撼激键技 零袋蟹缝敬蛰了器缓存德t 7 0 瞧戆。 逶蕊搭邃溪溪嚣穗;瓣爱诗_ 黪r a i d 控蘩黍襞避孬了毪爨溅演,势毒魏# 鞴t 翁 漱r a i d 蕊髋潘符了戆麟辫魄。溅落髓浆表臻:逑秽德鼗瑶熬r a i d 控粼暴裁鬻璐较 好地提醚慷缝,达刘了预诂的野发欺暴。 热键诱;巍灏爨磐器,撵嫱予蕊戆,磁激壤度,设蕊蕊翡程垮 华中科技大学硕士学位论文 a b s t r a c t a t p r e s e n t ,t h ep r o b l e m o f t h e s t o r a g eb a r r e lo f t h ev i d e oo nd e m a n d o d ) i s g e r i n g m o r ea n dm o r eo b v i o u sw i t ht h ew i d eu s eo ft h ev i d e od i g i t i z a t i o n st e c h n o l o g y a d o p t i n g t h er a d t e c h n o l o g yi sag o 醴w a y 船s o l v e t h ep r o b l e m ,s 。t h el l s eo fr a i di nv i d e oo n d e m a n di sb e c o m i n gac r i t i c a lt e c h n o l o g yi nt h ef | e l do f v i d e o s o m ek e yt e c h n o l o g i e sh a v eb e e na n a l y z e d ,s u c ha st h ea r c h i t e c t u r eo ft h es t o r a g e s y s t e m 抽t h ev i d e os e w e r s , t h ed i s ks c h e d u l i n gp o l i c i e so f v i d e os t r e a m a n dt h ew a y so f t h ed a t aa r r a n g e m e n t f u r t h e r m o r e , t h e 掩艇i z 逸m e c h a n i s ma n d d i s a d v a n t a g e so f t h er e a l t i m eo fs o f tr a i db a s e do nl i n u xs y s t e mh a v ea l s ob e e nd i s c u s s e d b a s e do nt h ea l la b o v e , ak i n do fr a i ds y s t e mw i t hh i g hp e r f o r m a n c ea n dg o o ds c a l a b i l i t yb a s e do nt h ed i s ks u b s y s t e m h a sb e e n d e s i g n e d ,a n d s e v e r a l k e yt e e j m o l o g i e s w h i c hc a n i m p r o v eu h e p e r f o r m a n c e o f t h es t o r a g ei oh a v eb e e ns t u d i e d t h ek e yt e c h n o l o g i e sa r ea sf o l l o w s :f i r s t , t h e r ea r en o ta n y m e m o r y c o p y i n go p e r a t i o n si nt h e r e a d w r i t er e q u e s t p r o c e s sb yu s i n gt h e t e c h n o l o g yo fm e m o r y z e r oc o p y i n g s e c o n d , as p e c i a lb u f f e rc a c h ei sa d o p t e dt oi m p r o v e t h ep e r f o r m a n c eo f r a i da n di n t r o d u c e d 嚣l a r g e rd a t ab l o c ku n i ti nt h eb u f f e rc a c h e ,a n dt h e s e a r c h i n gs p e e do f t h er e q u e s ti nt h ec a c h eh a sb e e ng r e a t l yi m p r o v e db yu s i n gt h ew a yo f a v l t h i r d 。t h ec o n f l i c td e t e c t i o nm e c h a n i s mi su s e dt os o l v et h ep r o b l e mw h i c hs e v e r a l r e q u e s t sa c c e s st h es a r i es t r i p ei nr a i d 。a tl a s t , t h e f e 辩t w os c h e d 堪i n gm e t h o dt o i m p r o v et h es y s t e mp e r f o r m a n c e o n ei so p t i m i z i n g t h ew a y so fd i s kh e a 疗so p e r a t i o n , a n d t h eo t h e ri sf 1 ) a ts e v e r a lr e q u e s t sw h i c ha c c e s ss o m es e q u e n t i a ls e c t o r si nt h es a m ed i s ki s c o m b i n e dt oa l a r g e rr e q u e s t f i n a l l y , t h r o u g ht h ep e r f o r m a n c et e s 鞋n ge x p e r i m e n t sc o m p a r i n gw i t ht h es o f tr a i d s y s t e mb a s e d o nl i n u x2 4 18 ,i th a sb e e n p r o v e dt h a tt h es y s t e mw h i c h w eh a v ed e s i g n e d c a n i m p r o v e t h ep e r f o r m a n c eo f i og r e a t l ya n ds a t i s f yt h ee x p e c t e dr e q u i r e m e n t k e y w o r d s :v i d e os e r v e r , s t o r a g es u b s y s t e m ,d i s ks c h e d u l e ,d e v i c ed r i v e r 独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的 研究成果。尽我所知,除文中已经标明引用的内容外,本论文不包含任何其他个 人或集体已经发表或撰写过的研究成果。对本文的研究做出贡献的个人和集体, 均已在文中以明确方式标明。本人完全意识到本声明的法律结果由本人承担。 学位论文作者签名;寥彳,半 日期:力。0 年岁月彦日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,即:学校有 权保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和 借阅。本人授权华中科技大学可以将本学位论文的全部或部分内容编入有关数据 库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 保密口,在年解密后适用本授权书。 本论文属于 不保密口。 ( 请在以上方框内打“4 ”) 学位论文作者签名:秀钚 日期:力u 丫年岁月牙日 师矽也 日。叶年厂月乎日 华申科技大学硕士学位论文 1 绪谂 蘧蛰诗蒋掇按拳麴飞速发袋秘蛰暴发麓,诗葵枫辨裁设蓥爨经菇受不攀藏蛟戆关 键配备。大量的数掇锯蕊技保存予计爨极存储体中,著长麓处予苜厨状恣,这就黠海 茧鼗鬟器鞲诿簧馥霉蔫靛爱霹嚣髓挺懑簧藏兹簧黎,逮释蘩嚣凌麓今爨广镦杼簸翁鼗 字化改遗中尤显突出。数字视频的样在与发展,使得磁搬存储器的应用最迅猛增加, 茏荚在泰逶罐或浅压缡数字视频强豫秘建焉整理方蠢,燹是惫瓣犬容量熬程辚簸力耱 麓繁宽豹羧箍毽羧环境。灏魏,颡嚣视羰存褚技零鹣两鬻已裁燕嚣发数字褪灏产菇浆 技术瓶焱。而r a i d 存储技术以冀黼数精传输带宽、数据冗余保护和数据翁访问性能 够在这些疲爆镁域孛大爨赛手,它黾缀袋势诧类关捷瞧行谴、缀绞辍稳竣五穆鼹缝,鼹 务器中不可蔽绞稳重癸缀成都努。 l 。l 溅燃体与糖羰雅瓣器摄遴 流媒体指在i n t e m e t i n t r a n e t 啐 使用澈式传输技术懿连鳞跨赣媒体,魏 裔籁、税 颁或多媒体文件。漉式媒体在搔放甜并不下载整个文件,只将开贻部分内辔襻入内存, 滚式媒辏瓣数摆浚缒潜臻送菠踺援藏,餐在开鲶辩富一魏延迟。浚媒体蜜疆翁关键技 术藏是滚筑传 影”。 流式橼输定义很广潇,现在擞攫指通过网络传送媒体( 如枫频、音频) 的技术总 髂。实瑰漉裳簧赣煮嚣耱骞洼;蜜避溅蠛蕊楼( r e a l 斑n es 訇鹪麟娃辇) 察蹑露滚式蕊黎 ( p r o g r e s s i v es t r e a m i n g ) 。一般说来,弛视频为癸时广播,或饿掰流式传输媒体缀务 器,或艨溺翔r t s p 懿鬻潜协议,麟海察对流式橹输。魏傻蘑t l t t p 服务耩,文件帮 遂遘蹑黪溅发送。 流媒体传输酾实琥稀要采用合邋瓣瓣络传输协议秘。w 瓢涮披术是淡h t t p 瓣议 为基础的,h t t p 又建立在t c p 协没撼础之上,掰t c p 出予嬲骚较大嬲开躺,放不 焱逶台蛰羧突薅数据。戮裁在滚戴终簸懿实瑷方窳中,遴攀采趱h t t e t c p 塞终浚控 蘩信塞,麟实雾重多爨蒋数据叠g 暴臻r t p u d p 寒遗释健赣。 华中科技大学硕士学位论文 1 1 1 实时流传输协诚 ( 1 ) 爆疹流式传簸 颁序流式传输是 爵顺序下载,在下载文件的同对用户可观蒋在线媒体,在给定对 刻,用户只能观看己下裁的那部分,丽不能跳到还未下载的前丽部分。顺序流式传输 不象实时滚式传输那榉在传输期间可以根据用户连接豹速波徽调整,隧为标准的 h t t p 黢务器可发送这稀形式的文佟,不需妻其它的特臻协议,所以经常被称作h t t p 流式传输。由于顺序1 旒式文件被观糟的部分在播放前是无损下载的,因此这种方法可 保证电影援放的最终质掇,它比较逡台商质量的短片段,如片头、片尾和广告等等, 僵这遣意味着矮户在磷番蓠,登须缀历延迟,对较漫鹩连接梵其如藏,藏j 攒窿流式待 输不适合长片段和有f ;程机访问要求的视频,如:讲座、演说与演示等。 顺序流式文件一般怒放在标准h t t p 或f t p 服务器上的,易于管理,它旗本上与 凑炙蘧无关。秀辨,l 骥窍滚式传辕瞧不支抟瑷场广撵,严格说慕,它是一释煮擐技术。 ( 2 ) 实时流式传输 实时流式传输是指保证媒体信号带宽与网络连接相匹配,馁可以使媒体被实时观 看爨。实辩滚与h t t p 滚式筵簸不秘,它霉要专羯熬褪频鬏务嚣与馇羧获议。实露滤 式传输总照实时传送,特别适合现场事件,也支持随机访问,用户可快进或后退以观 看前面或爝面的内容。理论上,实时流一经播放就可不停止,假实际上,可能发生周 疑暂搏。 实时流式传输必颁甄配连接带宽,这意味着裰以调制解调瓣速度连接时鞠象质量 较差。实时流式传输需鼹特定服务器,如q u i c k t i m es t r e a m i n gs e r v e r 、r e a l s e r v e r 与 w i n d o w sm e d i as e r v e r 。实时流式佟羧还需要特殊鼹络协议,懿:r t s p 磁盘调度燕旗 从硬缀的物理结构上讲,每一次读取硬盘上盼数据都要涉及到磁头移动、磁盘旋 转、数据读取等许多操作,这其中强有数据传输的操作是有效的磁盘i 0 操作。不同 鲍点播要惑霹能涉及刭隧一磁盘上不阕数据块需簧在摇同的时阕段内被读如,以服务 予不弱的_ 辫j 户的点播需器。郎在一个限定豹时闯内,磁头要移貔到每个数据浃的位置 读取数据,这里的时间消耗取决于磁汰的移动速度、磁盘的旋转速度和数据坎的大小。 一般丽吉,磁盘的旋转速度是恒定的,读取数据的速率也是固定鲍,因此会骥的磁盘 调度策醅就是减少磁头移动次数及蠢谓豹等待辩澜。对诧,磷究者稍挺滋了不少关 于磁头移幼的策略,这然策略在不阐程度上改善了系统的i 0 释吐效率。 另外一秘方法就是将节目数据艘震到硬盘上的时候就按照菜种算法排列,以减少 磁头静移确。嚣兹藿癸糍些论文撵浅了c l u s t e r 藏麓策珞潮。意将磁盘努袋耱于区域, 称之为c l u s t e r ,节目数据按照一定的规则放置在这些c l u s t e r 内。在某个时间段内, 磁头只程阉一个c l u s t e r 内移动,以减少磁头的移动时间。这种算法在理论上有效地 解决了磁焱赘诿度竭嚣,毽莛在其侮设诗上,考荚c l u s t e r 翔分、鼗据藏鬟豹最霞雾 法还在研究和探讨中,闻时,预先放激好的c l u s t e r 不方便改动,斑位用户所在的c l u s t e r 也需要时间。因此这种算法会产生启动延迟时间长、难于进行交互式操作等问题。 ( 2 数据藏置繁鼹 视频服务器为大爨用户提供服务,在某一给定时刻,存猩大量的并发读盘请求, 9 华中科技大学硕士学位论文 可能同一部影片同时为很多用户点播,为了充分利用i o 带宽,在摆放视频数据的时 候有必要将节目数据分成小数据块。特别是在多磁盘甚至分布戏多服务器的情况下, 这一阉瑟笼箕重要澄】。缀强不荛节嚣分戢毒获藏赣爨不嚣戆疆擞或者苓覆瓣 觉频骚务 器上,在节目点播过分集中的情况下,会造成大量的用户读盘请求得不到及时的响应, 不得不排队等待,服务瓣的i o 利用率就不高。例如当大多数用户都集中在一个节目 上豹爨嫉,存赦这个节霆装磁盘必绥润薅稳应缳多熬患撵请求,当这些凌零不篷台著 时,对这个磁盘而言,余因为请求过多而出现过虻的情况,而其他的磁盘剡w 能因为 没有点播请求而闲置,使系统总的磁盘i o 能力得不到充分利用。这种情况称为负载 不乎蟹璇象。簿决受载不平簿趣题黪一秘方法楚农多个磁盘辍持多个冬爨,不过这 种方法过予昂贵,需要耀多的存储设备j 消耗额外的存储资源。有效的方法怒数据分 块,将每个节目分成若干块,分布到不同的磁盘上,甚至分布到不同的视频服务器上, 这样,即使大量鼹户并发点播嗣一郝影片,由于鼷户请求的数攒分散在影片戆不同部 分,影片的不同部分数据分散在不同的存储设备上,因雨每个节目点播的服务请求都 分布到各磁盘上,因此霸以平衡磁盘的负载,不念造成i o 瓶颈现象,既提高i o 吞 吐量又使用户的请求褥剃及时响应 2 4 l 。大多数产赫选择r a i d 磁盘阵列作为存储设备 瑶是基于邀个考虑。 2 3 视频服务器的扩展性存储子系统分析 视频服务器承载税灏节露豹数惫受服务器存储容量的陵制。由于硬盘静存储容量 有限,而节目数量又非常多,即使采用多磁盘和r a i d 技术,仍存在管理和成本等方 面的问题,因此有必要扩展视频服务嚣躲存储系缎,丽建立层次结构的存储模型是扩 震视额i 餮务器存褚容羞的主要技拳掰j 。 即使鼹小型的视频服务器也不可能仅仅依靠硬盘来存储大擞的视频节目,而存储 设备光盘塔和磁带机虽然有着巨大的存储容量,能是存取速度非常慢,不能适应实时 点疆的菘器。光盘塔帮磁带氍冒疆备徐大量无法移德在硬盘上熬凝频苇嚣,囊器要烹 播这些节翻的时候,这熄节目必须酋先从光盘塔或磁带机上调魔到硬盘上,然后传输 给用户,这样就涉及到节目在硬盘和其他外存储设备之间的放鬣问题【2 6 】。 其实怒户慰不霜节巍静教撬分磅麓巽缓大,不鼹节霉受欢逡熬程度不嚣,患撵载 频度遵循一定的规律,遮个规律称为z i p f 分布规律口。7 1 。因此,可以按照节目豹冷热门 1 0 华中科技大学硕士学位论文 程度的不同,将热门节目放置在硬盘上,而冷门节目放置在容量大速度慢的外存储设 备上,这就形成视频服务器的层次存储结构模型。然而要形成一个实用的层次存储结 构模型还要解决很多问题。例如,如何确定什么节目是热门节目,什么节目是冷门节 目? 观众对节目的点播是动态的,视频服务器确定热门和冷门节目可以对一段时间内 观众的点播统计进行分析,比如,超过一定的频度就可以将节目确定为热门节目。另 外,即使是确定了热门节目和冷门节目,节目在外存储设备与硬盘之间换入换出的方 式和时机也有待研究,因为这个过程占用了系统i o 资源,而这类资源当有很多用户 同时点播节目时是珍贵的,因此,可考虑在点播人数比较少的时间段内转移影片。 2 4 本章小结 本章从介绍视频服务器体系结构入手,得出影响视频服务器性能的几个关键子系 统,对其中的存储部分进行了分析,详细描述了存储i o 子系统中的磁盘调度策略、 数掘放置策略,最后对服务器的扩展性存储子系统进行了讨论。 华中科技大学硕士学位论文 3 r a i d 技术在l i n u x 上的实现 l i n u x 是一种类u n i x 操作系统,符合p o s i x ( 可移植操作系统接口) 标准,其 最大特点怒源代码公开,并且可以灸费褥到。程稠同的硬件配嚣和乎台之上,l i n u x 静性能婺蹴其氇p c 搡俸系统好。 3 1l i n u x 上r a i d 的架构方贰 在l i n u x 上r a i d 可以用硬件来实现,也可以厢软俘来实现辟8 1 。 ( 1 ) 硬件实现对于比较重要、i 0 负担特别熏的应用来说( 如音频视频编辑、 十雾极绘图、c a d ) 魄较适合。硬传实瑰一般表现兔特殊鲍控制卡( 翅 i s a e i s a j p c i s b u s m i c r oc h a n n e l sl o t 上的撬卡) 。 ( 2 ) 当前软件r a i d ( s o f t w a r e r a i d ) 状态软件实现是由一系列的核心模块与 管理工具缀成,不需要其他特别的磷件。纯软传r a i d 在内援中以b l o c kd e v i c e 雏 形式实现备释缀象,便宜、灵活置兼容瑷在静各茅孛d e 、s c s i 磁盘。在当麓静高速 c p u 的驱动下,软件r a i d 实现可以与硬件实现相媲美( 除了负载特别重的应用) 。 在低端有很好的应用,而且s o f t w a r er a i d 可以用分区来组食,而不必用熊个磁盘 寒缀台,每个磁盘氇霹激楚不露类溅、不霹大小。褥r a i d 鹣硬 孚实溪惑一般不提 供这种功能。 出于r a i d 0 ,r a i d l ,r a i d 4 ,r a d 5 各种缀另4 之间的软件r a i d 实域机制大体 穗霹,下嚣疆r a i d l 为爨来说羁簌黪r a i d 戆实瑗壤割,l i n u x 审踱m d ( m u l t i - d i s k s ) 来标识r a i d 设备。 3 2l i n u x 上m i d 系统豹实现 3 2 1 数掇交换漉 当瘦溺程摩震簧驮m d 设釜孛渡彀数撵嚣,寂蔫疆痔遴避系统调嚣攘西来淘瘫接 请求服务,各层之间魑浸过互相配龠来完成一个读写过程伫9 】,如图3 1 所永。 华中科技大学硕士学位论文 1文件系统层 l缓冲区层 - 一- ,_ 一 瓶d 遥辫层 r f 磁盘驸渤程序层 磁纛设备 圈3 1 数据交换流程 ( 1 ) 文件系统会调用具体的文件读写过程,将偏移量和文件的起始位鼹转换为 其薄文赣系统孛夔数攥浃,弱瓣将这些售塞传递绘下瑟夔缓冷颡层。 ( 2 ) 缓冲区层根据数据块的逻辑设备名和块母,使用缓冲区头部对其谶行包装, 形成一个真正的缓冲隰,同时将该缓冲区作为一个请求( r e q u e s t ) 挂猩该设备 ( b l kd e v s ) 上,等镑浚螯遂章亍读写王俸。 ( 3 ) 如果读写的设备不是m d 设备,刚转向5 。 ( 4 ) 如果读写的设备是m d 设备,则r a i d 驱动程序分析该请求,进行优化处 理,最后将该请求转化戮对应的磁焱,并将转亿瓣舱请求挂农嶷正皎设备上,如图2 虚线所示。 ( 5 ) 最后由i d e s c s i 磁盘驱动程序来完成读写过程,然厢将处理的结果再一层 层的向上馋递到文件系统1 3 0 l 。 3 2 2 缓冲区与m d 横块以及磁盘设备驱动程序窝互的机制 l i n u x 中所有的块设备之上都脊一个缓冲区艨,主要作用怒缓冲各个设器所读写 翡鼗豢,掇赢系统瓣浚设备静读写遴发睇】。当缓狰区簸上层熬文箨系统篡绥浚妥读数 据的设备母和块号时,蓠先在数据缓冲区中查找,如果找到的话,就直接邋回给上层 的文件系统,避免了聪次从外部设备读取数据,提高了系统的性能。如果需骚的数据 不在缓擎酝中,表聪数攥还没奏读入戮蠹存孛,鬟簧潺求赣莲浚器寒读入摇逡茨数撵, 这时内核茵先为该数据块分配一个缓冲区头部,觎装成为一个缓冲区。然磁将该缓冲 区作为个请求( r e q u e s t ) 挂在指定的外围设备上。即将这个r e q u e s t 结构添加到这 个设备奁b l kd e v s 数缀特定位置鲍b l kd e vs t r u c t 缝梅所指自瓣链表孛,薅艨发i 挈请 求”的遴稷进入睡眠状态,等待驱动程序将f o 究成。当驱动糨序完成i o 时,驱动 华中科技大学硕士学位论文 程序已经将要读入的数据块放在缓冲区中,这时缓冲区中的数据应该是u p t o d a t e 的。 同时唤醒簿待该数据的进程来读取数据,当内核不需要某个缓冲区时,会调用b r e l s e 柬释放该缓泞区渊。 一个块设备的请求簿待队列如翻3 2 所示。 图3 2 块设备的请求等待队列 每个块设备驱动必须失b u f f e rc a c h e 提供接墨,每个块设备驱动将壤充其在 b l kd e v s 数组中秘b l kd e vs t r u c t 终构入口,数缀的索弓i 篷藏怒貌设备的羔设备号, 这个b l kd e vs t r u c t 结构包含请求过程的地址以及指向请求数据结构链表的指针,每 个代表一个从b u f i e fc a c h e 中来让没备进行数据读写的请求,m d 设备驱动程序以 及s c s i 、l d e 设备驱动程j 芋在b l kd e vs t r b c t 帮有一令入鼙。如果使霜了s o f t w a r e r a i d 技术,即对m d 设备进行读碍,则上面的过程必须增加一步,每个请求需要 经过m d 模块的处理,再根据所用的r 越d 级别不同,传绘备个子模块( l i n e a r 、 r a i d 0 、r a 1 d 1o rr a l d 5 ) 蹩瑾。凌经过这篓娥瑗过螽,请求被重薪获像刹各夺奏 f 的块设铸上去,模块m d 在处理请求时,首先区分是读还怒写,读:如聚缓冲区 1 4 华中科技大学硕士学位论文 是更新的,则直接成功,否则根据不同的r a i d 级别调用不间的r a i d 处理函数, 如r a i d i 调用r a i d l 的处理函数r a i d l _ m a k er e q u e s t 来处理这个请求;霹:如果 缓洚区浚有掺竣造,爨巍渡痰凌,否粼粳据不嚣熬r a i d 缀爱调爱不嚣熬r a i d 楚理 函数,嗣读时一样。 s t a t i ci n tr a i d l m a k e _ r e q u e s t ( m d d e v _ t + m d d e v , i nt r w ,, s t r u c tb u f f e r _ h e a d + b h l i f ( r e a d ) s e l e c tad e vf r o mt h em i r r o rt h a ta r en o t b u s y ; i f ( w r i t e ) s e l e c ta l ld e vf r o mt h em i r r o rt h a t8 f e o p e r a t i o n a l ; ) ; r a i d l 模块接受到请求,也是区分读与写。 ( 1 ) 对于读搽终凝潮薮要不簧羧一个磁鼗菇乏读,当正在敲阍步搡雩挈辩,不要换 盘;在其他情况下,有以下的规则:如果这一次读的偏移量正好在上一次读操作的偏 移量的后黼的话,则不霾换盘,这样浔道时间加旋转时间就较小,有利与撮赢读的速 度。毽楚瓣予一个磁纛只爨连续读1 2 8 令s e c t o r ,超逮1 2 8 令s e c t o r 蘩一定囊换盘, 这样有利于把读操作均衡分布在两个磁盘中,可大大提高读盘速度。 ( 2 ) 对于写操作要对所有的镜像擞生成同样的请求,并调用m a p _ a n d _ m a k e _ r e q u e s t 寒擐薪生成豹请求教至l 镜像鑫对应设器豹谤求酞列中。最磊由r a i d l _ e n d _ r e q u e s t 寒处理 请求的始瑷充或情况,谯r a i d l _ e n dr e q u e s t 中如栗发现读操作失败,首先标志这个设备 不能使用,然后把这个请求放到队列m i d l _ r e t r y _ l i s t 头中去,并激活内核线程( m i d l d ) , 走棱线毽r a i d l d 受囊慰r a i d l _ r e t r y l i s t 孛嚣毒黪必黢谚求在箕德荮的镜像中熏复读操 作,并对相应失败请求的设备的s u p e r b l o c k 进行熨新,以上这些过程如图3 3 所示。 但m d 是基于主机的软r a i d ,臻求主机系统提供c p u 的处理周期,占用系统内 存繁宽积主提i o 总线。按照实现熬r a i d 级另不阉,m d 会弓 超尼令i o 攥馋逶过系 统总线,可能造成主机i o 总线拥挤,销约了其i o 效率i 3 4 。 华中科技大学硕士学位论文 图3 3 读写处理流程图 3 3 标准l i n u x 的实时性能分析 3 3 1 实时的分类 “在实时计算中,系统的正确性不仅仅依赖于计算的逻辑结果而且依赖于结果产 生的时间。”从这个角度上看,实时系统是“一个能够在指定或者确定的时间内完成系 统功能和对外部环境的输入做出响应的系统”。而作为r t o s ,必须创建、维护和支持 实时应用、能够执行的实时运行环境,按对实时性能要求的程度,应用可能分为两类: ( 1 ) 硬实时要求可确定性强,具有明确的实时约束,在某个限定时刻之前不能 完成任务将导致整个应用失败; ( 2 ) 软实时也对时间敏感,偶尔发生的不能满足严格实时要求的情况是允许的, 但不是受欢迎的。 相应地,根据对实时应用的支持能力,r t o s 也可分为这样两类。 华中科技大学硕士学位论文 3 3 2l i n u x 在实时应用方面存在的技术障碍 l i n u x 已逐游戏免擞爨上使舄袋广泛鲍撵终系绞之一,放鼹络鼹务器、察嚣p c 到各种嵌入式设备,到她可觅它的脊斑。由于良好的可移植性,它同时具脊游干硬件 平台上的运行版本,目前的内核支持i n t e lx 8 6 ,s t r o n ga r m ,p o w c r p c ,a l p a ,s p a r c 等处理器体系绩梅,然蕊在实时方簇还不毙够缀好满足实时系统方面赞霈婺,l i n u x 本身对实酎的支持情况如下: 1 ) p o s i x 实时扩展部分逐渐被添加进来,如p o s i x 1 0 0 3 1 b 。引入了实时进程的 概念,允诲将一个进程姻属性定为实时进程。l i n u x 把进程区分麓实时进程蒡鞋簧通进 程,采瘸不丽的调度策略,它其有蜜粒调度蒙珞,缀然对实跨避程的调度仪蠲单一 的固定优先级的方法( s c h e d r r 与s c h e d f i f o 在本质上都是采用的固蹴优先级 魄方法) 。 对于实瑟逶程,l i n u x 提供两种篱孳豹调度策硌,鞠先来先服务调度 ( s c h e df i f o ) 和时间片轮转调度( s c h e dr r ) f 3 司。在s c h e d 调鹰中,任_rr 务一旦时间片用完就被穆动到优先级队列的队尾,并允许同一优先级的其它任务运 行。鲡莱鬻一往先缀浚努其它程务,该经务将继续运行下一个瓣漓片,s c h e r ) f i f o 是运行直至阻塞的策略,按优先级调度,一旦开始就一直运行慧结束或者阻纛在其种 资源上,像们不像s c h e dr r 任务那样共享处理器。 对予蘩逶遗翟,l i n u x 采爱类u n i x 戆动态撬懋缓调度,震予分薅系统,激蕊懿吞 吐量和公平性为追求目标,基本没有考虑实时应用所应满足的时间约束【3 6 j 。标准l i n u x 系统不适合实时应用的特点: ( 1 ) l i n u x 下分瘸户态亵核心态涎蘩模式,当避翟运李亍在蠲户态辩,蜀坡撬先级 更高的进程抢占,但当宙进入核心淼时( 比如通邋系统调用) ,则其它用户淼进程优 先级再高( 包括实时进稷) 也不能抢妇它,根本原湖是l i n u x 内核本身是不可抢占的; ( 2 ) 农l i n u l x 中,谗多事件豹产生导致实踺遴程阻塞,掰菝无法确绦蜜瞬进程 的响应时潮; ( 3 ) 短时间内频繁的中断发生也可导致中断羝迟不可控制; ( 4 ) 侥先级反转的现象使裹优先缀的实对进程露被低优先级的阻塞; ( 5 ) 缺少细粒度霸多模式的定时器,l i n u x 豹周期模式定辩器频率双为1 0 0 h z , 1 7 华中科技大学硕士学位论文 远不能满足多种实时应用的需要。 2 ) 它采用g o o d n e s s 函数来衡量被调度的进程,符合实时进程调度的策略与机制 相分离的思想。 3 ) l i n u x 系统的调度时机较多,有利于保证实时进程在其截止期限之前完成。 4 ) l i n u x 在调度之前先判断是否处于系统临界区之中,能在不破坏核心数据结构 的前提下,使优先级较高的实时任务及时得到调度。 但标准l i n u x 本身是一个分时操作系统。它能创建实时进程,设置实时进程的优 先级,但是它还缺乏对于其它时间约束的描述,如任务的开始时间,截止期限等:另 外,对于实时进程仅仅采用单一的固定优先级的调度策略是远远不能满足实时应用的 要求的【驯。 因此,l i n u x 本身在实时支持方面已做的努力可以在粗粒度的软实时方面有一定 的应用范围,但因上述原因和对实时调度算法的支持不完善,远不能满足硬实时应用。 将标准l i n u x 改造成实时l i n u x 的技术途径是在硬件中断和l i n u x 内核之间插入 一个实时内核,实现系统的硬实时。标准l i n u x 作为实时内核任务管理下的一个最低 优先级任务运行。 3 4 本章小结 本章先概括性地介绍了l i n u x 上r a i d 的架构方式,在此基础之上详细地分析 l i n u x 上的软r a i d 的实现机制,说明了m d 系统中数据交换流,m d 模块与缓冲区 以及磁盘设备驱动程序交互的机制。最后详细描述了实时的分类,标准l i n u x 的实时 性能及其在实时应用方面存在的技术障碍,并针对其局限性提出了改进的方法。 华中料技大学硕士学位论文 4 基于视频的r a i d 系统的总体设计与实现 由于视频数据本身的特点依靠蒋通的r a i d 算法技术无法将存储带宽进一步提 高,对晷魏市场上e 较成熟蛉r a 玲产品的分析和测试性能都不是很强。基于上述原 因,针对流媒俸簸务器浚频数据静耨点撬整了毒行定义的一垫存褚魏羹| j ,遴过一定豹 手段实现存储输出带宽的极大增长。媒体服务器的存储方案怒采用自行设计定义的 r a i d 技术鼗;现硬件平螽,r a i d 核心控制器是r a i d 存储系统的核心部件,w 以应用 在各耱数瓣痞怠存疆领域,实瑗多拿磁鑫著牙羧务予萃令读篝请求,瑷提薅存谵设备 性能;同时也可以通道特定算法实现数据信息冗衾,以提高可舷性【3 8 1 。 4 1 基予视频酶r a i d 系统懿硬馋浚静秀寨 该阵列系统是一个s c s i 接口的磁盘阵列系统,和主机端及磁盘都通过s c s l 接口 帽联系,和外部系统的必系如图4 1 所示。另外,用户可以通道外部的配鼗维护终端 配置蠢缝移簿确系统。铁主壤臻看泉,阵藏系统魏跫一令拣壤麴大容量存德设备。 圈4 1阵判控制系统与外部系统的关系阉 1 9 帮 华中科技大擎硕士学位论文 # # d = = = = = # = # = # g = = = = = = = = = # ;= = = = = = $ = = = # ;= = = = = = # # # = = = # = = = = = # # # = = = = = ;# ;= = = # 2 = = = = = 整个黪瓣系统廷蕊于x 8 6 - - p 4 塞擞稳,逶避主瓣羔辩c p u 究蔽蓐戮箨浚鞫攘麓, 燕摄上的悫褥兖遗阵列糕娩的c a c h e 。藤通过p 4 主板上的r s 2 3 2 和网络逡怒器可以 宪壤薄溪瓣攘镬霸襞护。s c s i 嚣掭嚣霸主蕊耪连,霞至嚣在嚣撩攘式。蠢s g s l 寝凄 器逋过光终艚裁环和磁擞嘏连,它工作程启动器搂式。强s c s i 鞠标器收到濑霸主讥 端龅s c s i 套询请求( f c 怒传递s c s i 请求盼载傣) ,磁盘阵秀搽娩将根据颥舞潦鬟菇 褥r a i d 霸l l r n 甏嚣,灏圭规羧惫羧楚蘩磁盘骚餐 r a i d 孛数糕攀元及搜骏攀嚣在c a c h e 串戆藏萋 该r a i d 系统采爝高速c a c h e 优化阵列性熊对,对于r a i d 5 把小写、降级写预 读的数据单元均存入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 预先分配的缓存,因为c a c h e 传送的缓存仅用来存放新 华中科技大学硕士学位论文 数据,这就要求能够从c a c h e 维护的缓存中分配窝闲缓存,来保存读出的数据单元, 对传送的数据缓存进行动态扩展。同时规定校骏单元并不存入c a c h e 维护的缓存中, 嚣是簌两露孛动态分戴l 巍嚣雩缓存寒豫存,傻爰竞焘立帮器敖。这耱霞恁选在一定程 度上解决小写带来的效率问题。 5 3r a i d 算法妻孽实凌方法 r a i d k e r n e l 模块可划分为以下几个子模块:r a l d 核心处理,及r a i d 0 , r a i d i o ,r a i d 5 算法实现几个子模块。其中r a i d 核心处理予模块负责初贻化模块、 接牧主鼷模块发窭魏i o 请求,稷攒警蓠设定酌襁应r a i d 缀麓来调弼不潮麓r a i d 算法,把对单个逻辑磁盘上的请求拆分成对一个藏多个物理磁盘的请求;幽请求返 回时,把多个物理磁盘的请求响应合并成对逻辑磁盘的请求响应返回给上屡的模块。 凌嚣受责麓决对霜一浚数据戆请求洚突霾题,势霹对r a i d 遴 予嚣梅、嚣拷藕格式 化操作。 r a i d 簿法模块酋巍根据从全局配置管理模块获得的全局配置文件,创熬r e q 和 r s p 嚣令f i f o 溪惠沃确,翅建弗秘始琵解凌请求狰突熬r b t r e e ,痘麓稳应蹩理 ( r e q h a n d l e t h r e a d ) 及请求处理( r s p h a n d l e t h r e a d ) 两个线獠,根据全局飘置文件 s l i c e 数组中保存的未完成的重构、嘲拷及初始化任务,调用重构、回拷及初始化处理 函数,宠袋压两全蜀懿爨警瑾接头遨霾。 r a i d 核心模块和i o 调度模块的联系主要怒通过r k结构体来联i sr i n f ot 系的,r a i d 核心模块和c a c h e 管理模块的联系生熏是通过c mr kr i n f o _ t 结构体 柬联系豹。 ( 1 ) 请求处理线稷 r a i d k e m e l 模块的收到c a c h e m a n g e r 模块的请求后,写入请求消息队列,然后 淫瘸谚黎魅理线程r e q h a n d l e t h r e a d 不等建麸谚浆港惠获歹l 孛浚取涛求,瀵愿净突检 测函数处理请求,当芷对一个s t r i p e 的进行操作时,冲突检测诃防止另一个请求对这 个s t r i p e 进行操作,因此,每次取出请求时首先调用请求冲突处理函数 r k _ d e a l w i t h c o n f l i c t ( ) 判断是否对阉一s t r i p e 袁请求洚突,莠避行提应的娥壤,其傣 过程如图5 1 所示。 华中科技太擘硕士学位论文 潮s 1 请求冲突她遴蚕数嚣kp 蚴l 撇n o 斌 c ) 溅程阉 请求懿莲函数r kh a u d l e r e q ( ) 裰耩不闲瓣r a i d 缀掰谲麓不鬻r a i d 翁簸疆滋 数慕处联请求: , v o i dr k _ h a n d | e r e q ( p c mr ks t r i p e _ tv 5 l s t c m r k s t r i p e ) 萨稚搽r a i d 激翁麓不黼满焉不游漪汹蘸疑毽逶数4 , s w i t c h ( 双鬻要文转中敬餐r a i d 缀聚 er d cr a i d 0 : 严谪瘸黼0 静怒瑾瀚数, r k _ h a n d l e r a i d 0 r e q ( vp s t c m r k s t r i p e ) ; b r e a k ; c 缴r d cr a i d l 0 : 产谲麓r a i d l 0 靛处臻添鼗 , r k _ h a n d t e r a i d l 0 r e q ( vp s t c m r k s t r i p e ) ; b r e a k ; c a s e r d c _ r a i d 3 : 尹疆爰黼s 波筵理璐数$ , r k _ h a n d l e r a i d 5 r e q ( v _ p s t c m r k s t r i p e ) ; b r e a k ; d e f a u l t : b r e a k ; ) ; 3 柱 华中科技大学硕士学位论文 ( 1 ) 响应处理线程 i o 调度模块收到从磁盘返回的请求响应信感蓐,把该晌廒写入消惠队列,请求 购应处理线翟r s p h a n d l e t h r e a d 不铮穗簸镌应清惑酞弼中读取确应,鬏据稍疲消息豹 不同r a i d 级别调用不同的r a i d 响虚处理函数。 t h r 嚣a ) ! - d i m ( r kr s p h a n d i e l l 艄a d ,yp a 塔) p 根据响应消息不同的r a i d 级另调用不同的r a i d 响应处理函数_ w h i l e ( 1 ) d e q u e ( ) ;取响应消慰队列的请求 s w i t c h ( g _ p s t c f g f i l e - s t s l i e e u s l i c e i d u r a i d l e v e l ) c a s er d c _ r a i d 0 : p 调用r a m 0 响应处理函数+ r k h a n d l e r a i d 0 r s p ( p s t p , 心s r i n f o ) ; b r e a k ; e a s er d c _ r a i d l 0 : p 调用r a i d l 0 响应处理函数。 r k _ h a n d t e r a i d 0 r s p ( p s t r l d s r i n f

温馨提示

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

评论

0/150

提交评论