




已阅读5页,还剩74页未读, 继续免费阅读
(计算机应用技术专业论文)基于adeos的rtailinux的研究及其实时性改进.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研 究成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他 人已经发表或撰写过的研究成果,也不包含为获得 重迭虫g 电太堂或其他教育 机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡 献均已在论文中作了明确的说明并表示谢意。 学位论文作者签名:划者蔼l 宏签字日期:如d 呵硝肋日 学位论文版权使用授权书 本学位论文作者完全了解一重庞蜜g 电太堂 有关保留、使用学位论文的规 定,有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允许论文被查 阅和借阅。本人授权重麽邮电太堂可以将学位论文的全部或部分内容编入 有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论 文。 ( 保密的学位论文在解密后适用本授权书) 学位论文作者签名:友步嘀当 签字日期:2 p c 年6 月刃日 导师签名: 辩醐。冲如舢 重庆邮电大学硕士论文 摘要 随着航空航天、军事、汽车电子和信息家电等行业的发展,实时系统被应用 到更广泛、更复杂的环境中,并对实时系统的性能提出了更高的要求,而实时操 作系统作为实时系统的核心起着决定作用。与此同时,一个开源的免费的操作系 统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 系统。但是,它们当中很多是在标准“n u x 内核的基础上进行修改,无 法达到硬实时的要求。而采用双内核结构的基于a d e o s 的r t a i l i n u x 系统,不 仅能达到硬实时的要求,而且开源免费。该系统对l i 姗x 作了两方面扩展:一是在 硬件层之上构建了一个硬件抽象层a d e o s ;二是增加了一个实时微内核r t 趾。 在r t m 中加载l 盯模块,可以为用户空间实时应用程序提供硬实时能力,方 便实时应用程序开发。 借助r t a i l i n u x 系统开源的特性,通过分析其源代码,以自下而上的顺序对 a d e o s 和i 汀灿的实现机制进行了深层次的研究。这对了解和移植r t 趾具有重 要意义,也对今后的研究起到抛砖引玉的作用:基于l i n u x 内核模式和基于i ,x r t 用户模式,对重负载下平均任务响应时间进行了测试及对比。实验结果表明,在 重负载下基于l 汀的用户空间实时任务响应更快;在进一步分析i 玎址实时任 务管理的实现代码中发现,r t 越原有的双向链表结构的就绪任务队列,需要按优 先级遍历链表来定位就绪任务,在任务较多时会影响r t 触的实时性。通过引入优 先级位图的方式,将就绪任务队列按照优先级从高到低的顺序分级,每一级采用 双向循环链表,这样可以加快任务查找、插入和删除的时间。并且基于f o 和 r r 两种调度方式,分别对原i 汀灿和改进后的r t 触进行测试。实验结果表明, 采用基于优先级位图方式的就绪任务队列,能迸一步提高r t 灿的实时性,并且能 适应更复杂的调度方式。 关键词:实时l i n u x ,双内核,a d e o s ,删,i ,x r t ,优先级位图 重鏖坚皇盔堂堡主迨窒 垒! ! 塑堕 a b s t r a c t r e a lt i m es y s t e mh a sb e e na p p l i e dt om o r c e x t e n s i v ea n dc o m p l i c a t e d e n v i r o 姗e n t sr e c e n t l y ,a c c o m p a n ) ,i n gm ee m e 唱e n c eo fi n d u s t r i e so fa e r o n a u t i c sa i l d a s 缸伽a u t i c s ,m i l i t a r ) ra f r a i r s ,a u t oe l e c t r o n i c sa i l di n f b 彻a t i o n 印p l i a i l c e ,e t c t l l i sh a s a p p e a lm o r er e q u i r e m e n t sa b o u tp e r f o 肌a i l c eo fr e a lt i i l l es y s t e m t h e r e f o r e ,r e a lt i m e 0 p e r a t i n gs y s t e m ,w h i c hi s m ec o r eo fr e a lt i m es y s t e m ,h a sd e c i s i v ea c t i o no nt h e p e r f o 咖a l l c eo fe n t i r es y s t e m a tt h es 锄et i m e ,a no p e ns o u r c e 仔e eo p e r a t i n gs y s t e m c a l l e dl i n u xi sd e v e l o p i n gr a p i d l y p e o p l eh o p et h e yc a i l 印p l yl i n u xt o 锄b e d d e d s y s t e mr e l y i n go nt h ea d v a n t a g eo fs u p p o r t i n go fm u l t i - h a r d w a r ep l a t f o m s ,w h e r e a s 锄b e d d e ds y s t e mm o s t l yn e e dt ob eu s e dt or e a lt i m ee n v i r o l l r l l e n t s t h u s ,i m p r o v i n g t h er e a l t i i i l ep e r f o m a l l c eo fl i m i sn e c e s s a r y m a n yr e s e a r c hi n s t i t u t i o n s ,w h i c hm a k et h e i re f r o r t sa ti m p r o v i n gt h er e a lt i m e p e r f 0 肌a i l c eb yu s i n gv a r i o u sw a y s ,h a v ed e v e l o p e dm a n yr e a lt i m es y s t 锄sb a u s e do n l i n u x h o w e v e r ,al a r g em m l b e ro ft h e ma r em a d em o d i f i c a t i o n su p o nt h ek e m e lo f s t a i l d a r dl i n u xa i l dc o u l di l o ta c l l i e v et l l er e q u i r e m e mo fh a r dr e a lt i m e n e v e r t h e l e s s , r 1 队i l i n u ) ( s y s t e m ,w 1 1 i c ha d o p t sd u a l k e m e ls t m c t u r ea n db a s e so na d e o s ,n o to n l y c a l la c h i e v et h er e q u i r e m e n to fh a r dr e a l t i m e ,b u ta l s oi so p e ns o u r c ea i l d 仔e e 。r 1 h 邪e x t e n d e dl i m l 】( i 1 1t w oa s p e c t s :o n ei sc o n s 伽j c t i n gah a r d w a r ea b s t r a c t i o n1 a y e r a d e o su p o nh a r d w a r el a y e r ;a n o t h e ri sa d d i n gar e a l t i m em i c r o k 锄e lr 1 w r t a i c a i lp r o v i d eh a r dr e a l t i m ec 印a b i l i t ) rf o rr e a l t i m ea p p l i c a t i o n so fu s e rs p a c eb y1 0 a d i n g m o d u l el h :w l l i c hf a c i l i t a t e st h ed e v e i o p m e n to fr e a l t i m e 印p l i c a t i o n s t h ei m p l 锄e n t a t i o no fa d e o sa n dr - t a ii sd e 印l ys t u d i e di nt h et o p _ d o w no r d e r b ya i l a l y s i so fo p e n s o u r c ec o d eo fr r a i l i i l u x ,w l l i c hi st h ef e a t u r eo fm es y s t e m t h i s h a si m p o r t a n tm e a i l i n gf o rc o n t r o l l i n ga i l d 仃a n s p l a n t i n gr r a i w t l i c ha l s oc a nd i r e c t 彻= u r er e s e a r c h e s t h er e s u l t sb a s e do nk e m e lm o d eo fl i n u xa n du s e rm o d eo fl 玎 a r ec o m p a r e db yt e s t i n gm e a i lt a s kr e s p o n s eu i l d e rh e a v yl o a d t h ee x p e r i m e mr e s u l t s i n d i c a t et h a tt h er e a lt i m et a u s ko fu s e rs p a c eb a s e do nl x r tc a nr e s p o n df 酤t e ru n d e r h e a v y1 0 a d b ym i r t h e ra 1 1 a 1 ) ,z i n gt h ei m p l e m e n t a t i o nc o d eo f r e a lt i m et a s km a i l a g e m e n t o fr 1 艮u ,w ef i n dt h a tt h er e a d yt a s kq u e u eo fd o u b l yl i n k e dl i s to fo r i 垂n a lr 1 a 1w i l l a a e c tm er e a “i m ep e r f o m 锄c eo fi 珂a 1w h e nt h e r ea r em a n yt a s k s ,b e c a u s et l l er e a d y t a u s kq u e u en e e d s 仃j w e r s el i n k e dl i s tt ol o c a t er e a d yt a s k t h er e a d yt a s kq u e u ei s c l a s s i f i e d 丘o m1 1 i 曲p r i o r i t yt o1 0 wp r i o d t yb yi n 仃0 d u c i n gp r i o r i t yb i t m 印,a i l de a c h i l i i i 重庆邮电大学硕士论文 目录 摘要 a b s t r a c t 第一章引言 1 1 研究背景及意义 1 2 实时系统概述 1 2 1 实时系统的概念及特点” 1 2 2 实时操作系统的概念及特点” 1 2 3 衡量实时操作系统性能的指标” 1 3 论文主要工作 1 4 论文组织结构 第二章l i n u x 实时性研究” 2 1l i n u x 的发展及现状 2 2 “n u x 的优势。 2 3l i n u x 实时调度方式 2 4 影响l i n u ) 【实时性的因素 2 4 1 关中断问题” 2 4 2 内核的不可抢占性“ 2 4 3 时钟粒度粗糙” 2 4 4 虚拟内存管理导致的不可预测性” 2 5 提高l i i 呶实时性的方法 2 5 1 软件中断模拟” 2 5 2 增加内核抢占点- 2 5 3 利用s 技术实现可抢占内核 2 5 4 实现细粒度时钟一 2 5 5 改进进程调度算法” 2 5 6 采用双内核结构 2 6 具有代表性的实时l i n u x 系统分析 2 6 1k i 瓜t l i n u x 2 6 2r e d l i n u x 2 6 3h a r d b a ti ,i n u x “ 重庆邮电人学硕士论文目录 2 6 4r :i - l l n u x ”l5 2 6 5 基于a d e o s 的r t a i l i n u ) 【1 6 2 7 小结17 第三章a d e o s 的原理与实现”18 3 1a d e o s 简介18 3 2a d e o s 基本原理1 9 3 3a d e o s 底层机制的实现2 0 3 3 1a d e o s 重要的全局变量2 1 3 3 2 域的实现2 2 3 3 3a d e o s 初始化过程分析2 4 3 3 4 域注册的实现- 2 5 3 3 5a d e o s 的中断处理2 5 3 4 小结2 7 第四章删的实现及基于l x i 盯模块的实时性测试2 8 4 1 删的体系结构2 8 4 2r 1 队i 的初始化2 9 4 3 删的中断处理3 0 4 4 删的时钟中断3 0 4 5r 1 认i 的实时任务管理3 1 4 5 1 实时任务的创建3 1 4 5 2 实时任务定时器的设置3 4 4 5 3 实时任务的调度3 5 4 6r t a i 的l x r t 模块3 5 4 7 基于i ,x r t 的实时性测试方案的设计与实现3 6 4 7 1 测试方案的设计3 7 4 7 2 基于l i n u x 内核模式的测试程序实现“3 8 4 7 3 基于i 玎用户模式的测试程序实现4 0 4 7 4 测试结果及分析- 4 4 4 8 小结4 5 第五章对r 1 实时性的改进及测试4 6 5 1r 1 脚实时任务管理的进一步分析4 6 5 1 1 与实时任务管理相关的主要函数4 6 v 重庆邮电大学硕士论文 5 1 2r t a i 的就绪任务队列结构” 5 2 基于优先级位图的实时性改进5 0 5 2 1 优先级位图的思想5 0 5 2 2 对就绪任务队列的改进51 5 2 3 对调度器的修改5 5 5 2 4 对其他一些相关函数的修改5 6 5 3 实时性测试5 8 5 3 1 多实时任务编程中的问题5 8 5 3 2 测试方案的设计”6 0 5 3 3 基于f o 调度方式的测试程序实现”6 0 5 3 4 基于r r 调度方式的测试程序实现6 4 5 3 5 测试结果及分析6 4 5 4 小结6 5 第六章总结及未来工作“6 6 6 1 总结6 6 6 2 未来工作6 7 致 射6 8 攻硕期间取得的研究成果6 9 参考文献7 0 v 1 重庆邮电大学硕士论文 第一章引言 1 1 研究背景及意义 第一章引言 随着计算机硬件的发展,实时系统广泛应用于航空航天、军事、工业控制、 仪器仪表和信息家电等行业。人们对实时系统在性能和安全等方面均提出了更高 的要求。对一个实时系统来说,最基本、最重要的就是实时操作系统,它是整个 系统的基础。因此实时操作系统在许多重要的计算机应用领域起着不可替代的作 用。这些领域对每个关键任务所用的最长时间都有着严格的要求,只有采用实时 操作系统才能够保证关键任务能在规定的时间内完成。这些应用的需求极大地促 进了实时操作系统的发展。目前i m x 作为一种成熟、开放、标准并且兼容 p o s 1 0 0 3 实时规范的操作系统,成为目前使用最广泛的实时操作系统;而 w i n d o w s 只部分兼容p o s 1 0 0 3 规范,所以在实时领域使用得并不多。此外还有 许多基于微内核的商业实时操作系统,它们更多用于嵌入式系统中。这些商业实 时操作系统中,有的价格昂贵,不便于控制产品成本:有的不开放源代码,难以 掌控其安全性;还有的功能过于简单,只适用于简单环境。由于缺少一个开放的、 标准的、有广泛支持的、高效而又廉价的实时操作系统,因此很多机构开始研究 将功能强大的通用操作系统改造成实时操作系统。 l i n u ) 【具有功能强大、开放源码、支持多种硬件平台、模块化设计、函数接口 符合国际和工业标准等特点,自然成为实时化改造的首选。但是l i n u x 本身是按 照分时系统设计的,在实时性方面存在较大的不足,不能直接应用在实时环境里。 这就有必要采用一定的技术方法,对其实时性能进行改进,使其达到实时操作系 统的要求。 实时“n u 】【的发展有两方面的驱动因素:一方面来自于l i n u x 对提高实时响应 的要求;另一方面来自于实时系统对复杂应用的要求。目前,实时l i n u x 的发展受 到全世界的广泛关注,根据不同的实时化改造方法,国内外已经研究出了多种实 时l i n l l ) 【,它们有的能满足软实时要求,有的能满足硬实时的要求。本文就是在这 样的背景下,对实时系统和实时操作系统展开研究。 重 1 2 实时系统概述 1 2 1 实时系统的概念及特点 实时系统在工业、商业和军事等领域都有非常广泛的用途,并且已经有很多 实际的应用。一般来说,实时系统通常是比较复杂的,因为它必须处理很多并发 事件的输入数据流,这些事件的到来次序和几率通常是不可预测的,而且还要求 系统必须在事先设定好的时限内做出相应的响应。实时是一个相对概念,实时并 不是“快”。其确切含义应该是“及时 ,即在系统允许的时间范围内完成任务。“实 时 与“快的最大区别在于:“实时”强调在任何情况下,都能保证系统行为可 预测。实时系统并非是指“快速”的系统,实时系统有限定的响应时间,从而使 系统具有可预测性。 在实时计算中,系统的正确性不仅仅依赖于计算的逻辑结果,而且依赖于结 果产生的时间。对于实时系统来说最重要的要求,就是实时操作系统必须有满足 在一个事先定义好的时间限制中对外部或内部的事件进行响应和处理的能力。因 此,实时系统可以定义为“一个能够在事先指定或确定的时间内完成系统功能和 对外部或内部,同步或异步时间作出响应的系统”。 实时系统分为硬实时系统和软实时系统。硬实时系统,必须能及时对外部事 件做出反应,绝对不能容许任务错过时限。硬实时系统一旦错过时限就意味着巨 大的损失和灾难。软实时系统,指在系统负荷较重的时候,任务错过时限会引起 系统性能下降,但是不会造成太大的危害。 实时系统具有以下一些特点: ( 1 ) 嵌入式系统:实时系统通常是嵌入式的系统,也就是由封装好的软件系 统控制与其相关的硬件。 ( 2 ) 与外部环境交互:实时系统通常需要与外部环境进行交互,例如,可以 控制机器及生产过程,或者监控化学反应并随时汇报危急情况,这种情况通常需 要从外部接收数据并提供输出和控制外部环境。 ( 3 ) “反应 系统:很多实时系统都是“反应 的系统,也就是说,由事件 驱动并且必须对外界事件进行响应。 ( 4 ) 并发处理:绝大多数实时系统的一个重要特点是并发处理,通常,事 件发生的顺序是不可预测的。 ( 5 ) i o 吞吐率高。 实时系统的核心是一个支持实时多任务的操作系统i 玎o s 。 2 重庆邮电大学硕士论文 1 2 2 实时操作系统的概念及特点 实时操作系统是一种能在边界时间内提供所需级别服务的操作系统。它能够 明确说明它的每一个系统服务运行所需的最长时间,运行在它上面的任务的行为 都必须是可预测的。 一般来说,r t o s 内核的实现都是微内核的体系结构。所谓微内核技术是指 将必需的功能( 进程管理、任务通信、中断处理、进程调度等) 放在内核中,而 将那些不是非常重要的核心功能和服务( 文件系统、存储管理、网络通信、设备 管理等) 作为内核之上可配置的部分。这样,整个操作系统就是由提供一些基本 服务机制的微内核加上一些服务进程构成,系统的各个系统调用和服务都是由内 核发消息到不同的服务进程,服务进程执行相应的操作,然后以消息的方式返回 内核。微内核实时操作系统体系结构如图1 1 所示。 圜熙曜 | 竺竺苎墨里! ! ! :! 二竺! 竺! ! :! ! ! ! ! ! ! ! ! 竺! 图1 1 微内核r 1 旧s 体系结构 实时操作系统一般符合以下的一些要求: ( 1 ) 可确定性:是指它可以按照固定的、预先确定的时间或时间间隔执行操 作。 ( 2 ) 及时响应性:是指在系统得到中断后能及时响应中断。 ( 3 ) 用户控制:是指允许用户细粒度地控制任务的各种属性( 任务优先级、 任务权限等) 。 ( 4 ) 可靠性。 实时操作系统一般具有如下特点: ( 1 ) 支持多线程和可抢占调度。 ( 2 ) 有线程优先级的概念。 ( 3 ) 有一个可预测的线程同步机制。 ( 4 ) 具有优先级继承机制。 ( 5 ) 操作系统的行为应该被用户了解和掌握。 本文主要对采用双内核结构的实时l i n u x 系统进行研究。 重庆邮电人学硕士论文第一章引言 1 2 3 衡量实时操作系统性能的指标 衡量一个实时操作系统的性能,主要有以下几个指标: 1 确定性 实时操作系统中,在一定的条件下,系统调用的运行时间可以预测。这并不 是指所有系统调用都总是执行一个固定长度的时间,而是指不论系统负载如何, 系统调用的最大执行时间可以确定。 2 可抢占性 实时操作系统应该是可抢占的。抢占是指当系统处于核心态运行时,允许任 务的重新调度。换句话说就是指正在执行的任务可以被打断,让另一个任务运行。 抢占提高了应用对异步事件的响应性能力。 3 上下文切换时间 多任务系统中,上下文切换是指c p u 的控制权由运行任务转移到另外一个 就绪任务时所发生的事件,当前运行任务转为就绪( 或者挂起、删除) 状态,另 一个被选定的就绪任务成为当前任务。上下文切换包括保存当前任务的运行环境, 恢复将要运行任务的运行环境。 4 中断延时 中断延时是指从硬件中断发生到开始执行中断处理程序第一条指令之间的这 段时间。影响中断延迟的最大因素就是系统关中断的时间。 5 调度延时 调度延时是指当一个事件引起更高优先级的任务就绪到这个任务开始运行之 间的时间。即一个任务被触发后,由就绪到运行的时间。 采用双内核结构的实时l i n u ) 【系统r t a 工l i n u x 在实现方式、实时性能以及应 用范围都具有较强的优势,是本文的研究重点。 1 3 论文主要工作 通过阅读大量的相关文献,对实时系统、实时操作系统以及衡量实时操作系 统性能的指标进行阐述;分析影响l i i l u x 实时性的因素,研究提高“n u 】( 实时性的 方法;对目前具有代表性的实时l i n u 】( 系统进行研究和比较,确定重点研究采用双 内核结构的基于a d e o s 的r t a i l i n u x 系统。具体研究内容包括: ( 1 ) 通过阅读源代码,对a d e o s 和r 1 脚的实现进行深层次的研究。 ( 2 ) 对r 1 眦提供的l x i 珂模块进行研究。通过设计合理的测试方案,在重 负载下,对基于i ,t 模块的用户空间实时任务的平均任务响应时间进行测试, 4 重庆邮电大学硕士论文 并将结果与基于标准l i n u ) 【内核的平均任务响应时间进行比较,验证基于i ,x r t 模块的用户空间实时任务响应更快。 ( 3 ) 通过对r 1 眦实时任务管理代码进一步分析,指出翮脚的就绪任务队列 结构对实时性有定的影响,通过引入优先级位图,对r t a i 的就绪任务队列进行 改进,并通过实验证实r 1 眦的实时性得到了进一步提高。 1 4 论文组织结构 第一章从论文选题背景出发,然后概述实时系统、实时操作系统的相关概念 和特点,阐述衡量实时操作系统性能的指标,最后概括论文的主要工作。 第二章首先回顾l i n u ) ( 的发展历史,对“n u ) 【的发展现状进行一定研究,分析 l i n u x 相对于其他操作系统所具有的优势。分析l i n u x 在实时方面的特性,指出影 响l i n u x 实时性的因素,并对已有的提高l i 姗x 实时性的方法进行研究。最后对实 时l i n u x 的发展现状进行研究,并对已有的实时l i n u x 系统进行分析。 第三章重点研究a d e o s 的底层实现机制。首先是阐述a d e o s 的原理。然后 对a d e o s 的主要部分的代码进行较为详尽的研究,尽可能将a d e o s 的全貌展现 出来。以便开展后面的研究工作。 第四章重点对r t a i 进行研究。首先对r t a i 的初始化过程、中断处理过程、 时钟中断、实时任务管理及l 玎模块进行研究。最后通过在重负载下测试平均 任务响应时间来验证基于i x r t 模块的用户空间实时任务响应更快。 第五章首先对r 1 w 实时任务管理进一步分析,指出就绪任务队列结构的不合 理性,通过引入优先级位图,对就绪任务按照优先级从高到低进行分级,每一级 采用双向循环链表。最后通过实验验证删实时性的提高。 第六章总结论文的工作以及在研究过程中遇到的困难和付出的努力,并提出 下一步的研究内容。 重庆邮电大学硕士论文 第二章l in u x 实时性研究 2 1l i n u x 的发展及现状 l i n u x 最早是由芬兰人l i n u st 0 a l d s 设计的。当时由于u n 的商业化, a n d r e wt a n n e b a u m 教授开发了m i l l i x 操作系统以便于不受a t & t 许可协议的约束, 为教学科研提供一个操作系统。m i i l i x 是免费使用的,但是不能随意修改和发布源 代码。于是t 0 r v a l d s 下定决心开发自己的操作系统。1 9 9 1 年底,他在i n t e m e t 上发 布了早期版本。 由于l i n u x 得以广泛使用,因此很快赢得众多用户。它成功的重要因素是, l i n u x 很快吸引了很多开发者对其代码进行修改和完善。由于其许可证条款的约 定,l i n u ) 【迅速成为多人的合作开发项目。到现在,l i n u ) ( 早已羽翼丰满,它被广 泛移植到各种体系结构上,用于各种领域。小到手表,大到超级计算机集群;从 嵌入式系统、桌面环境一直到服务器。 l i n u x 不是u n i x ! 尽管l i n u ) 【借鉴了u i l i x 的许多设计并且实现了u 1 1 i x 的a p i , 但是l i n u x 没有直接使用u i l i x 的源代码。必要的时候,它的实现可能和其他各种 删x 的实现大相径庭,但它完整地达成了删x 的设计目标并且保证了应用程序编 程接口的一致。 l i n u x 是一个非商业化的产品。“n u x 内核的开发工作是由一个结构松散的工 作组协力完成的。任何人都可以开发内核。l i i m x 内核是自由软件,但不是无限自 由的。它使用的是g p l 第二版作为限制条款,也就是说你可以自由地获取内核代 码并随意修改它,但如果要发布修改过的内核,你也得保证让得到你的内核的人 同样享有你曾经享受过的所有权利。 目前l i n u ) 【内核的最新版本是2 6 2 8 。2 6 以前的版本号第二位表示内核的类 型:如果是偶数,表示稳定的内核;如果是奇数,表示开发中的内核。但是,在 2 6 版的开发过程中,内核版本的编号方式发生了很大的变化。主要变化在于第二 个数字已经不再表示一个内核是稳定版本还是正在开发的版本。因此,现在内核 开发者都在当前的2 6 版本中对内核进行大幅改进。 现阶段l i n u x 已经是服务器和嵌入式领域的强者。在服务器领域有r e dh a t s e r v e r 、u b u l l t us e e r ,还有国内的r e df l a gs e n ,e r 等等。这些系统性能相当稳定, 可以与商用的i m x 系统相比较。在嵌入式领域,很多设备都能见到l i l l u x 的身影, g o o g l e 推出的a n d r o i d 智能手机操作系统也是基于l i n u ) ( 系统发展来的。现在l i n u x 正向桌面系统进军。有调查显示,2 0 0 7 年l i n u x 的用户数量翻了一番多。当前基 6 重庆邮电大学硕士论文 于l i n l l 】( 内核的发行版有上百种,其中u b u i i n j 因其简单易用的“新立得”包管理 器而受到普通l i 肌x 用户的喜爱。排在前十位的l i n u x 发行版依次是:u 晒u i l t u 、 o p e n s u s e 、m i n t 、f e d o r a 、d e b i a n 、m a n d r i v a 、p c l i n u x o s 、c e n t o s 、s a b a y o n 、 m e p i s 。很多研究机构和i t 企业都不会放弃在l i n u 】【下的研发。我国政府也是多 次将l i n u x 的应用和研究作为重点项目,不仅要将自动化办公系统转移到l i n u x 平 台上,还要将国产l i n u x 用于今后的千万亿次超级计算机。可见,研究l i n u x 具有 重要而深远的意义1 2 2l i n u x 的优势 l i n u x 之所以发展这么快,与它本身的优点是息息相关的。相对于其他操作系 统来说,它具有无法比拟的优势,具体表现在以下几方面: ( 1 ) l i n u x 是免费的。除硬件以外,无需任何花费就能安装一套完整的l i n u x 系统。 ( 2 ) l i 肌x 内核的各部分可以充分定制。通过内核编译选项,你可以选择自 己真正需要的特征来定制内核。而且有了通用公共许可证( g p l ) ,你就可以自由 地阅读、修改内核和所有系统程序的源代码。 ( 3 ) l i n u x 可以支持多种硬件平台,包括i n t e l 、删、p o w e r p c 、m i p s 等等。 ( 4 ) l i n u x 可以运行在低档、便宜的硬件平台上。可以用一个4 m b 内存的 h l t e l 8 0 3 8 6 系统构建网络服务器。 ( 5 ) “n u x 是强大的。由于充分挖掘了硬件部分的特点,使得l i n u x 系统速 度非常快。l i n 畎的主要目标是效率。 ( 6 ) l i n u x 的开发者都是非常出色的程序员。l i n u x 系统非常稳定,有非常低 的故障率和非常少的系统维护时间。 ( 7 ) l i n u x 内核非常小,而且紧凑。可以把一个内核映像和一些系统程序放 在一张1 4 的软盘上。目前还没有一个商用切呵能从一张软盘上启动。 ( 8 ) l i n u x 与很多通用操作系统高度兼容。l i n u ) 【可以让你直接安装以下文件 系统的所有版本:m s d o s 和、矾n d o w s 、s v r 4 、o s 2 、m a co sx 、s o l 撕s 、s u i l o s 、 还有很多b s d 变体等等。通过使用适当的库函数,l i n u ) 【系统甚至能直接运行为 其他操作系统所编写的程序。 ( 9 ) l i n u x 网络功能强大。l i n u ) ( 能对很多网络层进行操作,这些网络层如以 太网、光纤分布式数据接口( f d d i ) 、高性能并行接口( h p p i ) 、无线局域网( m e e 8 0 2 1 1 ) 和蓝牙( i e e e8 0 2 1 5 ) 。 ( 1 0 ) l i n u ) ( 有很好的技术支持。l i n u x 比任何有版权的操作系统更容易获得 7 重庆邮电大学硕士论文 第二章l i n u x 实时性研究 补丁和更新! 如果把遇到的难题发给一些新闻组或邮件列表,经常在几个小时内 就能得到回应。此外,当新的硬件产品投放市场后,其l i i u j x 驱动程序通常在几周 内就可得到。但是,硬件厂商仅仅给少数商业操作系统发布设备驱动程序,通常 只有微软一家。因此,所有商用u n i x 变体只能运行在有限的硬件上。 2 3l i n u x 实时调度方式 l i n u x 提供了两种基于固定优先级的实时调度方式:先来先服务s c h e d f o 和时间片轮转s c h e dr r 。而普通的、非实时的调度方式是s c h e d - - n o r m a i ,。 s c h e df 0 实现了一种简单的、先入先出的调度算法,它不使用时间片。 s c h e df i f o 级的进程会比任何s c h e dn o i w a l 级的进程都先得到调度。一旦 一个s c h e df o 级进程处于可执行状态,就会一直执行,直到它自己受到阻塞 或显式地释放处理器为止。它不基于时间片,可以一直执行下去。只有较高优先 级的s c h e df o 或者s c h e di 汰任务才能抢占s c h e df o 任务。如果有两 个或者更多的s c h e df o 级进程,它们会依次执行,但是在它们愿意让出处理 器时会再次让出。只要有s c h e df i f o 级进程在执行,其他优先级较低的进程就 只能等待它结束后才有机会执行。 s c h e dr r 与s c h e df i f o 大体相同,只是s c h e dr r 级的进程在耗尽事 先分配给它的时间片后就不能再继续执行。也就是说,s c h e dr r 是带有时间片 的s c h e df i f o 。它是一种实时轮流调度算法。当s c h e di 汛任务耗尽它的时间 片,在同一优先级的其他实时进程被轮流调度。时间片只用来重新调度同一优先 级的进程。对于s c h e df 巧o 进程,高优先级总是立即抢占低优先级,但是低优 先级进程决不能抢占s c h e dr r 任务,即使它的时间片耗尽。 2 4 影响l i n u x 实时性的因素 尽管l i n u x 相对于其他操作系统有很多优势,并且有比较成熟的实时调度策略 对实时任务进行调度,但是“n u x 从一开始就是作为分时操作系统存在的,在实时 性方面有天生的缺陷。总结起来,影响l i n u ) 【实时性的因素主要有以下几个方面。 2 4 1 关中断问题 中断完成外部设备与l i 肌x 系统之间的数据通信。中断服务程序可以看作是 l i n u x 设备驱动的一部分。l i n u x 通过v f s 方式统一管理各种设备,进一步捕获中 8 重庆邮电大学硕士论文 第二章l i n u x 实时性研究 断,执行中断服务程序。中断服务程序包括硬件和软件相关部分。硬件相关部分 的操作主要完成外部设备到l i n u ) 【系统的通信;软件相关部分主要由l i n u ) 【内核完 成,包括线程保护与文件系统的协调、内核资源的分配等等。但l i 肌x 内核为了尽 快完成自己的任务,经常会关闭中断,这样会使外部中断无法得到及时响应。如 果低优先级的进程关闭了中断,即使有高优先级的实时进程的中断发生,系统也 不会做出响应,这种情况在实时系统中是不允许发生的。 2 4 2 内核的不可抢占性 l i n u x 系统中的进程运行状态分为用户态和内核态两种模式。在l i n u x2 4 和 以前的版本中,当进程运行在用户态时,高优先级的进程能抢占低优先级的进程, 故可以较好地完成任务。但是当进程运行在内核态时( 如系统调用) ,其他进程的 优先级再高( 如实时进程) 也不能抢占该进程。这明显增加了抢占延迟。在l i n u ) 【 2 6 中,内核已经可以抢占,因而实时性得到了加强。但是内核中仍有大量的不可 抢占区域,如由自旋锁( s p i n l o c k ) 保护的临界区,以及一些显式使用p r e e m p t - d i s a b l e 失效抢占的临界区。 2 4 3 时钟粒度粗糙 时钟是操作系统的脉搏,操作系统环境建立以后,任务的执行和终止在很多 情况下都是由时钟直接或间接唤起的。标准“n u ) 【的时钟粒度是1 0 i n s ,而实时应 用一般都需要微秒级的响应精度,显然不能满足实时应用的要求。 2 4 4 虚拟内存管理导致的不可预测性 l i n m 【采用了虚拟内存技术。当访问的页面不在内存中时,可以通过页面交换 将需要的页换入内存中,通过这种技术,进程可以运行在比实际内存大得多的虚 拟空间中。这对于分时系统来讲这是一个好的解决方法,而对于实时系统却是难 以忍受的。页面频繁地换进换出,使得实时进程的运行无法预料,给实时系统带 来了极大的不可预测性。 2 5 提高l i n u x 实时性的方法 l i n u x 具有强大的优势,但是在实时方面却不尽人意。为了构建一个完美的实 9 重庆邮电人学硕士论文 第二章l i n u x 实时性研究 时l i n u x 系统,充分利用l i n u x 的开源特性,很多研究机构开始针对影响l i n u x 实 时性的因素进行改进,提出了很多改进方法。下面就对其中的一些改进方法进行 阐述。 2 5 1 软件中断模拟 由于“n u 】【存在许多关中断的区域,这就会导致中断延迟时间过长,当中断频 繁时,会有丢失外部
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年烟草设备维修工新员工岗位专业知识笔试题目及答案
- 2025年乘务人员考试题库及答案
- 药用植物学与生药学测试题及答案
- 高校经济合同模板(3篇)
- 综评面试题库及答案书
- 安全输液考试题及答案
- 高粱地种植合同模板(3篇)
- 大连淘宝店铺产品生命周期管理代运营协议
- 2025国家公务员面试题及答案
- 体育公司与个人运动员参赛合同
- 保密室及保密要害部位搬迁发案
- 拍卖行业发展趋势PPT
- 《人力资源管理全套课件》
- 眼科常见疾病诊疗指南
- 厂级岗前安全培训教材
- 征兵宣传主题PPT
- 全桥LLC自动计算表格
- 高中数学竞赛讲义-高中数学竞赛
- YB/T 100-1997集成电路引线框架用4J42K合金冷轧带材
- GB/T 19816.3-2005涂覆涂料前钢材表面处理喷射清理用金属磨料的试验方法第3部分:硬度的测定
- GB/T 19658-2013反射灯中心光强和光束角的测量方法
评论
0/150
提交评论