




已阅读5页,还剩60页未读, 继续免费阅读
(计算机软件与理论专业论文)嵌入式系统开发平台——核心层的设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 摘要 能够支持嵌入式系统资源复用、缩短嵌入式系统开发周期、提高嵌入式系 统开发效率的嵌入式系统开发平台是嵌入式产品开发的有效工具。但嵌入式系 统产品以应用为中心,不同的应用产品具有不同的功能,另外大多数应用产品 对实时性有较高要求,因此,如何科学合理的设计和实现嵌入式系统开发平台 的可裁剪性和实时性已经成为当今嵌入式系统开发过程中一个亟待解决的关键 问题。 本文主要内容为研究并实现基于层次模型的嵌入式系统开发平台的核心 层。关键技术研究是该层功能的设计与实现。核心层是开发平台中涉及任务管 理、异常与中断管理以及内存管理等系统资源分配的重要一层,其功能是实现 嵌入式实时操作系统内核。本文在对现有的嵌入式实时操作系统内核以及其实 时性和可裁减性分析的基础上,提出并实现了嵌入式系统开发平台核一t l , 层的实 现方案。 方案将嵌入式系统开发平台核心层分为3 个模块:任务管理模块,异常与 中断管理模块以及内存管理模块。 任务管理模块中,设计了任务控制块( t c b ) ,并对任务状态进行了详细的 划分,通过在任务调度中引入就绪队列、设置任务调度变量提高了任务调度的 实时性:通过在并发控制中引入事件控制块、信号量、互斥型信号量、事件标 志组、消息邮箱以及消息队列等方式实现了任务间的协调运行。 异常与中断管理模块中,分析了异常处理原理,并设计了e s p h a l 与核 心层之间异常处理函数的接口和应用程序异常处理函数接口:给出了中断处理 模型,设计了中断处理流程和中断处理服务接口;此外还将异常和中断管理函 数设计为以库函数或c 语言宏的形式供使用者调用,缩短了异常或中断处理的 响应时f 司。 内存管理模块中,设计了内存控制块,通过内存控制块来跟踪每一个内存 分区,以特殊的内存分块管理技术实现了内存分区,在较大程度上避免了内存 碎片的产生。 在课题组自主开发的嵌入式系统开发平台的支持下,该核心层可实现嵌入 式实时操作系统内核的功能。与现有的嵌入式实时操作系统内核相比,该核心 层所实现的实时操作系统内核具有较好的实时性和可裁减性,可满足当前对嵌 入式系统开发的要求。 关键词:嵌入式系统开发平台;实时性:可裁减性;核心层 青岛大学硕士学位论文 a b s t r a c t a ne m b e d d e ds y s t e md e v e l o p i n gp l a t f o r mw h i c hs u p p o r t se m b e d d e ds y s t e m r e s o u r c e r e u s a g e ,r e d u c e s e m b e d d e d s y s t e md e v e l o p i n gp e r i o d a n d i m p r o v e d e v e l o p i n ge f f i c i e n c y i sa l le f f e c t i v eu t i l i t yf o re m b e d d e dp r o d u c td e v e l o p i n g h o w e v e r , e m b e d d e ds y s t e mi sa p p l i c a t i o n - o r i e n t e dd e v e l o p e d ,d i f f e r e n tf u n c t i o n s a r ee m b e d d e di nd i f f e r e n tp r o d u c t s a n dg r e a tr e a lt i m ep e r f o r m a n c ei sn e e d e di n m o s ta p p l i c a t i o np r o j e c t s i th a sb e e nac r i t i c a la n du r g e n tp r o b l e mf o rc u r r e n t e m b e d d e ds y s t e md e v e l o p m e n t + p r o p e r l d e s i g na n dr e a l i z et h er e a lt i m ea b i l i t y a n dc o n f i g u r a b i l i t yo fe m b e d d e & i nt h i sp a p e r , t h em a i nr e s e a r c ht o c b s e so nt h ea n a l y s i sa n dr e a l i z a t i o no ft h e k e r n e ll a y e rb a s e do nl a k e rm o d e l e de l - b e d d e ds y s t e md e v e l o p i n gp l a t f o r m k e m e l l a y e ri s a l li m p o r t a n tl a y e rt h a tc o n c e r n s - :s km a n a g e m e n t ,e x c e p t i o na n di n t e r r u p t m a n a g e m e n t ,m e m o r ym a n a g e m e n ta n ds oo n ,w h o s ef u n c t i o ni st or e a l i z et h er e a l t i m eo p e r a t i o ns y s t e mk e r n e l b a s e do nt h ep r e s e n te m b e d d e dr e a lt i m eo p e r a t i o n s y s t e m sa n dt h e i rr e a lt i m e a n dc o n f i g u r a b l ea b i l i t i e s ,an e wa p p r o a c hi sp r o p o s e d a n dr e a l i z e d t h ee m b e d d e ds y s t e md e v e l o p i n gp l a t f o r mc o n s i s t so ft h r e em o d u l e s :t a s k m a n a g e m e n tm o d u l e ,e x c e p t i o na n di n t e r r u p tm a n a g e m e n tm o d u l ea n dm e m o r y m a n a g e m e n tm o d u l e i nt a s km a n a g e m e n tm o d u l e ,t a s kc o n t r o l l i n gb l o c k ( t c b ) i sd e s i g n e d t h et a s k s t a t u s e sa r ec l a s s i f i e di nd e t a i l t h r o u g hu t i l i z i n gt h er e a d yl i n ea n ds e t t i n gu pt h e t a s ks c h e d u l i n gv a r i a b l e s ,m er e a lt i m ep e r f o r m a n c eo ft a s ks c h e d u l i n gi si m p r o v e d t h r o u g hu t i l f z i n gt h et a s kc o n t r o l l i n gb l o c k ,s i g n a l ,s e m a p h o r es i g n a l ,e v e n tf l a g g r o u p ,e v e n tm a i l b o x ,m e s s a g el i n ea n do t h e ra p p r o a c h e si np a r a l l e lc o n t r o l l i n g ,t h e c o o r d i n a t i o nb e t w e e nr u n n i n gt a s k si sr e a l i z e d i ne x c e p t i o na n di n t e r r u p tm a n a g e m e n tm o d u l e ,e x c e p t i o nh a n d l i n gp r i n c i p l ei s a n a l y z e d ,a n dt h ei n t e r f a c e so fe x c e p t i o nh a n d l i n gf u n c t i o na n dp r o g r a me x c e p t i o n h a n d l i n gf u n c t i o nb e t w e e n e s p h a la n dk e r n e ll a y e ra r ed e s i g n e d i n t e r r u p t p r o c e s s i n gm o d e l ,i n t e r r u p th a n d l i n gp r o c e d u r ea n di n t e r r u p tp r o c e s s i n gs e r v i c e i n t e r f a c e a r eg i v e na n dd e s i g n e d b e s i d e s ,t h ef u n c t i o n so fe x c e p t i o na n di n t e r r u p t m a n a g e m e n ta r ed e s i g n e dw i t hl i b r a r yf u n c t i o na n dcl a n g u a g em a c r oi n t e r f a c ef o r p r o g r a m m e r , w h i c h a l s oc u tt h er e s p o n d i n gt i m eo f e x c e p t i o na n di n t e r r u p th a n d l i n g i nm e m o r ym a n a g e m e n tm o d u l e ,b a s e do nt h er e a l i z a t i o no fm e m o r yc o n t r o l l i n g b l o c k ,e v e r ym e m o r yb l o c kc a nb et r a c e d ,a n dm e m o r ya r e ac a nb er e a l i z e db y u n i q u em e m o r yb l o c km a n a g e m e n tt e c h n i q u e s ,w h i c he f f e c t i v e l yp r e v e n tt h e c a u s i n go fm e m o r yf r a g m e n t w i t ht h e s u p p o r to fi n d e p e n d e n td e v e l o p i n g e m b e d d e ds y s t e md e v e l o p i n g p l a t f o r mi nt h i sr e s e a r c h ,k e r n e ll a y e rc a nr e a l i z et h ef u n c t i o n so fe m b e d d e dr e a l t i m eo p e r a t i o ns y s t e mc o m p a r e dw i t hp r e s e n te m b e d d e dr e a lt i m eo p e r a t i o ns y s t e m c o u n t e r p a r t ,t h i sk e r n e lc a no f f e rb e t t e rr e a lt i m ea n dc o n f i g u r a b l ep e r f o r m a n c e sa n d s a t i s f yt h en e e d st od e v e l o pe m b e d d e ds y s t e m k e y w o r d s :e m b e d d e ds y s t e md e v e l o p i n gp l a t f o r m ;r e a l - t i m ep e r f o r m a n c e ; e o n f i g u r a b i l i 姆;k e r n e ll a y e r 青岛大学硕士学位论文 学位论文独创性声明 本人声明,所呈交的学位论文系本人在导师指导下独立完成的研究成果。 文中依法引用他人的成果,均已做出明确标注或得到许可。论文内容未包含法 律意义上已属于他人的任何形式的研究成果,也不包含本人已用于其他学位申 请的论文或成果。 本人如违反上述声明,愿意承担由此引发的一切责任和后果。 论文作者签名 胡晓焯f l e a :2 d 。7 s 皇月;。日 学位论文知识产权权属声明 本人在导师指导下所完成的学位论文及相关的职务作品,知识产权归属学 校。学校享有以任何方式发表、复制、公开阅览、借阅以及申请专利等权利。 本人离校后发表或使用学位论文或与该论文直接相关的学术论文或成果时,署 名单位仍然为青岛大学。 本学位论文属于: 保密口,在,年解密后适用于本声明。 不保密瓯 ( 请在以上方框内打“”) 论文作者签名: 胡吼抛日期:2 0 。7 年r 月di e ! 导师虢0 附事矿8 隅知d 7 年岁月;。日 。本声明的版j 归青三大学所有,未经许可,任何单位及任何个人不得擅自使 第一章引言 第一章引言 核心层是基于层次模型的嵌入式系统开发平台的重要部分之一,其主要任 务为利用下层( 硬件抽象层) 提供的接口对各种物理器件进行统一的结构化管 理,完成任务调度和通信、内存管理等基本功能,通过上层( 系统功能层) 提 供的系统调用接口对上层( 系统功能层) 提供的各种计算资源作为客户任务的 请求和响应进行必要的同步和调度。本章阐述了课题的研究背景及意义,并对 国内外核心层的实现方案作了动态分析。 1 1 选题的背景与研究意义 基于层次模型的嵌入式系统开发平台是本课题组为了解决嵌入式系统资源 的复用问题,使嵌入式系统设计厂商能够保证产品的快速上市和产品开发的低 成本而提出的。 嵌入式操作系统是嵌入式系统的核心,当前应用十分广泛,如飞机、卫星、 火箭、手机、随身听等都有具有嵌入式操作系统i l l ,同时随着人们对嵌入式产 品响应时间的要求越来越高以及嵌入式产品更新换代的周期的缩短口胴,这就对 嵌入式操作系统的实时性和可裁减性提出了更高的要求。因此实时性和可裁减 性已经成为当前衡量嵌入式系统开发的重要标准。 课题组提出的嵌入式系统开发平台包含软件与硬件系统,其目的是最大限 度地进行资源的复用,并且实现嵌入式系统开发平台的实时性和可裁减性。核 心层是开发平台中的重要一层,其功能是实现嵌入式实时操作系统内核,核心 层的实时性能和可裁减性能的好坏直接影响到整个嵌入式系统开发平台的实时 性能和可裁减性能的优劣,所以要实现嵌入式系统开发平台核心层的实时性和 可裁减性,从而提高整个嵌入式系统开发平台的实时性和可裁减性。 1 2 国内外研究动态 进入9 0 年代以来,以计算机技术、通信技术和软件技术为核心的信息技术 取得了空前迅猛的发展,各种装备与设备上嵌入式计算与系统的广泛应用极大 地推动了行业的渗透性应用。在这一大趋势下,嵌入式系统作为i t 产业新崛起 的一个崭新分支,正在全球范围内迅猛发展,得到了世界各国的广泛的关注。 它的出现是微处理器技术、超大规模集成电路v l s i 技术、网络通信技术、嵌 入式软件技术相结合的产物。嵌入式系统把全球最新科技产业成果带入社会生 青岛大学硕士学位论文 产生活的各个领域【4 l ,为各行业产品提供具有行业个性化特点的智能平台,为 高科技在生活中的实用化建起了“应用”的桥梁。 嵌入式系统是将先进的计算机技术、半导体技术、电子技术和各个行业的 具体应用相结合后的产物,因此必然是一个技术密集、资金密集、高度分散、 不断创新的知识集成系统5 酮,开发出满足应用要求的产品往往需要较长的时 间,而市场竞争则要求产品能够快速上市。为了缓解这些矛盾,近年来,国内 外在嵌入式系统的设计及产品的构成等方面作了多方的尝试。作为一种有效的 鳃决方案,能够支持嵌入式系统资源复用,从而极大地提高用户和程序员的时 间投入回报率的开发平台,受到业界的重点关注。 作为嵌入式系统开发平台的核心嵌入式实时操作系统r t o s 的研究始于 2 0 世纪8 0 年代;其最初的开发是在国际上一些著名的i t 组织、公司中进行的。 从1 9 8 1 年r e a d ys y s t e m 发展了世界上第1 个商业嵌入式实时内核( v r t x 3 2 ) , 到今天已经有近2 0 年的历史。2 0 世纪8 0 年代的产品还只支持一些1 6 位的微处理 器,如6 8 k ,8 0 8 6 等。这时候的r t o s ( 嵌入式实时操作系统) 还只有内核,以销 售二进制代码为主。当时的产品除v r t x 外,还有i p i 公司的m t o s 和8 0 年代末i s l 公司的p s o s 。产品主要用于军事和电信设备。进入2 0 世纪9 0 年代,现代操作系 统的设计思想,如徼内核设计技术和模块化设计思想,开始渗入r t o s ( 嵌入式 实时操作系统) 领域 7 1 。老牌的r t o s ( 嵌入式实时操作系统) 厂家如 r e a d y s y s t e m ( 在1 9 9 5 年与m i c r o t e cr e s e a r c h 合并) ,也推出新一代的v r t x s a 实时内 核,新一代的r t o s 厂家w i n d r i v e r 推出t v x w o r k 。另外在这个时期,各家公司都 有力求摆脱完全依赖第三方工具的制约,而通过自己收购、授权或使用免费工具 链的方式,组成l 套完整的开发环境。例如,i s i 公司的p r i s m t 、著名的 t o r n a d o ( w i n d r i v e r ) $ 1 a 老牌的s p e c t r a ( v r t x 开发系统) 等。 进入2 0 世纪9 0 年代中期,互联网之风在北美日渐风行。网络设备制造商、终 端产品制造商都要求r t o s ( 嵌入式实时操作系统) 有网络和图形界面的功能。 为了方便使用大量现存的软件代码,他们希望r t o s ( 嵌入式实时操作系统) 厂 家都支持标准的a p i | “,如p o s i x ,w i n 3 2 等,并希望r t o s ( 嵌入式实时操作系 统) 的开发环境与他们已经熟悉的u n i x ,w i n d o w s - - 致。这个时期代表性的产 品有v x w o r k ,q n x ,l y n x 和w i n c e 等。 进入2 0 世纪9 0 年代后,r t o s ( 嵌入式实时操作系统) 在嵌入式系统设汁中 的主导地位已经确定,越来越多的工程师使用r t o s ( 嵌入式实时操作系统) , 更多的新用户愿意选择购买而不是自己开发。r t o s ( 嵌入式实时操作系统) 的 技术发展有以下一些变化: 1 因为新的处理器越来越多,r t o s ( 嵌入式实时操作系统) 自身结构的设 计更易于移植【9 l ,以便在短时间内支持更多种微处理器l 。 第一章引言 2 开放源码之风已波及r t o s 厂家。数量相当多的r t o s ( 嵌入式实时搡作 系统) 厂家出售r t o s ( 嵌入式实时操作系统) 时,就附加了源程序代码并含生 产版税。 3 后p c 时代更多的产品使用r 1 d s ( 嵌入式实时操作系统) ,它们对实时 往要求并不高,如手持设备等。微软公司的w m c e 、p l a t oo s 、j a v ao s 等r 1 o s ( 嵌入式实时操作系统) 产品就是顺应这些应用而开发出来的。 4 电信设备、控制系统要求的高可靠性,对i 汀o s ( 嵌入式实时操作系统) 提出了新的要求,瑞典e n e a 公司的o s e 和w i n d r i v e r 新推出的v x w o r k a e 对支持 h a ( 高可用性) 和热切换1 等特点都下了一番功夫。 5 w i n d r i v e r t 故购了i s i ,在r t o s ( 嵌入式实时操作系统) 市场形成了相当 程度的垄断,但是由于w i n d r i v e r 决定放弃p s o s ,转为开发v x w o r k 与p s o s 合二 为一版本,这便使得p s o s 用户再一次走到重新选择r t o s ( 嵌入式实时操作系统) 的路口,给了其他r t o s ( 嵌入式实时操作系统) 厂家一次机会。 6 嵌入式l i n u x 已经在消费电子设备中得到应用。韩国和日本的一些企业都 摧出了基于嵌入式l i n u x 的手持设备,嵌入式l i n u x 褥到了相当广泛的半导体厂商 的支持和投资。如i n t e l 和m o t o r o l a 目前,国际上较成熟的嵌入式实时操作系统产品已有几十种,其中比较著名 的有以下几个产品: t t c o s 一是专门为计算机的嵌入式应用而设计的实时操作系统1 1 2 1 ,是基于静 态优先级的抢占式( p r e e m p t i v e ) 多任务实时内核f 1 1 。该内核不大,但具有一 般多任务实时操作系统内核所具有的如可移植、可固化、可裁剪m 1 、可剥夺之类 的全部特性l l “。比较适合嵌入式系统的程序员、策划人员以及对实时操作系统有 兴趣的学生。而且因为其经过了严格的测试,目前已被应用到了各个领域,如照 相机业、发动机控制、网络接入设备、高速公路电话系统、a n i 机和工业机器人 等。 嵌入式l i n u x 操作系统是基于l i n u x 操作系统的又一类嵌入式操作系统f 1 7 1 。 由于其开放的源代码1 1 8 1 ,使其成为近年来国际上备受关注的热点之一。近年 来嵌入式l i n u x 操作系统发展速度较快,据预测在未来两三年内能够与w i n d o w s c e 和p a l mo s 形成三分天下的局面。但是其对特定应用的指向性以及一些技 术问题仍有待解决,具体说来,阻碍嵌入式l i n u x 操作系统产品化的主要因素 在于,l i n u x 本身只解决了操作系统中最关键的内核部分,还没有真正实用化 1 2 0 1 1 2 ”,需要为用户提供图形用户界面【硼“、第三方系统级应用软件 2 4 1 1 :8 1 ( 如电 子邮件系统) 和专用开发工具的支持。与此同时,开发新的g u i 还要解决不同 版本的兼容问题。此外,不同于通用架构的p c 产品,嵌入式l i n u x 提供商要为 3 青岛大学硕士学位论文 不同的硬件厂商提供针对其产品的开发平台,还要为众多的i s v 提供开发工具, 否则只能让i s v 在p c 平台上进行仿真开发1 2 6 】。可以说,目前基于l i n u x 的整 体产业链还没有完全成形。 m i c r o s o f t w i n d o w sc e 是从整体上为有限资源的平台设计的多线程、完整 优先权、多任务的操作系统。它的模块化设计允许它对于从掌上电脑到专用的 工业控制器的用户电子设备进行定制,操作系统的基本内核需要至少2 0 0 k 的 r o m 。但w i n d o w s c e3 0 系统因过分地追求各种功能的集成化( 包括内置m p 3 播放器、高分辨率显示等) ,使得产品本身过于臃肿,模块化程度不高| 2 7 啦,在 版本控制上不易实现量体裁衣的设计;尤其是o e m 厂商还要向m i c r o s o f t 公司 支付较高的版权费用,致使安装有w i n d o w sc e 的产品成本居高不下。 g l t r o n 是一种用于小规模的嵌入式操作系统的标准的实时内核规范。这 种规范已经在大量的8 位、1 6 位和3 2 位的微控制器( m c u s ) 上实现了。光商业 产品,据报道就大约有4 0 种这种规范的实现。更多的是,现在g l t r o n 规范的 内核已经被大量的嵌入式操作系统所采用,并且在日本国内正在制定这个领域 的工业化的标准。p i t r o n t h 于其实时性能超群和开放源码1 3 0 1 的两大优点深 受人们的青睐。 在肛m 1 0 n 中,把由内核程序提供的那些功能尽可能地相互独立】f 3 2 】,使 每个应用程序只选择它需要的那些功能。针对这个目标,大多数i t l t r o n 规范 的内核都是以程序库格式提供的。先选择内核功能,运行时再把它们链接到应 用程序上。这样,系统就只纳入那些需要的功能。此外,每次系统调用只提供 一个单一的功能,以便于只纳入那些需要的功能。i t l t r o n 规范中,处理器的 层次结构不是虚拟的。虽然扯i t r o n 规范的o s 运行在不同的处理器上,但是标 准并没有把不需要的运行条件虚拟化,因此,可以使处理功能更高。g l t r o n 规范规定,在规定的高速作业转换时间上,可以将寄存器换出删。也可以在发 生外部中断时,旁路r t o s 以启动运行一个中断处理程序。g l t r o n 使用标准的 c 一格式处理内核程序调用的方式有利于加快响应时间。在, i t r o n 中,把层次 结构与执行过程分开。如果用户要改变既定层以下的执行过程,你可以继续使 用既定层以上的规范而不用改动。同样, i t r o n 也把自己限定为层次结构式 的规范。开发者有充分的自由去运行你选定的应用程序。根据g l t r o n 技术规 范,“任务( t a s k ) ”这个术语是指并行处理的一个单元。在单一任务内的诸多 程序是按顺序执行的:多任务的诸多程序则是并行执行的l 。肛i t r o n 规范采 用优先权调度方式阳。每项任务都被指定一个优先级;优先数值越小,优先级 别越高。g l t r o n 规范采用一个叫做任务身份证( i d ) 的号码指定作业。任务 控制块( t c b ) 含有用以管理作业的信息。 l i t r o n 规范通过系统调用指令按 4 第一章引言 t c b 的数值来处理设定和修改。g l t r o n 3 0 规范把系统调用分为三级:r 级 ( l e v e lr ) ,即要求级;s 级( l e v e ls ) ,即标准级和e 级( l e v e le ) ,即扩展级。 除这三个级别外,还有c 级( l e v e lc ) ,用于处理与c p u 相关的系统调用。r 级 涉及的是实施l a i t r o n 3 0 规范所需要的各种功能。s 级覆盖实现实时、多任务 o s 的各项基本功能。e 级包括各种附加的和扩展的功能。这个级包括目标生成 和删除功能、各种聚集功能、存储器库和定时器处理程序。与c p u 相关的c 级 在c p u 的基础上,提供要关硬件的各种功能。 g i t r o n 规范的内核在低档微控制器中,尤其能够发挥作用。这些器件以 前受存储器和执行速度的限制,不能使用r t o s 。t t l t r o n 处理进程提供了相 当大的优势,与其他实时操作系统相比,l a l t r o n 具有高的实时性能,而且在 8 位和1 6 位微控制器中,正日益变成首屈一指的标准内核规范。 与国外相比我国对嵌入式操作系统的研究开发起步稍晚,桑夏2 0 0 0 号称是中 国第一个嵌入式操作系统,澳柯玛已采用桑夏2 0 0 0 作为其家电产品的嵌入系统。 另外还有凯思的h o p e n ,电子工程大学的c r t o s 以及m b 4 0 0 0 嵌入式操作系统 等,本课题组研制了嵌入式实时可配置操作系统一h w r r e o s 。 以信息家电为代表的互联网时代嵌入式产品,不仅为嵌入式市场带来了巨大 的拓展机遇,同时也对嵌入式操作系统提出了新的挑战。随着信息家电对实时性 要求的越来越高和信息家电产品越来越多样化,对嵌入式实时操作系统的实时性 和可裁减性f 3 6 1 1 3 7 l 要求进一步提高,因此,提高嵌入式实时操作系统的实时性和可 裁减性已成为目前嵌入式实时操作系统开发过程中的亟待解决的问题。 1 3 论文的组织结构 全文共分六章,各章的内容分别为: 第一章,阐述了课题的研究背景及意义,对国内外嵌入式实时操作系统的 研究及已有的嵌入式实时操作系统的产品作了动态分析。 第二章,对于基于层次模型的嵌入式系统开发平台分层技术进行了整体地 介绍。主要包括对基于层次模型的嵌入式系统开发平台分层思想的概述和各层 所实现功能的描述。 第三章,介绍了嵌入式系统开发平台核心层任务管理模块的设计与实现。 嵌入式系统开发平台任务管理模块通过任务状态的划分、任务控制块的设计以 及并发控制实现了任务的实时调度。其中并发控制通过引入信号量、互斥信号 量、事件标志组、消息邮箱以及消息队列实现了任务问通讯、资源竞争和共享、 青岛大学硕士学位论丈 任务同步和互斥等功能。 第四章,介绍了嵌入式系统开发平台核心层异常与中断管理模块的设计与实 现。阐述了异常基本概念,分析了在核心层处理异常的原理和思想,给出了嵌入 式系统开发平台核心层的中断模式,包括中断配置、处理和控制。 第五章,介绍了嵌入式系统开发平台核心层内存管理模块的设计与实现。 嵌入式系统开发平台核心层内存管理模块采用特殊的内存分块管理技术最大程 度上避免了内存碎片的产生,实现了内存合理分配和内存合理回收功能。 最后对本课题的工作进行了总结。 6 第二章基于层次模型的嵌入式系统开发平台分层技术概述 第二章基于层次模型的嵌入式系统开发平台分层技术概述 嵌入式系统开发平台项目依据基于平台的设计理念,提出了一种层次化的 嵌入式系统开发平台设计方法。利用该方法建立开发平台的体系结构分层模型, 详细定义模型各层次的主要功能、层间接口规范。着重加强嵌入式系统开发平 台体系结构的研究与实现、开发平台对s o c 和i p 核的支持、不同应用指向的嵌 入式操作系统的研制、应用程序接口和基于s o c 的i p 核接口、i p 封装规范等 方面的建立等,在此基础上建立基于s o c 总线规范的i p 核库。 2 1 系统模型设计思想 嵌入式系统开发平台项目采用基于层次的平台设计方法进行嵌入式系统开 发平台的体系结构模型设计。 关于基于层次的平台设计是以在设计流程中所有关键节点上对平台层次的 定义和划分为基础的,我们将其定义为:平台中的一个层次代表系统设计流程 中的某组关键步骤,是所涉及到的后续设计步骤的一种抽象。一个平台是由从 低层到高层的多个层次构成的,其中某特定层隐藏了低一层的实现细节,并为 上层提供相应的服务。基于这一思想,嵌入式系统的设计流程则转化为划分 平台层次、定义和细化各层功能以及对各层进行设计与实现的过程。 按照基于平台设计的理念,本项目采用分层化的处理方法对嵌入式系统开 发平台体系结构进行设计。作为平台的基础层,首先建立一个稳定的基于微处 理器的体系结构,该体系结构可快速地扩展、能够为某些应用进行定制以及为 用户提供快速的解决方案。在进行具体的平台层次划分时,基于以下的原则: ( 1 ) 将设计看作为一个“中间过程”,其中规范设计的每一步是下一步设计的基 础,可看作下一步设计的抽象。( 2 ) 按照功能进行划分,并精确定义各个平台 层次。平台层次的设计支持将低层的细节进行隔离,且高层具备足够的信息来 查看低层的抽象。 基于层次模型并支持s o c 的嵌入式系统开发平台体系结构,由若干个平台 层构成,各层实现该开发平台的部分功能,同对又为高层提供所需的服务。用 ( n ) 层表示某一特定的平台层,( n + 1 ) 层表示( n ) 层相邻的上一平台层, 而( n 1 ) 层表示( n ) 层相邻的下一平台层。各平台层最终以层次实例的形 式来实现本层功能,在分层结构中,( n ) 层实例被定义为能够实现( n ) 层部 分功能的一个特定模块。显然在分层结构中,( n ) 层可以具有一个( n ) 层实 青岛大学硕士学位论文 例( 如提供专用功能的i p 核) ,也可能由多个( n ) 层实例的集合来完成本层功 能( 如由多个软件模块共同完成某种系统服务) 。在( n ) 层中详细地定义了该 层所提供的服务,把分层结构中( n ) 层实例通过该层与上一层边界上的接口 向( n + 1 ) 层实例提供( n ) 层及其下位层处理能力的功能称为( n ) 层服务。 当( n + 1 ) 层实例要实现某种功能时,只需通过该层与( n ) 层之间的接口,调 用( n ) 层服务。这种调用与( n ) 层服务是怎样实现的无关,而且根本不需要 考虑其它下位层的情况,这一点正反映了分层结构的独立性。相邻平台层之间 存在接口,接口是开发平台分层结构中的重要组成部分,由它完成低层向高层 的服务提供。基于上述设计思想,将嵌入式系统开发平台体系结构划分为物理 层、硬件抽象层、核心层、系统功能层、工具层、接口层以及应用层7 个抽象 的平台层次,该体系结构的7 层模型如图2 1 所示。 应用层 接口层 工具层 系统功能层 核心层 硬件抽象层 物理层 图2 1 嵌入式系统开发平台体系结构的7 层模型 2 2 嵌入式系统开发平台各层次功能与设计方案 ( 1 ) 物理层 物理层位于体系结构7 层模型的最底层,是嵌入式系统开发平台的硬件基 础。通常将嵌入式系统中硬件资源的集合看作一个物理层实例。该层实例不是 对若干已经开发出来的独立模块的组装,而是由特定系列的体系结构元素演化 而来,其目的是解决某类特殊的应用,并为开发者提供进行修改的能力。系列 中的元素实际上是一种能够适应多种应用场合的“硬件”的另种命名方法,其 8 第二章基于层次模型的嵌入式系统开发平台分层技术概述 中的每个元素都可通过改变控制其结构的相应参数而迅速得到。例如,系列可 以由相同的可编程处理器及相同的互连模式构成,但外设及存储器可以根据具 体的应用可以从预先设计好的平台部件库中选择。对最终所选择的物理层实例 进行包括掩膜在内的标准制造,即可迅速地构造嵌入式系统的硬件环境,从而 满足了节省设计时间的需求。 ( 2 ) 硬件抽象层 物理层的设计有利于实现嵌入式系统硬件资源的复用,而为了使上层能够 有效地利用这些硬件资源,必须由一个平台层提供对物理设备的逻辑访问接口, 该平台层即硬件抽象层。硬件抽象层的功能是实现对底层物理功能部件的逻辑 封装,并向上层( 核心层) 提供访问这些功能部件的操作接口;同时为下层( 物 理层) 平台的设计提供设计需求和规范并实现从逻辑功能到物理操作的转换。 硬件抽象层的设计,屏蔽了物理层实例的结构差异性,有利于实现嵌入式系统 的软硬件协同设计并缩短开发周期。 嵌入式系统开发平台是由硬件系统和软件系统所组成的,即除了物理层实 例所包含的硬件资源为整个系统搭建物理运行环境之外,还包括了以软件形式 存在的各种计算资源来实现丰富的功能。为了使得软件系统能够有效地运行于 硬件环境之上,需要有其它的平台层提供相应的功能对整个系统及其所操作的 部件、装置以及计算资源等进行统一协调、指挥和控制,而这一功能是由核心 层和系统功能层共同完成的。 ( 3 ) 核心层 核心层完成任务管理、内存管理、中断管理以及任务通信等基本功能,简 要描述如下: 任务管理:在多任务系统中,任务是调度执行和资源竞争的基本实体单元。 核心层最基本的功能是任务管理。任务管理主要包括创建任务、删除任务、改 变任务状态和查询任务状态,其核心是任务调度。任务调度策略是否符合嵌入 式应用的特定要求对嵌入式系统的设计和实现至关重要m j 。 中断管理:使得中断服务程序( i s r ) 和其它应用任务之间协同工作,快速、 合理地响应外部事件,并完成后续的处理过程。 时间管理:为任务的实时响应提供支持,保证系统的实时性、正确性,以 提高嵌入式系统开发平台的实时工作能力。与时间相关的管理包括时钟管理和 定时器管理。 对共享资源的互斥管理:协调任务对共享资源的访问,避免出现竞争资源 时的系统死锁现象f 3 9 i 。实现资源互斥访问的方法主要有关中断、使用测试并置 位指令、禁止任务切换和使用信号量。 同步与通信管理:通过事件、信号量、互斥信号量、消息邮箱以及消息队 9 青岛大学硕士学位论文 列等机制实现任务与任务之间、中断服务程序与任务之间的同步和通信1 4 0 l 。 内存管理:核心层的内存管理机制将各种任务的运行限制在分配的内存区 域中,使得一个任务的执行不会影响到其它任务。内存管理包括的主要内容有: 二次定址、保护,共享、逻辑组织和物理组织等f 4 ”。 ( 4 ) 系统功能层 系统功能层向上层提供丰富的系统调用接口,使得上层实例能够通过接口 请求系统服务完成特定的功能。在响应请求的过程中,由核心层完成各系统服 务模块之间的协调和通信。系统功能层由文件管理功能模块、设备管理功能模 块、网络协议栈等功能模块组成。 文件管理功能模块:该功能模块提供文件的建立、组织、读写、修改、复 制等功能,并对文件操作所需要的资源( 如目录表、文件系统等) 实施管理。 通过使用该模块提供的操作接口,上层实例( 客户任务) 可以建立某种类型的 文件系统,并对该种文件系统下的文件进行存取和管理。 设备管理模块:该功能模块通过各种设备驱动程序的实现,为上层提供对 硬件设备进行结构化管理的功能。一个功能丰富的嵌入式产品之上可能安装多 种硬件设备,然而嵌入式系统的资源相对有限,若在系统初始化时将所有的设 备驱动程序全部加载,使得系统功能层庞大而不灵活,且造成了资源的浪费。 因此在对设备管理功能模块的设计采用的是模块的动态加卸载机制,即只有在 系统用到这些设备的时候才进行加载,不需要时卸载并释放该设备所占有的资 源。 网络协议栈模块:一个嵌入式系统在与外界通信时会使用各种通信协议, 典型的有t c p i p 协议、蓝牙协议、8 0 2 1 l 协议等。网络协议栈模块除了实现基 本的通信协议之外,还为上层平台提供一个统一的通信协议管理平台,可实现 通信协议的添加和删除,便于嵌入式系统功能的扩充和对各种通信协议的管理。 ( 5 ) 工具层 工具层主要为嵌入式软件设计人员提供程序设计接1 2 1 以及编程工具,包括: 嵌入式应用基础类库、嵌入式交叉开发套件以及引导开发工具等。工具层面向 二次开发用户和应用服务开发人员,用以简化嵌入式软件的开发。 ( 6 ) 接口层 接口层为嵌入式应用的集成提供了解决方案。基于层次模型的嵌入式系统 开发平台支持两种开发模式:传统的嵌入式应用开发和i p 核的集成。针对这两 种开发模式,接口层分别提供了应用设计接口和i p 核接口。 应用设计接口 应用设计接口通过嵌入式应用基础类库的形式为传统的嵌入式系统的开发 提供支持。嵌入式应用基础类库的设计目标是为嵌入式系统开发人员提供通用 i o 第二章基于层次模型的嵌入式系统开发平台分层技术概述 的编程接口( a p i ) ,形成面向具体应用的一系列标准的可扩展功能模块,从而提 高嵌入式软件产品的开发效率。嵌入式应用基础类库由基本函数库( 如字符串 处理函数、数值处理函数以及日期处理函数等) 、嵌入式图形调用库( 如j p e g 格式封装包、图形处理操作集等) 以及嵌入式通信协议库等功能模块构成。 i p 核接口 i p 核模块是一种预先设计好的甚至已经过验证的具有某种确定功能的集成 电路、器件或部件。i p 核接口的设计是为了解决不同来源的i p 核在嵌入式系 统开发平台中的快速集成。该层通过对i p 核与总线的接口进行抽象和封装来达 到缩短i p 核的设计周期和提高i p 核复用率的目的。i p 核接口的主要功能有: 第一,定义了i p 核进行系统集成的接口规范,使开发人员可以根据此规范快速 开发出基于该开发平台的i p 核;第二。实现了i p 核在总线上的挂载接口,使 得遵循接口规范开发的i p 核在无需了解具体s o c 互连信息的前提下即可实现核 内传输机制;第三,除了实现物理集成外,通过系统功能层装载i p 核的驱动程 序,便于嵌入式系统使用该i p 核所提供的各项功能。 ( 7 ) i p 应用层 i p 核在完成其功能设计之后,经过r t l 级的综合和验证最终以i p 硬核的 形式进行提交。通过口接口层提供的服务接口可将经过综合和验证的i p 硬核 快速集成到基于嵌入式系统开发平台中。一方面,最终被集成的i p 硬核可看作 物理层实例的一个组成部分;另一方面,通过系统功能层提供的设备管理接口, 上层能够对m 硬核进行结构化的管理和逻辑功能的使用。因此,分层化的设计 使得嵌入式系统开发平台能够通过对各种专用口核进行组合的方式实现针对 不同领域的应用。将由多个相对独立且提供不同功能的口核所组成的面向特定 应用的平台层次称为m 应用层。碑应用层是直接面向用户并为用户提供其所需 功能服务的平台层次,该层实例是为了完成某特定应用( 如i o 任务、计算任 务以及通信任务等) 而选择的全部i p 核组成的集合。 2 3 嵌入式系统开发平台核心层的设计方案和所实现的功能 本文从任务管理、内存管理和异常与中断管理三个模块入手对嵌入式系统开 发平台核心层进行设计( 如图2 2 所示) ,具体包括任务控制块的结构、就绪队 列的结构,任务实时调度以及任务切换机理,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 45674-2025网络安全技术生成式人工智能数据标注安全规范
- 2025-2026学年马边彝族自治县三年级数学第一学期期末预测试题含解析
- 2024年云南省昆明市寻甸回族彝族自治县三年级数学第一学期期末教学质量检测模拟试题含解析
- 2024年湖南省怀化市部分县区三上数学期末统考试题含解析
- 八年级语文上册 第四单元 第17课 奇妙的克隆教师配套 新人教版课件
- 2025年执业护士考试应试技巧及试题答案
- 2025年执业护士考试实战试题与答案
- 行政管理与社会影响力试题及答案
- 行政法学实践与理论试题及答案
- 药学领域中的研究趋势与分析考题试题及答案
- 小学高年级学生身体满意度和人际关系困扰的关系及自尊的中介作用
- 医院保密知识培训课件
- 标准化基础知识培训课件
- 第4章我们生活的大地知识点清单-2024-2025学年浙教版七年级下册科学
- 军事通信基础知识
- 建筑工地挖掘机吊装施工方案
- 8.2 法治政府 课件-高中政治统编版必修三政治与法治
- 糖尿病合并痛风
- 中西文化鉴赏知到智慧树章节测试课后答案2024年秋郑州大学
- 《天津市新型职业农民培育问题研究》
- 车险理赔重大案管理办法
评论
0/150
提交评论