(电路与系统专业论文)嵌入式linux及其在附网存储器中的应用.pdf_第1页
(电路与系统专业论文)嵌入式linux及其在附网存储器中的应用.pdf_第2页
(电路与系统专业论文)嵌入式linux及其在附网存储器中的应用.pdf_第3页
(电路与系统专业论文)嵌入式linux及其在附网存储器中的应用.pdf_第4页
(电路与系统专业论文)嵌入式linux及其在附网存储器中的应用.pdf_第5页
已阅读5页,还剩70页未读 继续免费阅读

(电路与系统专业论文)嵌入式linux及其在附网存储器中的应用.pdf.pdf 免费下载

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

文档简介

硕士学位论文m a s r e p , s1 i 1 e s i s捅要随着通信技术和网络技术的高速发展,我们已经步入了一个数码时代。建立在其基础上的嵌入式系统已经广泛地渗透到科研、工程、军事、商业、文化、艺术和娱乐等人们生活的方方面面。随着国内外嵌入式产品的进一步丌发推广和人们对网络的越来越强的依赖,嵌入式系统正越来越广泛地应用到各种网络设备中。嵌入式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 内核工作机制的分析,根据系统的硬件特点和应用需要,提出了一种适用于系统的内核裁减方法使用l i n u xg c c 编译器对内核各选项进行配置和编译,实现内核的裁减。:、根文件系统的建构。根掘嵌入式系统的存储特点,分析了适合于嵌入式l i n u x 系统的文件系统,选择了一种适合于附网存储系统的文件系统。接着详细介绍根文件系统建立和应用程序加载的过程。三、系统的移植。文中着重讨论了嵌入式l i n u x 系统在d o c 2 0 0 0 ( d i s k o n c h i p2 0 0 0 ) 上的移植,并就移植过程中的实际问题提出了解决方案。四、磁盘阵列。介绍了使用r a i d 的磁盘阵列的实现方法。关键词嵌入式系统,嵌入式l i n u x ,附网存储( n a s ) ,磁盘阵列( r a i d )j f f s j f f s 2 文件系统,m t d 设备( m e m o r yt e c h n o l o g yd e v i c e s )硕士学位论文m a s t e r st | i e s i sa b s t r a c ta l o n gw i t ht h eh i g h s p e e dd e v e l o p m e n to fc o m m u n i c a t i o nt e c h n o l o g ya n dn e t w o r kt e c h n o l o g y ,w eh a v es t e p p e di n t oad i g i t a le r a t h ee m b e d d e ds y s t e mb a s e do nh i g h t e c hh a v ep e r m e a t e dt h r o u g hs c i e n t i f i cr e s e a r c h ,e n g i n e e r i n g ,m i l i t a r y ,b u s i n e s s ,c u l t u r e & a r t ,a m u s e m e n t ,e t c w i t ht h ef u r t h e rp o p u l a r i z a t i o no fe m b e d d e dp r o d u c t sa l lo v e rt h ew o r l d ,w i t hp e o p l e ss t r o n gr e l i a n c eo nn e t w o r k ,e m b e d d e ds y s t e mi sa p p l i e di nv a r i o u sn e t w o r ke q u i p m e n t sm o r ea n dm o r ee x t e n s i v e l y a n de m b e d d e dl i n u xi st h em o s tp o p u l a ro p e r a t i n gs y s t e mf o ri t sc h e a p n e s si np r i c e ,p o w e r f u lf u n c t i o n ,a n dg o o dp o r t a b i l i t yt oe m b e d d e dp l a t f o r m s t h e nt h er e s e a r c ha n dd e v e l o p m e n to nt h ee m b e d d e dl i n u xn e t w o r k - a t t a c h e ds t o r a g es y s t e mh a sac o n s i d e r a b l ea p p l i c a t i o np r o s p e c t an e wd e s i g na n di m p l e m e n to fn e t w o r k a t t a c h e ds t o r a g es y s t e mw i t he m b e d d e dl i n u xt e c h n i q u ei sp r o v i d e di nt h i sp a p e r , b a s e do nt h ea n a l y s i so fe m b e d d e dl i n u xs y s t e m t h en e ws y s t e mi ss u i t a b l ef o rt h en e t w o r k so fm e d i u ma n ds m a l l s i z e de n t e r p r i s e s ,a n ds c h o o ll a b o r a t o r i e s i td i f f e r sf r o mt h et r a d i t i o n a ls t o r a g es e r v e r sf o ri t se x c e l l e n tc h a r a c t e r i s t i c ss u c ha sg o o dp o r t a b i l i t y , h i g hi n t e g r a t i o n ,p o w e r f u lf u n c t i o n ,c o s ta n dt i m es a v i n g ac o m p r e h e n s i v ed e s c r i p t i o na b o u te m b e d d e dl i n u xs y s t e ma n di t sd e v e l o p m e n tt e c h n o l o g yi sg i v e ni nt h ef i r s tp a r t t h e nt h ed e s i g no ft h en e t w o r k -a t t a c h e ds t o r a g es y s t e mb a s e do ne m b e d d e dl i n u xi sg i v e n ,w h i c hm a i n l yi n c l u d e :r e d u c t i o no ft h el i n u xk e r n e l ,b u i l do ft h er o o tf i l es y s t e m ,e m b e d d i n go ft h es y s t e m ,a n db u i l do ft h er a i d f i r s t l y ,t h r o u g ht h ec o d ea n a l y s i so ft h el i n u xk e r n e l ,t h ea r t i c l ec h o o s e sas u i t a b l em e t h o dt or e d u c et h ek e r n e l s e c o n d l y ,t h ea r t i c l ea n a l y s e st h ef i l es y s t e mb u i l do nt h em e m o r yt e c h n o l o g yd e v i c e s ,a n dc r e a t e st h er o o tf i l es y s t e mw i t he x t 2 f s ,w h i c hc a nl o a ds o m ea p p l i c a t i o np r o g r a m s t h i r d l y ,t h ea r t i c l ed i s c u s s e dt h em e t h o dt oe m b e dt h ew h o l es y s t e mi n t od i s k o n c h i p 2 0 0 0 ,a n dg i v e ss o l u t i o n st os o l v et h ep r o b l e m so c c u r r i n gd u r i n gt h ep r o c e s sl a s t l y , t h ea r t i c l ed i s c u s s e dt h ei m p l e m e n to f t h er a i d k e y w o r d se m b e d d e ds y s t e m ,e m b e d d e dl i n u x ,n a s ,r a i d ,j f f s ,m t d- i i 硕士学位论文m a s t e r st t t e s i s1 1 课题背景第一章绪论1 1 1 嵌入式l i n u x 技术嵌入式技术兴起于1 9 6 5 1 9 7 0 年集成电路化的第三代计算机期间。在7 0年代,微处理器不仅用来组成微型计算机,而且用来制造仪器仪表、医疗设备、机器人等。8 0 年代将嵌入式应用所需要的微处理器i o 接口、a d 、d a转换、串行接口以及r a m 、r o m 全部集成到一个v l s i ( v e r yl a r g es c a l ei n t e g r a t i o n ) 中,制造出面向i o 设计的微控制器,使嵌入式应用得到了全面而快速的发展。9 0 年代,嵌入式应用面向实时信号处理算法的d s p ( d i g i t a ls i g n a lp r o c e s s i n g ) 向高速、高精度、低功耗发展。9 0 年代末本世纪初,在计算机、控制、网络相互融合的基础上,出现了信息家电i a ( i n f o r m a t i o na p p l i c a n c e ) 的新浪潮,使消费电子、计算机、通信( 3 c ) 一体化趋势日渐明显,嵌入式系统再度成为研究与应用的热点。嵌入式系统定义为:以应用为中心,以计算机技术为基础,软硬件可裁减,适用于系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统1 2 i 。嵌入式系统主要由嵌入式处理器、相关支撑硬件、嵌入式操作系统和应用软件等组成【j j 。嵌入式系统的商品化操作系统在7 0 年代后期才出现,许多是用汇编语言写成的,并且只能用于特定的处理器,如果更换新处理器,其操作系统也必须更新以适应新的系统。c 语言出现后,操作系统编写的效率、稳定性、可移植性都有了很大的提高。这一点在管理上立刻表现出来,它为微处理器被淘汰时的软件投资带来了希望。用c 语言写成的操作系统现在己经相当普遍,可重复使用的软件已经占了主导地位,并越来越走向成熟。早期许多嵌入式系统根本没有操作系统,只有循环控制。对于一些简单设备这是足够的,但是随着系统越来越复杂,更多嵌入式系统需要与各类网络相连,因此需要网络功能。网络功能的增加将导致系统复杂程度提高以致硕士学位论文m a s i e r sr l t e s i s要求使用操作系统。随着计算机、网络技术的快速发展,操作系统一直处于不断发展和改进之中,人们将越来越多的功能加入到操作系统中,导致操作系统越来越大。但是,随着应用领域的扩大,为了适应不同的应用场合,考虑到系统的灵活性、可伸缩性以及可裁减性,一种以应用为中心、可裁减的、适应应用系统对功能、可靠性、成本、体积、功耗要求严格的专用计算机操作系统嵌入式操作系统便随之诞生【4j 。嵌入式操作系统并不是简单嵌入的操作系统,它与通常意义上的操作系统有一定的区别。嵌入式操作系统负责嵌入式系统的全部软硬资源的分配和调度工作,控制协调并发活动,它必须体现所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能l l 。嵌入式l i n u x 是按照嵌入式操作系统要求设计的一种小型操作系统。由一个k e r n e l ( 内核) 和一些根据需求进行定制的系统模块组成【4 l 。其k e r n e l很小,一一一般只有几百k b 左右的大小。即使加上其它必要的模块和应用程序,所占的存储空间也很小。嵌入式l i n u x 内核具有多任务多进程等系统特征,有的还具有实时特性。一个小型的嵌入式l i n u x 系统只需要三个基本元素构成1 4j :引导工具、l i n u x 微内核( 由内存管理、进程管理和事务处理构成) 、和初始化进程。如果要让它有更多的功能且继续保持小型化,还得加上:硬件驱动程序( 提供所需功能的一个或更多应用程序) 、文件系统( 可用于r o m 、r a m 、f l a s h 或d i s k o n c h i p 中的) 、t c p i p 协议、存储更多数据用的磁盘、精简的应用程序。嵌入式l i n u x 操作系统的主要特点有:精简标准的l i n u x 内核,适应于多种c p u 和硬件平台,性能稳定,裁减性很好,开发使用容易,还可以使用u n i x 或l i n u x 上的应用程序。现在,嵌入式l i n u x 也可以使用w i n d o w s 下的多媒体应用。嵌入式l i n u x 操作系统具有高度的灵活性,丌发者可以很容易地对它进行定钳i 或作适当开发,束满足实际应用需要。硕士学位论文m a s l e r s1 1 t e s i s1 1 2 网络存储技术近几年来,现代信息科学技术取得了突飞猛进的同时,各种共享与交换的数据信息以难以置信的速度急剧增加,导致了用户对存储产品和存储服务需求的爆炸性增长。多媒体信息尤其是以音频、视频为代表的连续媒体数掘,在数据传输率、实时性、数据量等方面的种种要求,是存储技术现状所不能适应的。人们对存储产品及服务需求快速增长形势的形成,无疑给存储服务业界提供了扩大服务规模、拓展服务领域的良好契机。但同时,也向存储服务和存储系统性能提出了更高的要求。存储系统之所以成为影响系统性能的瓶颈,是因为磁盘本身的速度远远落后于计算机处理器芯片的速度,要解决这个问题,首先要对硬件加以改进,例如减少磁盘寻道时f 、日j 、旋转等待时问以及数据传输时间:采用更有效的调度策略以及更有效的c a c h e 与预取技术等等。但是仅仅依赖磁盘的改进是不可能满足实际应用的需要的。近年来,随着并行技术的引入,为存储系统的发展丌辟了一条新的发展方向。磁盘阵列( r a i d - - 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 ) 就是在这种背景下产生的。磁盘阵列最早是由da p a t t e r s o n 教授在1 9 8 8 年提出的1 5 j 。作为一种数据保存手段,它的作用是提供专用服务器中接入多个磁盘( 专指硬盘) 时,把多个独立的物理磁盘组织成一个超大容量、响应速度快、可靠性高的逻辑磁盘。通过对数据分块( s t r i p ) 和交叉存驳( d e c l u s t e r ) 两项技术的使用,使c p u 实现通过硬件方式对数据的分块控制和对磁盘阵列中数据的并行调度等功能【6 川。使用r a i d 可大大加快磁盘的访问速度,缩短磁盘读写的平均排队与等待时间。同时它采用在阵列中增加冗余空问存放纠错码的方法来解决磁盘失效问题,当阵列中某个磁盘损坏时,仍能通过读取冗余磁盘上的纠错信息来恢复丢失的数据,从而确保数据安全。根据不同的容错结构可以将磁盘阵列分成不同的级别,常用的有r a i d0 级、1 级、5 级和1 0 级p l 。可以根据不同的应用环境使用不同的r a i d 级别,十分灵活方便。磁盘阵列从诞生到今天,虽然只有短短数年时阳j ,但是该技术由于作为解决i 0 瓶颈问题的有效手段而得到了飞速地发展。网络存储使网络技术和硕士学位论文m a s t e r st ! e s l 5i 0 技术的特性得以有机结合,尤其是网络的存储位置的可分散性与灵活性、完善的寻址能力,以及i o 的可并行性、协议高效性( e f f i c i e n c y ) 。与传统附属服务器的存储( s e r v e r a a a c h e ds t o r a g e ) 方式相比,网络存储能更有效地管理和访问数据。有理由相信,在下个1 0 年中它将成为网络和因特网计算的重要技术【9 j 。根据网络与存储结合的不同形式,网络存储正沿着三个主流技术方向发展,即附网存储( n e t w o r k a t t a c h e ds t o r a g e ,n a s ) 和存储局域网( s t o r a g ea r e a n e t w o r k ,s a n ) 以及i p 存储1 。附网存储( n e t w o r ka t c a c h e ds t o r a g e ) ,简称n a s 。附网存储从更新的角度实现了分布式的网络存储。它的重点在于实现数据在数据请求者和数据提供者( 存储系统) 之间的直接传输,以实现高的数据传输带宽,具有较好的可扩展性j 。存储局域网( s t o r a g ea r e an e t w o r k ,s a n ) 是一种基于光通道体系的存储网络系统,它将磁盘阵列系统和磁带库系统等存储设备通过光通道互联设备构成。个存储子网,该子网上的存储空间可为主服务器系统上的每一台服务器所共享”“。s a n 和n a s 虽然在字面上很相似,但它们的是两种不同结构的存储系统。n a s 是基于l a n 的,按照t c p i p 协议进行通信,面向消息传递,以文件的i o 方式进行数据传输。相比之下,s a n 上数据传输的方式是块传输方式。它们本质的区别是:s a n 是真正面向大规模数据传输的:而n a s 实际上更适合短消息的传递。但是,n a s 有一个s a n 无法比拟的优势,即在l a n环境下,n a s 已经完全可以实现异构平台之间的数据级共享,比如n t 、u n i x 等平台的共享。业界一致把s a n 和n a s 当作是两种虽不矛盾但各自独立的技术。前不久,e m c 公司在全球同步推出n a s 新品c e i e r r “s e 、c l a r i i o ni p 4 7 0 0 和c e l e r r aw i t hhj i 曲r o a ds o f t w a r e 1 3 】。后者是一个软件产品,可以兼容s a n 和n a s ,并把它们有机地结合起来。e m c 认为,二者之间各有所长,就一般企业的运算环境而言,往往两种应用都需要【l ”。e m c 的目的是把n a s 和s a n结合起来,让企业买一种产品就能享用两种技术,充分满足企业存储信息的需求。4 一m a s t e r 鼢 st i i e 文s i 。随着存储技术各个层次的明确划分,专家们发现s a n 和n a s 技术并不是完整的存储“协议栈”。就如同t c p i p 协议不是完整的网络通信协议栈一样。于是在存储“协议栈”上层,各厂商发展出了“虚拟存储”技术,而在底层出现了“i p 存储”技术1 15 10i p 存储( i p s ,i ps t o r a g e ) ,。它将s c s i ( s m a l lc o m p u t e rs y s t e mi n t e r f a c e ) 协议映射到t c p i p 协议,使得s c s i 的命令、数据和状态可以在传统的i p 网上传输,满足事务处理和数据库等应用的需要,对于以局域网为网络环境的用户,只需要不多投资,就可以方便、快捷地对信息和数据进行交互式传输和管理【1 6 1 。目前i e t f 和存储网络工业协会等组织正在订的i p 存储标准有:f c i p 、i p c p 、i s c s i 和i s n s l ”1 。1 f c i p ( f i b r ec h a n n e lo v e ri p )f c i p 是利用现有i p 网络实现“光纤通道s a n 孤岛”互连的标准,用于克服光纤通道的距离限制,把超过光纤通道允许距离的s a n 连接起来。f c i p利用封装方法在t c p i p 键路上传输光纤通道数据帧( f c f r a m e ) 。因为光纤通道f c p 协议已经包含了s c s i 协议,所以这种方法不必做太多工作即可实现。2 i f c p ( i n t e m e tf i b r ec h a n n e lp r o t o c a l )i f c p 被定义为网关对网关的协议,以便于现有的光纤通道磁盘阵列和主机总线适配器通过网关连接到i p 网络上。i f c p 采用与f c i p 相同的封装方法s c s i t c p 协议转换,只是寻址方法不同。3 i s n s ( i n t e r n e ts t o r a g en a m es e r v i c e )i s n s 正被建议作为目前所有i p 存储协议中的公用发现、命名和资源管理服务标准。4 i s c s i ( s c s io v e ri p )i s c s i 将s c s i 的命令、数据和状态封装成p d u ( 协议数据单元) 在基于t c p i p 的网络上传输,支持数据块形式( b l o c kl e v e l ) 的i 0 访问和共享存储。与f c i p 和i f c p 相比,i s c s i 是更彻底的i p 网络存储方案,i s c s i 完全脱离了光纤通道,基于主机的应用程序与网络存储设备通过i p 链路直接通e m a s t e r st i i e s i 。信。】3 国内外发展情况嵌入式系统的研究在国外已经进入成熟发展阶段,各大公司都推出自己的嵌入式产品和相关丌发平台,芯片厂商也不断研制出最新的嵌入式芯片以适应市场需求。对平台和产品的丌发也十分成功。国内的情况则相对滞后一些,嵌入式芯片几乎仍旧依靠国际几大芯片供应商,平台的研究从近两年才丌始,虽然国内已经有一些嵌入式操作系统,如吴鹏h o p e n 、u c l i n u x 、p o c k e t l x 等,但这些系统对基本平台支持较少,实时性和兼容性较差。同时丌发出来的极少数嵌入式产品在成本、价格、实用性等方面都不是十分成熟,所以国内对嵌入式系统的研究和开发有着巨大的发展空间【2 0 1 。目前国际上对嵌入式l i n u x 的研究主要集中在三个方面:( 1 ) 内核裁减一一嵌入式设备资源有限,对软件的体积有比较苛刻的要求。由于l i n u x 是单一模块结构,体积较大,不适合直接在嵌入式设备中应用,所以丌发符合原l i n u x 接口标准的小体积的l i n u x 内核,并加强其可裁减性和可配置性,是当前嵌入式l i n u x 的发展方向。( 2 ) 实时性一数据采集、控制、音视频等设备对操作系统的实时性有比较高的要求。l i n u x 并不是一个实时操作系统,因而必须提高其实时性以满足这些设备的要求。( 3 ) 移植性n u x 操作系统最初是运行在服务器和桌面p c 机上,尽管它对硬件平台的支持在不断的扩充,但l i n u x 系统对某些特定应用的嵌入式芯片的支持还不是很多,特别是最新研制的嵌入式芯片,所以要求不断改进内核版本来支持芯片特性。国内对l i n u x 的研究丌发主要在以下几个方面:( 】) 体积除了对内核大小有严格限制外,广义上嵌入式操作系统还包括g u i ( g r a p h i c a lu s e ri n t e r f a c e ) 、中文字库、驱动程序等。个嵌入式设备不仅要有操作系统,还应包含嵌入式应用软件,如浏览器等。对于手持设备,嵌入式操作系统所占用的r a m 资源如果小于8 m 、1 6 m 是比较理想的。所以对于p c 机上应用的l i n u x ,在保持原有接口标准的基础上,对内核进行鼬m a s t e 弛r s 敞t h e s i 。裁减,对虚拟内存、文件系统等模块进行删减和改进。( 2 ) 能源管理嵌入式设备尤其是小型的手持设备对功耗十分敏感。新型嵌入式芯片( 如s t r o n g a r m 、n e cv r 4 1 2 1 等) 采取了很多技术手段提高能源管理能力。这些芯片提供了运行、空闲、休眠等工作状态转换的功能。嵌入式l i n u x 必须提供相应能源管理机制。( 3 ) g u i p c 机l i n u x 目前采用x w i n d o w 窗口图形系统,但x w i n d o w系统体积庞大,结构复杂,不适合在嵌入式设备中应用。嵌入式g u i 要求体积小巧、界面友好、提供完整的a p i ( a p p l i c a t i o np r o g r a m m i n gi n t e r f a c e ) 。目d u 可供选择的开放源代码的g u i 系统有m i c r o w i n d o w s 、m i n i g u i 等,而这些系统的开发并不十分完善,还需要进一步改进。( 4 ) 丌发环境嵌入式系统开发环境有较高的要求。开发环境包括两个方而,一是操作系统与硬件平台的集成,二是应用软件开发所需要的s d k( s o r w a r ed e v e l o p m e n tk i t ) 。前者由于g c c ( g n uc o m p i l e rc o l l e c t i o n )g d b ( g n uc + + d e b u g g e r ) 提供了比较丰富的工具链和源代码,比较容易解决,而后者必须建立在内核系统调用和g u i 提供的a p i 的基础上,需要开发仿真环境,难度较大。( 5 ) 中文化良好的中文界面是决定嵌入式设备能否被用户接受的关键因素,嵌入式l i n u x 需要解决完善的中文字库和有限资源之间的矛盾。另外还应该提供中文输入接口,以方便不同中文输入方法的挂接,如手写识别、语音识别等。( 6 ) 驱动程序嵌入式l i n u x 一般采用传统的l i n u x 设备管理机制。为了尽快开发出产品,嵌入式l i n u x 必须根据目标产品的规划,提供足够丰富的驱动程序。1 2 本文的目标及内容随着嵌入式操作系统和嵌入式l i n u x 的发展,嵌入式l i n u x 应用于网络存储的附网存储器将会越来越受欢迎。本课题主要目标是结合嵌入式l i n u x 操作系统的开发,构建一个基于嵌入式l i n u x 的附网存储器基本系统,使之成为一个功能完善、小型、可根据硕士学位论文m a s t e r st t t e s i s用户要求移植的多功能系统。论文结构安排如下:第一章对嵌入式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 内核裁减展开了论述,分析l i n u x 内核的工作机制,介绍l i n u x 内核裁减的具体实现过程。第四章首先根据嵌入式系统存储的特点,分析适合于嵌入式l i n u x 的文件系统,选择适用于附网存储系统的文件系统。接着详细介绍根文件系统建立过程和应用程序加载过程。最后着重介绍了嵌入式l i n u x 系统在d o c( d i s k o n c h i p ) 上移植的实现,就移植过程中的实际问题提出详细解决方案。第五章介绍磁盘阵列的实现方法,以及系统的磁盘阵列的具体实现过程。最后对本文进行了总结,并对其发展前景做了展望。硕士学位论文m a s t e r st h e s i s第二章嵌入式l i n u x 系统及附网存储基本系统设计嵌入式系统的要求和l i n u x 诸多适合嵌入式操作系统的特点决定了它们是一对很好的组合。本章介绍适合基于嵌入式l i n u x 的附网存储系统的设计。2 1 嵌入式操作系统概述2 1 1 嵌入式系统特点嵌入式系统的构成如图2 1 所示。主要由以微处理器,微控制器为核心的硬件平台,嵌入式操作系统( 如嵌入式l i n u x ) 软件平台,以及应用软件组成。嵌入式系统的构成决定了系统在各个层次的不同要求。嵌入式系统是将先进的计算技术、半导体技术以及电子技术与各个行业的具体应用相结合的产物,这一点就决定了它必然是一个技术密集、资会密集、高度分散、不断创新的知识集成系统。嵌入式系统通常是面向用户、面向产品、图2 1 嵌入式系统的构成 囡j面向特定应用的。嵌入式系统中的c p u 与通用型c p u 的最大不同就是前者大多工作在为特定用户群设计的系统中。通常,嵌入式系统c p u 都具有低功耗、体积小、集成度高等特点,能够把通用c p u 中许多由板卡完成的任务集成在芯片内部,从而有利于整个系统设计趋于小型化。在对嵌入式系统的硬件和软件进行设计时必须重视效率,去除冗余,针对用户的具体要求,对系统进行合理配置,才能达到理想性能。硕士学位论文m a s t e r st h e s i s嵌入式系统和具体应用有机结合在一起,其升级换代也是和具体产品同步进行的。因此嵌入式系统产品一旦进入市场,就具有较长的生命周期。为了提高执行速度和系统的可靠性,嵌入式系统中的软件般都固化在存储芯片或单片机中,而不是存储于磁盘等载体中。由于大多数嵌入式系统都具有较高的实时性,因此对程序的质量,特别是可靠性,有着较高的要求。嵌入式系统本身并不具备在其上进行二次开发的能力。在设计完成以后,用户如果需要修改其中的程序功能,必须借助于一套开发工具和环境。通用计算机的开发人员通常是计算机科学家或者计算机工程方面的专业人士,而嵌入式系统开发人员往往是各个应用领域中的专家,这就要求嵌入式系统所支持的开发工具易学、易用、可靠、高效。2 12 典型的嵌入式操作系统2 0 世纪8 0 年代,国际上就开始进行一些商用嵌入式系统和专有操作系统的开发。这些商家开发嵌入式系统已经有2 0 多年的经验,其产品系统目前的应用范围也比较广泛。下面简要介绍一些嵌入式操作系统:w i n d r i v e r 的v x w o r k s 是目前嵌入式系统领域中使用最广泛、市场占有率最高的实时操作系统。它采用w i n d 微内核,该微内核是一个具有较高性能的、标准的嵌入式实时操作系统内核,支持抢占式的基于优先级的任务调度,支持任务间同步和通信,还支持中断处理,看门狗( w a t c h d o g ) 定时器和内存管理。其任务切换时间短、中断延迟小、网络流量大的特点使得v x w o r k s 的性能得到很大提高,与其它嵌入式系统相比v x w o r k s 系统具有很大优势。v x w o r k s 提供了p o s i x ( p o r t a b l eo p e r a t i n gs y s t e mi n t e r f a c ef o ru n i x ) 的1 0 0 3 1 b 标准集合规定的接口,使得将系统移植到其它同样遵循该标准的系统变得更简单。v x w o r k s 还具有自由的配置能力,可配置的组件超过8 0 个,用户可以根据自己系统的功能需求通过交叉开发环境方便地进行配置。v x w o r k s 的友好丌发调试环境使开发人员能很方便地进行操作和配置。其丌发系统t o m a d o 更得到了广大嵌入式系统开发人员的支持。、p s o s 是i n t e g r a t e ds y s t e m 公司提供的一个模块化、高性能的实时操作系统。它提供了一个基于丌放系统标准的、彻底的多任务环境。p s o s 操作系统拥有集成的开发平台,这些开发工具可以驻留在u n i x 或者d o s 的计算机上,通过串口或者t c p s p 网络与其相连。p s o s 系统采用模块化的结构,围绕着p s o s 实时多任务内核,集成了基于标准结构的,绝对编码独立的各种功能的软件模块【l 】。p a l mo s ( h r p :w w w p a l m o s c o m ) 是专门为手持计算领域设计的一个操作系统。p a l mo s 拥有一个提供基本任务管理的抢占式的多任务管理内核。大多数的应用程序不需要同这个内核直接打交道,因为系统会自动地处理它们。这个微内核的作用在于为系统软件和些有特定目的的软件提供服务。p a l mo s 引入了一个虚拟文件系统a p i 接口来管理相当于外存的部分存储器,其中包括v f s f i l e c r e a t e 、v f s f i l e o p e n 、v f s f i l e r e a d 、v f s f i l e w 血e 等操作接口。“c o s i i ( m i c r o c o n t r o l l e ro p e r a t i n gs y s t e m ) 是由美国人j e a nj l a b r o s s e 丌发的实时嵌入式操作系统。l ac o s i i 其实只是一个实时操作系统的内核,全部核心代码只有8 3 k 字节。它只包含了进程调度、时钟管理、内存管理和进程间的通信与同步等基本功能,而没有包括i o 管理、文件系统、网络等额外的模块【1 , 2 2 】。uc o s i i 的移植性很强,所涉及到的系统移植的源码文件只有3 个,只要写4 个汇编语言的函数、6 个c 函数再定义3 个宏和1 个常量,代码长度只不过两三百行,移植起来并不困难1 2 2 1 。uc o s - i i的不足之处是它只适合于简单、任务数目较少的应用。m i c r o s o f tw i n d o w sc e 是一个高效率的多平台操作系统。w i n d o w sc e n e t是w i n d o w sc e 3 0 的后续版本,是为建立针对掌上设备、无线设备的动态应用程序和服务提供了一种功能丰富的操作平台,它能在多种处理器体系结构上运行,并且通常适用于那些对内存占用空间具有一定限制的设备。w i n d o w sc e n e t 可在四种主要的c p u 体系结构和2 0 0 多种c p u 上运行。w i n d o w sc e n e t 具有开发环境全面、模块化、实时性能、多媒体能力、网络和通信支持、高级应用程序服务、硬件支持、可定制的图形设备界面等特点。q n x 是一个实时可扩充的操作系统。它是一个符合p o s i x 标准的、应- 1 1 硕士学位论文m a s t e r st h e s i s用于嵌入式系统的操作系统。它可以应用于多种c p u ,具有较好的实时性,支持多种网络,其中包括普通的基于t c p i p 的网络以及基于f l e e t ( f a u l t t o l e r a n t ,l o a d b a l a n c i n g ,e m c i e n t ,e x t e n s i b l e ,t r a n s p a r e n t ) 协议【”j 的q n x 专用网。q n x 设计时采用了微内核结构,其设备驱动程序也是作为标准进程来实现的。q n x 支持多种文件系统,特别是s m b 文件系统,使得q n x 系统可以很好地同其它系统进行数据的网络共掣1 ,2 “。2 2 嵌入式l i n u x 操作系统2 2 1 嵌入式l i n u x 操作系统的特点l i n u x 的出现为嵌入式操作系统提供了一个极有吸引力的选择,它是一个和u n i x 相似、以核心为基础的、完全内存保护、多任务多进程的操作系统1 4 】。l i n u x 是开放源代码的操作系统,只要不违反g p l ( g e n e r a lp u b l i cl i c e n s e ) 协议,任何人都可以在其软件底层进行修改和重新分配资源,这对于计算环境经常发生变化的企业用户或开发者来说,可以带来非常明显的效益或效率。嵌入式l i n u x ( e m b e d e dl i n u x ) 是指l i n u x 经过小型化裁减后,能够固化在容量只有几十m 或几百m 字节的存储器芯片或单片机中,应用于特定嵌入式场合的专用l i n u x 操作系统t ”i 。运行嵌入式l i n u x 的c p u 可以是x 8 6 、a l p h a 、s p a r c 、m i p s 、p p c 、a r m 、m o t o r o l a 等。嵌入式l i n u x 使用的存储器往往不是软磁盘、硬盘、z i p盘、c d r o m 、d v d 等常规存储器,而是一些体积极小( 与主板上的b i o s大小相近) 、存储容量不太大的存储器,如r o m 、c o m p a c t f l a s h 、m s y s t e m s的d i s k o n c h i p 、s o n y 的m e m o r y s t i c k 、i b m 的m i c r o d f i v e 等。其“内存”可以使用普通的内存也可以使用专用的r a m 。嵌入式系统往往不需要p c 平台上通常使用的键盘、鼠标、显卡、显示器等输入输出设备,而使用一些特有的设备和接口,如p c m c i a 接口、l c d 显示屏、触摸屏、d o c( d i s k o n c h i p ) 等。大多数传统的嵌入式系统工作模式是:内核和所有的应用程序,在系统硕士学位论文 u s r st h e s i s启动后,都被装入到内存中运行【4 】。l i n u x 支持这种模式,因而嵌入式l i n u x系统支持无盘工作模式,可以没有磁盘或文件系统。同样,嵌入式系统也可以不使用b i o s 来启动,只需要简单的引导启动代码即可。当台p c 机开机后,c p u 首先从预先设置地址的b i o s 内读取指令,执行低水平的c p u 初始化和其它硬件配置等一系列操作来启动系统。b i o s 代码能处理多种硬件配置,具有较大的灵活性,而嵌入式系统并不需要如此灵活的引导程序,其硬件配置通常是不变的,引导程序往往只需要处理一种硬件的配置即可。简单说来,一个最小的启动代码一般包括:通电自检模块、内存检测模块、l e d 驱动、以及其它必须的硬件驱动( 如启动l i n u xo s 的特定硬件的驱动代码) 1 4 。嵌入式系统的引导启动代码必须与硬件相符且按特定的顺序执行,因而要求开发人员对系统的硬件的配置和工作模式相当熟悉。在l i n u x 日益流行的今天,嵌入式l i n u x 渐渐得到越来越多的程序员的关注。其用途之广达到了前所未有的地步:从移动计算平台、信息家电( 机顶盒,数字电视) 、媒体手机、到工业、商业控制( 智能工控设备,p o s a t m机) 、电子商务平台、甚至军事应用。由此可见,嵌入式l i n u x 的吸引力是巨大的。同时嵌入式硬件生产商得到了越来越多的全球化的标准,许多厂商都意识到嵌入式l i n u x 的适用的广泛性,不少公司正在开发嵌入式l i n u x 。相信不久,嵌入式l i n u x 在嵌入式硬件生产商中将大受欢迎。2 2 2l i n u x 嵌入式系统开发的优势l i n u x 由于自身的优点非常适合作为嵌入式操作系统,主要表现为以下几点:1 免许可证费用大多数商业操作系统,如w i n c e ,v x w o r k s 等对每套操作系统均收取一定的许可证使用费用。相对而言,l i n u x 是一个免费的优良操作系统,公开源代码,只要不违反g p l 协议,任何人都可以使用、修改和发布l i n u x 。2 高度稳定性和目前流行的桌面操作系统相比,l i n u x 是非常稳定和可靠的,并且由于硕士学位论文m a s t e r st h e s i sl i n u x 内核的稳定性使得l i n u x 在移植到特定平台后与通用平台具有样的高稳定性,虽然新平台下的外围设备可能完全不同。3 移植容易l i n u x 是一个多平台的操作系统,可以运行于x 8 6 、p o w e rp c 、m i p s等多种处理器之上,对嵌入式应用来说这一点尤为重要。据统计,一个设计优良的嵌入式系统移植到另平台只需改动其中的4 代码【29 1 。同时由于l i n u x 采用的模块机制,使设备驱动程序几乎不需要修改就可适用于其它平台,方便移植。4 强大的网络功能l i n u x 天生就是一个网络操作系统。几乎所有的网络协议和网络接口都己经被定制在l i n u x 中。l i n u x 内核在处理网络协议方面和标准的u n i x 相比,其执行效率更高,吞吐量更大。l i n u x 内核对网络协议栈的设计是从简洁实用的角度出发,实现出一整套的网络协议模块。l i n u x 不仅可以支持一般用户需求的f t p ( f i l et r a n s f e rp r o t o c 0 1 ) 、t e l n e t 和r l o g i n 协议,还能提供对网络上其它主机文件的访问( n f s 网络文件系统) 。在w i n d o w s 9 x n t 局域网里面,l i n u x 可以通过s a m b a 协议进行l i n u x 和w

温馨提示

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

评论

0/150

提交评论