两种开源嵌入式操作系统的比较.pdf

上传人:qwe****56 文档编号:74645424 上传时间:2023-02-27 格式:PDF 页数:5 大小:278.66KB
返回 下载 相关 举报
两种开源嵌入式操作系统的比较.pdf_第1页
第1页 / 共5页
两种开源嵌入式操作系统的比较.pdf_第2页
第2页 / 共5页
点击查看更多>>
资源描述

《两种开源嵌入式操作系统的比较.pdf》由会员分享,可在线阅读,更多相关《两种开源嵌入式操作系统的比较.pdf(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、、竺竺兰两种开源嵌入式操作系统的比较毕海波黄忠(中国人民银行乌鲁木齐中心支行科技处,乌鲁木齐8 3 0 0 0 2)摘要:由于嵌入式系统应用的扩展,功能越来越复杂,特别是网络方面的应用以及多任务方面的应用的增多所以可以肯定以后的开发趋势必然是基于嵌入式操作系统的。主要介绍u c l i n u X 和e C o s 这两种嵌入式操作系统,对它们的主要性能进行对比分析,最后得出结论。关键词:嵌入式;操作系统;u C h n u)(;e C o s1两种开源嵌入式操作系统介绍e C o s 和u C l i n u x 操作系统都是当前得到广泛应用的两种嵌入式操作系统。相对于u C O S 它们是

2、真正免费且公开的源码。e C o s 适合小型控制系统它采用微内核结构,具有执行效率高、占用空间小、实时性能优照和可扩展性强等特点e C o s 最小版本只有几百个字节。一般一个完整的网路应用其二进制的代码也就1 0 0 K B 左右。u C l i n u x 则是继承标准“n u x 的优良特性。针对嵌入式处理器的特点设计的一种操作系统。具有内嵌网络协议、支持多种文件系统。其编译后目标文件可控制在几百K 量级e C o s 结构小巧、具有可剥夺实时内核的实时操作系统。其内核提供任务调度与管理、时间管理、任务间同步与通信、内存管理和中断服务等功能。u C l i n u x 是一种早期的嵌入

3、式“n u x 版本。同标准L i n u X 相比它集成了标准L i n u x 操作系统的稳定性、强大网络功能和出色的文件系统等主要优点但不支持M M U(内存管理单元)其多任务的实现需要一定技巧。也就是增加了多任务项目的开发复杂度。2两种嵌入式操作系统主要性能比较嵌入式操作系统是嵌入式系统软硬件资源的控制中心它以尽量合理的有效方法组织多个应用软件共享嵌入式系统的各种资源。所谓合理有效的方法,指的就是操作系统如何协调并充分利用硬件资源来实现多任务。支持文件系统需求也越来越多。因为可以方便和P C 共享数据进程调度、文件系统支持和系统移植是在嵌入式操作系统实际应用中最常见的问题下文就从这几个

4、角度人手对e C o s 和u C l i n u x 进行分析比较。嵌入式操作系统还有一个特点就是针对不同的平台,系统不是直接可用的一般需要经过针对专门的移植才能正常工作。3进程调度任务调度主要是协调各个任务对系统内资源(例如内存、I o 设备、C P U)的争夺使用。进程调度又称为C P U 调度其根本任务是按照某种原则为处于就绪状态的进程分配C P U。由于嵌入式系统中内存和I o 设备一般都和C P U 同时归属于某进程所以任务调度和进程调度概念相近,很多场合不加区分。下文中的“任务”其实就是指“进程”。进程调度可分为“剥夺型调度”和“非剥夺型调度”两种基本方式。所谓“非剥夺型调度”是

5、指:一旦某个进程被调度执行则该进程一直执行下去直至该进程结束或由于某种原因自行放弃C P U 进入等待状态才将C P U 重新分配给其他进程。所谓“剥夺型调度”是指:一旦就绪状态中出现优先权更高的进程,或者运行收稿日期:2 0 1 1 0 3 0 1修稿日期:2 0 1 1 0 3 1 9作者简介:毕海渡(1 9 8 0 一),男,新疆鸟鲁木齐人,工程师,硕士,研究方向为信息系统与管理囝现代计算机2 0”0 3万方数据的进程已用满了规定的时间片时便立即剥夺当前进程的运行(将其放回就绪状态)把C P U 分配给其他进程。作为实时操作系统使用多任务抢占机制具有最小的中断延迟支持嵌入式系统所需的所有

6、同步原语,并拥有灵活的调度策略和中断处理机制。e C o s 具有两个调度器位图调度器和多级队列调度器,前者设置若干个不同的线程优先级。线程个数有严格的限制。多级队列调度器具有优先级的F I F 0 调度策略采用时间片轮转策略进行调度时间片大小可通过配置工具设置u C l i n u】【的进程调度沿用了L i n u x 2 0 内核传统采用“非剥夺型调度”系统每隔一定时间挂起进程同时产生周期性的时钟计时中断并通过调度函数(定时器处理函数)决定进程什么时候拥有它的时间片。然后进行相关进程切换这是通过父进程调用f o r k 函数生成子进程来实现的u C l i n u】【系统f o r k 调

7、用完成后要么子进程代替父进程执行(此时父进程已经s l e e p),直到子进程调用e x i t 退出:要么调用e x e c 执行一个新的进程这个时候产生可执行文件的加载即使这个进程只是父进程的拷贝这个过程也不可避免。当子进程执行e x i t 或e x e c后,子进程使用w a k e u p 把父进程唤醒,使父进程继续往下执行。u C l i n u x 由于没有M M U 管理存储器其对内存的访问是直接的所有程序中访问的地址都是实际的物理地址。操作系统队内存空间没有保护,各个进程实际上共享一个运行空间。这就需要实现多进程时进行数据保护也导致了用户程序使用的空间可能占用到系统内核空间

8、这样给开发人员提出了更高的要求。如果从易用性这一点来说u C l i n u)【的内存管理是一种走回头路的方式将操作系统的发展退回了到了U n i x 早期或是D O S 系统时代开发人员必须参与系统的内存管理。从编译核心开始开发人员必须告诉系统开发平台上拥有多少的内存接着系统将在启动的初始化阶段对内存进行分页动作并且标记已使用以及未使用的内存。系统将在执行应用程序时对这些分页内存进行分配与使用由上述分析可以得知e C o s 内核是针对实时系统的要求设计实现的使用相对简单可以满足较高的实时性要求。而u C l i n u】【则在结构上继承了标准“n u)【的多任务实现方式,仅针对嵌入式处理器

9、特点进行改良。其要实现实时性效果则需要使系统在实时内核的控制下运行。4操作系统的移植嵌入式操作系统移植的目的是指使操作系统能在某个微处理器或微控制器上运行。e C o s 和u C l i n u x 都是源码公开的操作系统且其结构化设计便于把与处理器相关的部分分离出来所以被移植到新的处理器上是可能的。以下对两种系统的移植分别予以说明。(1)e C o s 的移植匿周 正臣堕口匪囹r+1目标硬件系统平台图l 字典文件如图l 所示。e C o s 采用模块化设计将不同功能的软件分成不同的组件,其核心组件包括:硬件抽象层(H a r d w a r eA b s t r a c tL a y e

10、r,H A L)、内核(K e m e l)、标准C和数学库、设备驱动程序、G N U 调试器(G D B)。这些组件具有可重用性分别位于系统的不同层次。用户可以根据自己应用的特定需求来设置组件中的配置选项去掉不需要的组件从而创建一个最适合应用需求且体积最精简e C o s 镜像。硬件抽象层(H A L)处于e C o s 层次结构的最低层对处理器结构和系统硬件体系结构进行了抽象并对上层提供统一的接口。因此H A L 的移植是e C o s 系统移植的关键改写H A L 以及相关的驱动程序后可以迅速地实现e C o s 移植。硬件抽象层的移植根据所抽象的对象的不同可以分为3 种不同的类型分别是

11、平台抽象层移植、变体抽象层移植和体系结构抽象层移植。平台抽象层(P l a 怕mH A L)移植针对的是H A L 平台层该子层次对应于一系列的硬件包括选择的处理现代计算机2 0 1 1 0 3万方数据、竺竺兰器或其变体。平台抽象层移植时可采用e C o s 支持的且与新硬件平台相近的平台H A L 作为模板对内存布局等初始化代码进行修改。变体抽象层(V a r i a n tH A L)移植针对的是H A L 的变体层该子层可支持特定C P U 与同类体系结构的普通C P U 之间的差异。变体抽象层移植通过对中断、高速缓存及其他特性的重定义来覆盖体系结构抽象层中的默认实现。体系结构抽象层(A

12、 r c h i t e c t u r eH A L)移植针对的是H A L 的体系结构层。e C o s 支持的每种处理器系列都被看成是一种不同的体系结构例如A R M 系列、P o w e r P C系列等。在e C O S p a c k a g e s、l l a l 目录下每一种体系结构都有对应的子目录,例如e C O s p a c k a g e s h a l p o w e r p c等。而每个子目录中又包含了用于支持某个特定处理器的平台抽象层和变体抽象层子目录例如e C O S p a c k a g e s l a l p o w e r p c I T l b x 目

13、录中包含的代码用于支持P o w e r P CM B X 8 6 0 这个平台的初始化编程而e C O S p a c k a g e s l l a l p o w e r p c M P C 8 x x 目录中的代码用于支持M P C 8 x X 处理器系列的不同变体(包括M P C 8 2 3、M P C 8 5 0、M P C 8 6 0)。体系抽象层移植同样可以选择相近的H A L 作为模板但是每种体系需要专门的e C o sG N UC C+编译器支持若已有的编译器不支持新体系结构,则需要先进行新体系编译器的移植。硬件抽象层的这3 个子模块之间没有很明显的界限。对于不同的目标平台

14、这种区分具有一定的模糊性。一般来说,目标系统应该将体系结构抽象层、变体抽象层和平台抽象层分别使用不同的包来加以实现。(2)u C l i n u x 的移植由于u C l i n u x 其实是L j n u x 针对嵌入式系统的一种改良。虽然也是模块化的设计。但其结构比较复杂,其移植也复杂得多。主要体现在u C l i n u x 由通用操作系统演化而来通用操作系统主要是对通用处理器而言,所以对处理器支持的架构就要比嵌入式系统复杂。总的来说就是有着较多的代码冗余。一般而言要移植u C l i n u X 目标处理器除了应满足上述e C o s 应满足的条件外还需要具有足够容量(几百K 字节以

15、上)外部R O M 和R A M。u C l i n u x 的移植大致可以分为3 个层次:板级移植。这种移植的工作量最小,因为所用处理器已被u C l i n u x 支持的话。板级移植需要在l i n u】【囝现代计算机2 0 1 1 0 3a r c l l,p l a 渤n 1 1,中建立一个相应板的目录,再在其中建立相应的启动代码c r t 0 m m s 或叫0r a m s 和链接描述文档m m 1 d 或r a m 1 d 就可以了。然后再完成驱动程序和环境变量设置等内容。平台层次的移植,这种移植工作量要大些u C l i n u x 没有支持目标处理器所以要自己添加。但是已经

16、支持了相似的处理器所以还是可以找到很多借鉴的地方。需要在相关体系结构目录下建立相应目录并编写相应代码。例如M C 6 8 E Z 3 2 8 就是基于无M M U 的m 6 8 k 内核的此时的移植需要创建l i n u x a r c l m 6 8 k n o m m“D l a t f o n l l,M C 6 8 E z 3 2 8 目录并在其下编写跟踪程序(实现用户程序到内核函数的接口等功能)、中断控制调度程序和向量初始化程序等。结构层次的移植。如果待移植处理器的结构不同于任何已经支持的处理器结构则需要修改l i n u】【,a r c h 目录下相关处理器结构的文件。这种情况的移

17、植工作量最大。需要移植者按照u C l i n u x 的编码架构完成中断处理上下文、内存映射的维护、任务上下文和初始化过程等的代码并且将这些代码组织在h n u x,a r c l l,目录下。然后再做平台层次的移植和板级移植。5结语总之操作系统的选择是由嵌入式系统的需求决定的。简单的说就是,小型控制系统可充分利用e C o s小巧且实时性强的优势,而且如果开发者习惯C+,那采用e C o s 会更合适。当然选u C l i n u)【是不错的选择,可以综合降低系统的成本。参考文献 1】A l e s s a n d mR u b i n i,J o n a t h a nC o r b e

18、 t“n u x 设备驱动程序【M】魏永明等译中国电力出版社,2 0 0 2【2】邹思轶嵌人式“n u x 设计与应用【M】清华大学出版社,2 0 0 2【3】王学龙嵌入式L i n u)【系统设计与应用【M】清华大学出版社2 0 0 l 4】R i c kG r e h a n,R o b e r tM o o t e,L n 9 0C y l i a x 3 2 位嵌入式系统编程【M】许汝峰译中国电力出版社,2 0 0 1【5】蒋句平嵌入式可配置实时操作系统E C O S 开发与应用【M 机械工业出版社,2 0 0 4(下转第8 1 页、万方数据C O n S t r U C t i O

19、nO fD a t a b a S eS e C ur i t yS y S t e mB a s e dO nW e bZ H A N GY u a n _ j i n(D e p a r t m e n to fT e a c h i n gP l a c e,G u a n g d o n gZ h a o q i n gB r o a d c a s tT e l e V i s i o nU I l i V e r s i t y,Z h a o q i n g5 2 6 0 6 0)A b s t r a c t:T h ew e bd a t a b a s es y s t e

20、 mi sp l a y i n gt h ev i t a lr o l ei nt l l en e 附o r ks y s t e md a yb yd a y,h o wt os t r e n 昏h e nt h eW e bd a t a b a s es y s t e ms e c u r i t y,b e c o m e st h ei m p o n a n tt 叩i co ft l l en e t w o r kr e s e a r c h F r o mW e bd a t a b a s ea c c e s st e c h n o l o g y,a n

21、a l y z e st h es e c u r i t yc 五s i sw h i c hd a t a b a s ef 如e s,f 如mt h ee s t a b l i s h m e n to fs e c u r i t ym o d e l,W e bd a t a b a 8 e 印p l i c a t i o nw e a k n e s se x a m i n a t i o n,t h es e c u r ed e f e n s e,t h ed a t a b a s eb a c k u pw i t hr e s t o r ea n ds oo n

22、,t om a k et I I er e s e a r c ha n dd i s c u s s i o no nt h eW e bd a t a b a s es e c u r i t ym e c h a n i s m,a n di th a st I l ec e r t a i nr e f e r e n c ev a l u ef o rt h ec o n s t m c t i o no ft h eW e bd a t a b a s es e c u r i t vs v s t e m K e y w O r d s:W e bD a t a b a s e;

23、S e c u r i t yD e f e n s e;S e c u 而t yM e c h a n i s m(上接第7 4 页)C o m p a r i S O nO fT w oO p e n S O Ur c eE m b e d d e dO p e r a t i n gS y S t e mB IH a i b o,H U A N GZ h o n g(D e p a r t m e n to fS c i e n c ea n dT e c h n o l o g y,U n l m q iC e n t m lS u bB r a n c ho ft h eP e o

24、p l e,sB a n ko fC h i n a,U m m q i8 3 0 0 0 2)A b s t r a c t:B e c a u s eo ft h ee m b e d d e ds y s t e ma p p l i c a t i o ne x p a n s i o n,t 1 1 ef u n c t i o ni sb e c o m i n gm o r ea n dm o r ec o m p l e x,e s p e c i a l l yn e t w o r ka p p l i c a t i o n sa n dm u l t i t a s k

25、 i n ga p p l i e a t i o n si n c r e a s e s,s 0l a t e rd e v e l o p m e n tt r e n di sn e c e s s a r i l yb a s e do ne m b e d d e do p e r a t i n gs y s t e m M a i n l yi n t I D d u c e st h eu C l i n u xa l l de C o s,t h e s et w ok i n d so fe H l b e d d e do p e r a t i n gs y s t

26、e m,c o n t m s t sa n da n a l y z e st h e i rm a i np e I f o 肌a n c e,a n dg i v e st h ec o n c l u s i o n K e y w o r d s:E m b e d d e d;0 p e m t i n gS y s t e m;u C l i n u x;e C o s现代计算机2 0 1 1 0 3万方数据两种开源嵌入式操作系统的比较两种开源嵌入式操作系统的比较作者:毕海波,黄忠,BI Hai-bo,HUANG Zhong作者单位:中国人民银行乌鲁木齐中心支行科技处,乌鲁木齐,830002刊名:现代计算机(专业版)英文刊名:MODERN COMPUTER年,卷(期):2011(6)本文链接:http:/

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 其他杂项

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁