已阅读5页,还剩70页未读, 继续免费阅读
(计算机软件与理论专业论文)基于arm的tkernel系统移植研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
中文摘要 摘要 t k e r n e l 作为一种嵌入式操作系统,由于实时性和开源性,在嵌入式操作系统 领域中的应用越来越广泛。a r m 是一款比较好的微处理器,t - k e r n e l 在a r m 上 的应用研究基本上是空白,所以结合两者进行研究促进t k e r n e l 在国内嵌入式领 域的发展。同时,t - k e r n e l 内部调度机制存在着优先级反转缺陷,优先级反向使得 高优先级任务的执行时间无法预测,增加了实时系统的不确定性。早期的解决协 议较好地解决了优先级反转问题,但同时也存在着自身不足之处。 针对t - k e r n e l 存在的缺陷,在深入研究相关协议的基础上,本论文提出了一 种新的改进的优先级继承协议。该协议设置超时保护机制,避免任务在获取信号 量时长时间的阻塞,结合h a v e n d e r 提出的“有序资源使用法 防止死锁发生,给 出该协议的分析过程,并把该协议结合到t - k e r n e l 中。在这个基础之上,建立研 究开发平台;针对硬件设备,研究引导程序的执行原理,实现系统的引导程序; 构建t - k e n n e l 内核;移植内核到开发板;最后对t - k e r n e l 的启动过程进行了详细 的分析。 t k e r n e l 在a r m 上的移植研究,为嵌入式系统开发的提供了一种开发流程, 同时对于t - k e r n e l 的启动过程的分析,为以后的应用程序开发提供了一个接口; 对于t k e r n e l 存在的优先级反转问题的解决,可以改进t - k e r n e l 的实时性和灵活 性,同时为实时系统的性能改进提供了参考。 关键词:嵌入式系统;a r m ;t - - k e r n e i 移植;优先级反转; 英文摘要 r e s e a r c ho np o r t i n go ft - k e r n e ls y s t e mb a s e do na r m a b s t r a c t a sak i n do ft h ee m b e d d e do p e r a t i n gs y s t e m , t - k e r n e li sa l r e a d ym o r ea n dm o r e e x t e n s i v ei nt h ee m b e d d e ds y s t e mb e c a u s eo fi t sc a p a b i l i t yo fr e a l - t i m ea n di t sc h a r a c t e r o fo p e ns o u r c e a r mi sak i n do fm i c r o p r o c e s s o r ,t h ea p p l i c a t i o no ft h et - k e r n e lo nt h e a r mi sa b s e n t , t h er e s e a r c ho ft h et - k e r n e lc o m b i n e dw i t i la r mc a l lp r o m o t et h e d e v e l o p m e n to ft h et k e r n e li nt h ee m b e d d e ds y s t e mr e a l ma th o m e m e a n w h i l e , t - k e r n e l si n t e r n a lt a s kd i s p a t c hm e c h a n i s mh a sp r i o r i t yr e v e r s el i m i t a t i o n s ,p r i o r i t y r e v e r s em a k e sh i g h e rp i i 嘶t yt a s k sm n t i m ei n s c r u t a b i l i t y ,a n dr e s u l t si nu n c e r t a i n t yo f t h er e a l t i m es y s t e m a l t h o u g he a r l yp r i o r i t i e ss o l v ep r i o r i t yr e v e r s e ,t h e r ea r es o m e l i m i t a t i o n s t oa i ma tt h ee x i s t e n tl i m i t a t i o n so ft - k e r n e l ,t h i sp a p e rp u t sf o r w a r dan e wa n d i m p r o v e dp r i o r i t yi n h e r i t a n c ep r o t o c o lo nb a s eo fr e s e a r c ho ft h ei n t e r r e l a t e dp r o t o c 0 1 t h en e wa n di m p r o v e dp r o t o c o le s t a b l i s h e so v e r t i m ep r o t e c t i o nm e c h a n i s mt oa v o i d p r o l o n g e db l o c kw h e n t a s k sa r ea c q u i r i n gs e m a p h o r e s i tc a na v o i dd e a dl o c ka c c o r d i n g t ot h em e t h o do fs h a r e dr e s o u r c eu s e db yo r d e rp r o v i d e db yh a v e n d e r t l l i sp a p e r a n a l y z e st h ep r o p e r t yo ft h ep r o t o c o l ,a n dt h ep r o t o c o li sc o m b i n e dw i t ht - k e r n e l o n t h eb a s e o ff o r e g o i n gw o r k ,i tb u i l d st h er e s e a r c ha n dd e v e l o p m e n tp l a t f o r m ;i t r e s e a r c h e st h ee x e c u t i o np r i n c i p l eo ft h eb o o t l o a d e r , a n di m p l e m e n t st h eb o o f l o a d e ro f t h es y s t e m ;i tb u i l d st h ek e r n e lo ft - k e r n e l ;i tp o r t st h ek e r n e lt ot h ed e v e l o p m e n tb o a r d ; a n da tl a s t ,i tg i v e st h ed e t a i l e dp r o c e s so ft h et k e r n e l ss t a r t u p 1 1 1 er e s e a r c ho np o r t i n go ft - k e r n e ls y s t e mb a s e do na r m p r o v i d e sak i n do f d e v e l o p m e n tf l o wf o rt h ee m b e d d e ds y s t e md e v e l o p m e n t ;t h es o l u t i o no ft h ep d o n t ) , r e v e r s el i m i t a t i o n so ft h et - k e r n e li m p r o v e st h et - k e r n e l sr e a l - t i m ea n df l e x i b i l i t y , a n dp r o v i d e st h er e f e r e n c ef o r t h ep e r f o r m a n c ei m p r o v e m e n to ft h er e a lt i m es y s t e m k e yw o r d s :e m b e d d e ds y s t e m ;a r m ;t k e r n e lp o r t i n g ;p r i o r i t yr e v e r s e ; 大连海事大学学位论文原创性声明和使用授权说明 原创性声明 本人郑重声明:本论文是在导师的指导下,独立进行研究工作所取得的成果, 撰写成博士硕士学位论文 论文中已经注明引用的内容外,对论文的研究做出重要贡献的个人和集体,均已 在文中以明确方式标明。本论文中不包含任何未加明确注明的其他个人或集体已 经公开发表或未公开发表的成果。 本声明的法律责任由本人承担。 论文作者签名毒,吣的僻弓月a a 日 学位论文版权使用授权书 本学位论文作者及指导教师完全了解“大连海事大学研究生学位论文提交、 版权使用管理办法一,同意大连海事大学保留并向国家有关部门或机构送交学位 论文的复印件和电子版,允许论文被查阅和借阅。本人授权大连海事大学可以将 本学位论文的全部或部分内容编入有关数据库进行检索,也可采用影印、缩印或 扫描等复制手段保存和汇编学位论文。 保密口,在年解密后适用本授权书。 本学位论文属于: 保密口、 不保密酯( 请在以上方框内打“4 ) 论文作者签名 基于a r m 的t - k e r n e l 系统移植研究 1 1 选题背景 第1 章绪论 嵌入式操作系统是一种支持嵌入式系统应用的操作系统软件,它是嵌入式系统( 包 括硬、软件系统) 极为重要的组成部分,通常包括与硬件相关的底层驱动软件、系统内 核、设备驱动接口、通信协议、图形界面、浏览器等。嵌入式操作系统具有通用操作系 统的基本特点,如能够有效管理越来越复杂的系统资源;能够把硬件虚拟化,使得开发 人员从繁忙的驱动程序移植和维护中解脱出来;能够提供库函数、驱动程序、工具集以 及应用程序等。 嵌入式操作系统一般都具有实时性、可剪裁性、可靠性等特点,与通用操作系统相 比较,在应用的专用性等方面具有较为突出的特点。 一般情况下,嵌入式操作系统可以分为两类,一类是面向控制、通信等领域的实时 操作系统,如w i n d r i v e r 公司的v x w o r k s 、i s i 的p s o s 、q n x 系统软件公司的q n x 、 a t i 的n u c l e u s 等;另一类是面向消费电子产品的非实时操作系统,这类产品包括个人 数字助理( p d a ) 、移动电话、机顶盒、电子书、w e b p h o n e 等【l 】。常见的嵌入式操作系统 有以下几种:v x w o r k s ,p s o s ,p a l mo s ,w i n c e ,l ac o s 一1 1 ,嵌入式l i n u x 等怛】。 以上是在嵌入式领域内应用的比较广泛的操作系统,还有一个操作系统在日本应用 的比较广泛,但是在国内的知名度却不是很高,那就是基于t r o n 规范的实时操作系统 t - k e r n e l t 。 t r o n ( t h er e a l t i m eo p e r a t i n gs y s t e mn u c l e u s ) 是由日本东京大学坂村健教授于 1 9 8 4 年提出的开放嵌入式实时操作系统规范,目的是构筑一种理想的计算机结构,实现 一种“泛在计算环境 。基于t r o n 构建的操作系统目前已被广泛应用于家电、汽车电 子、通信、工业控制等诸多领域,成为应用最为广泛的嵌入式操作系统之一。 所谓“泛在计算环境 是指将微型计算机嵌入到日常生活中的所有仪器、设备中, 通过网络相互通信协作,实现高度计算机化的社会环境。为了使计算机嵌入到包括移动 通信器等在内的各种设备中,需要计算机结构小型化并有很好的实时性能。为此,1 9 8 4 年坂村健提倡产业界与学术界联合启动“t r o n 项目计划 5 - 8 。 第1 章绪论 “t r o n 项目计划 推行了2 0 年,先后推出了n r o n ( 嵌入式系统用实时操作系 统规范) 、j t r o n ( j a v a 与i t r o n 的混合操作系统规范) 、b t r o n ( 计算机及手机信 息终端等最终客户直接操作的操作系统规范体系) 、c t r o n ( 以通信控制及信息处理 为目的的操作系统接口规范) 及t r o n h m i ( 面向各种电子机器的人机界面标准) 等规 范。 由于用作为实时操作系统的嵌入式计算机结构实时性能很好,它被广泛应用于汽车 电子、移动电话、传真机、电视机、录像机、数码相机等诸多领域,成为低价高性能嵌 入式系统的典范,也将有可能成为卫星测控、工业控制、医疗器械等领域的重要技术。 t r o n 项目的目的在于构建一个完美的普适计算环境,它是由六大基础研究子项目 为依托的,分别是:t r o n 规范芯片( t r o n s p e c i f i c a t i o nc h i p ) ,1 t r o n ( i n d u s t r i a l t r o n ) ,b t r o n ( b u s i n e s st r o n ) ,c t r o n ( c e n t r a l c o m m u n i c a t i o nt r o n ) , m t r o n ( m a c r ot r o n ) ,t r o ne l e c t r o n i ce q u i p m e n t 人机接口,j t r o n ( j a v a 与i t r o n 的混合操作系统规范) 。它们之间具体关系如图1 1 所示。 图1 1t r o n 项目之间关系图 f i g1 1r e l a t i o no ft r o np r o j e c t t - k e r n e l 是构建于t - e n g i n e 9 - 1 0 之上的标准化的开源实时操作系统核心,由 基于a r m 的t - k e r n e l 系统移植研究 t r o n ( t h er e a lt i m eo p e r a t i n gs y s t e mn u c l e u s ) 发展而来。经过2 0 多年的发展,这一操作系 统已经安装到了全球3 0 亿到4 0 亿台家用电子产品中,占全球微处理器操作系统约6 0 。该操作系统与其他操作系统相比主要具有两大鲜明特征:( 1 ) 几乎没有任何约束的开 放,即完全免费开放的t - k e r n e l 的源码,不管是个人还是企业都能做任何商业化的产品 开发;( 2 ) 超强的实时处理速度,该速度可以达到p s 级。 t r o n 采用库函数的方式提供内核对系统的各种支持,应用开发最终和内核函数编 译到一起。t r o n 的应用也得到了日本各大公司的支持,为其提供了很多的编译调试器, 例如日立公司提供的相应的c c + + 编译和调试器。不论是汽车电子还是家用电器,t r o n 都是很适合的实时嵌入式操作系统。 1 1 1 研究意义 在国内,t r o n 相关的资料很少,很多的嵌入式开发人员都没有听说过t r o n , t r o n 的潜在发展空间很大,而a r m 就目前来说,在嵌入式领域中是一款比较好的微 处理器,但在国内,t r o n 在a r m 上的应用基本上是空白,结合两者的应用对于未来 的嵌入式行业将起到很大的促进作用,所以现在对t r o n 在a r m 上应用的研究势在必 行。对这个方面的研究要从t r o n 内核- - t - k e r n e l 的移植开始。这为以后用户在t r o n 在a r m 应用的方面提供了一些解决方案,还可作为今后企业在t r o n 方面提供开发的 参考,为新产品的研发缩短周期,从而增加企业市场竞争力。 此外,我们同时发现t - k e r n e l 内部调度机制存在着优先级反转缺陷,优先级反转是 指当一个高优先级任务访问共享资源时,该资源已被一个低优先级任务占有,而这个低 优先级任务在访问共享资源时又可能被其它中优先级的任务抢占,造成高优先级任务被 许多较低优先级任务阻塞,高优先级任务在低优先级任务之后运行,实时性得不到保证。 针对这一问题要提出合理的解决方案。由于目前对于这个问题已经有两种解决问题的协 议一优先级继承和优先级上限,但是这两种协议也存在着弊病。本论文力图通过建立一 种适当的协议解决这种问题。提高t k e r n e l 更好的实时性和灵活性,同时为其他的实时 性操作系统提高性能提供了更好的参考方案。 第l 章绪论 1 1 2 研究内容 本文对基于a r m 的嵌入式平台的t k e r n e l 移植进行研究和讨论,同时对t - k e r n e l 本身存在不足之处进行改进,并且针对移植过程中的关键问题给了具体的解决方案。根 据课题的研究目标,首先分析t - k e r n e l 的内部调度机制,发现调度中存在的问题,找到 目前现有的解决问题的两种协议,同时发现这两种协议的缺陷,探索出一种更好的协议 解决这种问题。 将t - k e r n e l 移植到$ 3 c 2 4 1 0 x 的开发板上,在对系统引导程序认真分析的基础上, 利用系统引导程序正确的引导t - k e r n e l 启动。其中,由于t - m o n i t o r 没有具体的实现部 分,本论文分析t - m o n i t o r 的规范和u b o o t 的引导机制,结合具体的硬件实现引导程序。 由于像o n 相关的资料很少,特别是内部启动机制方面资料。所以根据这个问题, 重点分析和研究了t - k e r n e l 的启动过程,以及t - k e r n e l 的中断处理程序。这为以后继 续开发基于t - k e r n e l 的嵌入式设备提供了必要的条件。 1 2 论文结构 本文论述内容结构如下: 第1 章在综述嵌入式系统的基础上,介绍了嵌入式系统的组成、特点,对本文 的研究背景、研究内容进行介绍; 第2 章阐述a r m 架构和论文研究采用的嵌入式硬件平台f f t 2 4 1 0 的硬件结构; 第3 章分析t - k e r n e l 的内部调度机制;发现t - k e r n e l 存在优先权反转问题; 分析目前解决优先权反转问题的两种协议的缺陷,提出一种新的改进优先级继承协议, 同时证明该协议的正确性,并把该协议结合到t - k e r n e l 中; 第4 章结合课题的需要,实现嵌入式系统开发环境; 第5 章根据开发板的硬件,结合t - m o n i t o r 的执行规范,利用u - b o o t 对 t m o n i t o r 具体实现; 第6 章实现了针对本课题系统的内核移植和配置,研究t k e r n e l 的具体启动过 程和中断的实现方式; 第7 章总结了论文所做的工作以及对今后工作的展望。 基于a r m 的t - k e r n e l 系统移植研究 第2 章体系结构与硬件平台 从第一片处理器研发出来距今已有2 0 多年,经过2 0 多年的发展,a r m 已经成为 3 2 位嵌入式应用领域,全球范围内最广泛使用的处理器。a r m 公司将核授权给几乎所 有的半导体公司,由这些公司根据其市场定位设计和制造出各种基于a r m 核且具有自 己公司产品特色的芯片,广泛应用于嵌入式系统的开发中【1 1 】。 2 1a r m 体系结构的发展历史和技术特征 2 1 1 发展历史 1 9 8 3 年1 0 月至1 9 8 5 年4 月间,第一片a r m 处理器在位于英国剑桥的a c o r n c o m p u t e r 公司开发。在2 0 世纪8 0 年代后期,a r m 处理器己经发展为可支持a c o r n 公 司的台式计算机产品,这些产品奠定了英国教育界计算机技术的基础,在当时a r m 代 表着“a c o r nr i s cc o m p u t e r 1 1 2 。 1 9 9 0 年,为广泛推广a r m 技术而成立了独立的公司:a d v a n c e d 犁s cm a c h i n e l i m i t e d ( 简化为a r ml i m i t e d ) 。此时a r m 代表着a d v a n c e dr i s cm a c h i n e ,新公司成立 于1 9 9 0 年1 1 月,由苹果电脑、a c o r n 电脑集团和v l s it e c h n o l o g y 合资组建。 2 1 2 技术特征 a r m 处理器是基于精简指令集计算机r i s c ( r e d u c e di n s t r u c t i o ns e tc o m p u t e r ) 体系 结构的计算机系统。r i s c 诞生于指令集日益复杂之时,r i s c 的概念对处理器的设计起 着重大的影响。第一个基于r i s c 指令集的a r m 芯片是在1 9 8 3 年开始设计的,采用的 是典型的3 2 位r i s c 体系结构。其指令集拥有4 位的寄存器地址域,可访问r 0 - r 1 5 这1 6 个寄存器,而其他寄存器只有在特殊情况下才可访问到。a r m 指令使用了标准的 固定长度的3 2 位指令格式,所有a r m 指令都使用了4 位的条件编码来决定该指令是否 执行。这种方式可解决指令执行的条件判定,确定条件分支问题,从而对代码的密度和 性能都有好处,这也是a r m 指令集的一大技术优势。 传统的c i s c ( c o m p l e xi n s t r u c t i o ns e tc o m p u t e r ,复杂指令集计算机) 结构有其固有的 缺点,即随着计算机技术的发展而不断引入新的复杂的指令集,为支持这些新增的指令, 第2 章体系结构与硬件平台 计算机的体系结构会越来越复杂,然而,在c i s c 指令集的各种指令中,其使用频率却 相差悬殊,大约有2 0 的指令会被反复使用,占整个程序代码的8 0 。而余下的8 0 的指令却不经常使用,在程序设计中只占2 0 ,显然,这种结构是不太合理的。基于以 上的不合理性,1 9 7 9 年美国加州大学伯克利分校提出了r i s c 的概念,r i s c 并非只是 简单地去减少指令,而是把着眼点放在了如何使计算机的结构更加简单合理地提高运算 速度上。r i s c 结构优先选取使用频率最高的简单指令,避免复杂指令;将指令长度固 定,指令格式和寻址方式种类减少;以控制逻辑为主,不用或少用微码控制等措施来达 到上述目的。 2 2a r m 体系的处理器内核 s 3 c 2 4 1 0 芯片所用的处理器内核是舢己m 9 2 0 t ,主要包括内核删9 ) m i 、缓冲器 c a c h e 和内存管理单元m m u ,整个处理器的组织结构 1 3 - 1 4 ,如图2 1 所示。 指令 c a c h e 指令 m m l 7 虚 拟 物 尘尘里 外部协处理 器接口 数据 圈i c e & j t a g 卜 l 订 虚 拟 口 半学 a m b aa m b a 地址数据 图2 1a r m 9 2 0 t 模块图 f i 9 2 1m o d u l e so fa r m 9 2 0 t 数据 c a c h e 2 2 1a r m 处理器的工作状态 自从a r m 7 t d m i 核产生之后,体系结构中具有t 变种的a r m 处理器核可工作在 型霉遵窭 基于a r m 的t - k e r n e l 系统移植研究 以下2 种状态: a ) a r m 状态。a r m 状态下执行字对齐的3 2 位指令。 b ) t h u m b 状态。t h u m b 状态下执行半字对齐的1 6 位指令。在t h u m b 指令状态下, 程序计数p c 使用l 位选择另一个半字。 在程序执行过程中,处理器可在两种状态下切换。需要强调的是: a ) a r m 和t h u m b 之间状态的切换不影响处理器的模式或寄存器的内容。 b ) a r m 指令集和t h u m b 指令集都有相应的状态切换命令。 c ) a r m 处理器在开始执行代码时,只能处于a r m 状态。 2 2 2 处理器模式 处理器共有7 种运行模式,如表2 1 所示: 除了用户模式之外的其他6 种处理模式称为特权模式。在这些模式下,程序可以访 问所有的系统资源,也可以任意地进行处理器模式的切换。其中,除系统模式外,其它 5 种特权模式又称异常模式。 处理器模式可以通过软件控制进行切换,也可以通过外部中断或者异常处理过程进 行切换。大多数的用户程序运行在用户模式下。这时,应用程序不能够访问一些受操作 系统保护的系统资源。应用程序也不能直接进行处理器模式的切换。当需要进行处理器 模式切换时,应用程序可以产生异常处理,在异常处理过程中进行处理器模式的切换。 这种体系结构可以使操作系统控制整个系统资源。 表2 1a r m 处理器模式 t a b 2 1m o d eo fa r m p r o c e s s o r 处理器模式相应的中断模式描述 用户模式 ( u s e r ,u s r ) 正常程序执行的模式 快速中断模式 ( f i q ,f i q ) 用于高速数据传输和通道处理 外部中断模式 ( i r q ,i r q ) 用于通常的中断处理 特权模式 ( s u p e r v i s o r ,s v c ) 供操作系统使用的一种保护模式 数据访问中止模式 ( a b o r t ,a b t ) 用于虚拟存储及存储保护 未定义指令中止模式 ( u n d e f i n d e d ,m a d ) 用于支持通过软件仿真硬件的协处理器 系统模式 ( s y s t e m ,s y s ) 用于运行特权级的操作系统任务 第2 章体系结构与硬件平台 当应用程序发生异常中断时,处理器进入相应的异常模式。、在每一种异常模式中都 有一组寄存器,供相应的异常处理程序使用,这样就可以保证在进入异常模式时,用户 模式下的寄存器不被破坏。 2 3a r m 存储器接口及存储器层次 2 3 1 存储器层次简介 现代处理器具有很高的指令执行速度,为了发挥其最佳性能,需要有一个访问速度 和容量与其匹配的存储系统。但是通常情况是,存储器的大小和它的访问速度是相互制 约的。采用多级存储技术是一种可以令人满意的折中方案,它包括一个容量小但是访问 速度极快的存储器和一个容量大但是访问速度稍慢的主存储器组成,这样整个存储系统 在外部看来既大有快。$ 3 c 2 4 1 0 包括以下多级存储器结构: 1 ) 寄存器组可以看作是存储器的顶层,典型的r i s c 微处理器大约有3 7 个3 2 位寄 存器,总共1 2 8 字节,其访问时间为几个n s 。 2 ) 片上指令c a c h e 和数据c a c h e ,一般容量为8 3 2 k b ,访问时间大概为1 1 s 。高性 能p c 机系统可能有第2 级片外c a c h e ,其容量为几百k b ,访问时间为几十n s 。 3 ) 片上s r a l v l 和r o m ,如果微处理器要达到最佳性能,采用片上存储器是必要 的。它和片上寄存器组具有同级的读写速度。与片外存储器相比,它有较好的 功耗效率,并减少了电磁干扰。 4 ) 主存储器是两片s d r a i v i 和一片f l a s h 存储器,主存储器可能是几兆字节到 1 g b 的动态存储器,访问时间大概为5 0 n s 。 5 ) 硬盘作为后援存贮器,容量可能从几百兆字节到几十个g b ,访问时间大概为几 十i l l s 。 2 3 2m m o 内存管理部件使用内存映射技术实现虚拟空间到物理空间的映射。通常嵌入式系统 的程序存放在r 0 1 v o r f l a s h 中,这样系统断电后程序能够得到保存。但是r o m f l a s h 与 s d r a m 相比,通常速度要慢很多,而且嵌入式系统中通常把异常中断向量表存放r a m 基于a r m 的t - k e r n e l 系统移植研究 中,系统加电时将r o m f l a s h 映射为地址0 ,这样可以进行一些初始化处理;当这些初 始化处理完成后,将s d r a m 映射为地址o ,并把系统程序加载到s d r a m 中运行。 存储器管理单元主要完成以下工作: 虚拟存储空间到物理存储空间的映射。在a r m 中采用了页式虚拟存储管理。 它把虚拟地址空间分成一个个固定大小的块,每块称为一页,把物理内存的地 址空间也分成同样大小的页。m m u 就是实现从虚拟地址到物理地址的转换。 存储器访问权限的控制。 设置虚拟存储空间的缓冲特性 2 3 3 $ 3 0 2 4 1 0 处理器的存储映射 $ 3 c 2 4 1 0 有2 g 存储空间,划分为1 6 块,每块为1 2 8 m 字节。第1 到第8 块地址空 间通过外部片选n c s 0 n c s 7 选定;第o 块地址空间用作内部存储器;第1 5 块地址空间 用作外围设备,可以通过先进外围设备总线( a p b ) 访问;其余地址空间没有定义。如图, 2 2 所示 秘啊呻幡帅囊- i r a b o o t r o = l 1 盈- e , h d o r 随0 1 a e c e s s l t 生 麓啦a e g o n 萄l b a - _ i 图2 2 $ 3 c 2 4 1 0 处理器存储映射 f i 9 2 2s t o r a g em a p p i n g o fs 3 c 2 4 1 0p r o c e s s o r 篙 鬻一 署享量器 第2 章体系结构与硬件平台 $ 3 c 2 4 1 0 的存储器控制器提供访问外部存储器所需要的存储器控制信号。 2 4s 3 0 2 4 1 0 硬件平台 本论文中采用的是傅立叶的f i t 2 4 1 0 开发板1 6 1 ,它是基于s a m s u n g 公司的a r m 处 理器$ 3 c 2 4 1 0 x 开发平台,以该公司的s m d k 2 4 1 0 为原型,核心板采用6 层板设计。 $ 3 c 2 4 1 0 x 使用a r m 9 2 0 t 核,内部带有全性能的m m u ( 内存处理单元) ,它适用于设计 移动手持设备类产品,具有高性能、低功耗、接口丰富和体积小等优良特性。f i t - 2 4 1 0 正是基于此芯片本身的各种特点而设计的。硬件上f i t 2 4 1 0 采用核心板与接口分离的形 式,将s 3 c 2 4 1 0 的最小系统高度集成在核心板上,而系统的外围设备,以太网络、视频、 音频,s d 卡等则从地板上引出。对于客户来讲,不同的需求需要不同的接口形式,但 是所需要的最小系统大致相同。在软件上,首选韩国m i z i 公司所公布的开放源代码的 免费嵌入式操作系统a r m - l i n u x ,基于该平台及其开发工具包,编写和移植了很多软件 供参考,如控制台模式下的m p 3 播放器,w e b 服务器( 支持c g d ,f t p 及其服务器,t e l n e t 及其服务器,键盘标准驱动程序等等。 2 4 1 开发板特性及资源 $ 3 c 2 4 1 0 :1 6 3 2 b i ta r m 9 2 0 t 内核,标称工作频率:2 0 3 m h z ,运算能力: 2 2 0 m 口s ,最高工作频率:2 6 6 m h z 系统时钟:内部p l l 产生2 0 0 2 6 6 m h zc p u 内核工作频率;外部总线频率: 1 0 0 。1 3 3 m h zf l a s h r o m 核心板6 4 m b y t e n a n d f l a s h s d r a m :核心板6 4 m b y t e ( 可升级至1 2 8 m b y t e ) l c d 控制器:c p u 内置s t n ,c s t n 用f 1 rl c d 控制器,支持1 0 2 4 7 6 8 分辨率 下的各种液晶 触摸屏控制器:c p u 内置4 线制电阻式触摸屏控制器 u 舢订:2 通道r s 2 3 2 串口 u s b 主口:2 个 u s b 从口:1 个 基于a r m 的t - k e r n e l 系统移植研究 s d m m c 卡接口:1 个 r t c 实时时钟:具备后备电池插座 i i c 接口的e e p r o m :1 个 s p i :1 通道s p ! 高速同步串行口 i i s 音频输入输出接口 麦克风输入接口:1 个 中断和测试按键:4 个 1 0 m 以太网口:1 个 数码管:1 个 l e d 灯:2 个 j t a g 接口:1 个 5 v 电源 2 5 本章小结 本文首先介绍a r m 的体系结构,a r m 处理器的工作模式以及a r m 存储结构。最 后介绍本论文涉及到的硬件平台,包括平台特性和硬件资源,这些为后续的研究工作打 好基础。 第3 章嵌入式实时操作系统t - k e r n e l 第3 章嵌入式实时操作系统t - k e r n ei 3 1t - k e r n ei 概要 t k e r n e l 是以t - e n g i n e 系统为核心的操作系统,继承了p l t r o n 的技术,并进一步 进行了强化。t - k e r n e l 的设计采用了微内核的结构,不具有文件系统和网络协议等上层 o s 功能。 在t - k e r n e l 中,仅包含实时核心的基本功能,不包括文件管理、网络管理和 g u i ( g r a p h i c a lu s e ri n t e r f a c e ) 等功能,这一点与1 t r o n 是一样的。文件管理等功能由运 行在t k e r n e l 的基本中间件提供,与t k e r n e l 组合使用。其中具有代表性的是提供文 件管理、事件管理和过程管理等功能的t - k e r n e le x t e n s i o n 。此外,g u i 方面、t c p i p 等通信方面、m p e g 等多媒体方面、语音识别和语音合成、手写文字识别、安全方面等 多种中间件以及浏览器等大型应用程序、各种设备的设备驱动程序等则由t - e n g i n e 予以 移植和开发,并通过它们的使用可以大幅度缩短嵌入式系统的开发周期和开发工时。 t - k e r n e l 从功能上可分为t - k e r n e i o s ( o p e r a t i n gs y s t e m ) 、t - k e m e l s m ( s y s t e m m a n a g e r ) 、t - k e m e l d s ( d e b u g g e rs u p p o r t ) 3 部分。 t - k e m e i o s 是t - k e r n e l 的核心部分,实现其任务管理和同步控制等作为实时o s 的基本功能。相当于过去p l t r o n 功能的部分,主要由t k e r n e v o s 负责。 t - k e m e l s m 提供设备驱动和系统内存的管理等系统总体管理功能,其功能是在 t - k e r n e l 中由b i t r o n 扩展的功能。 t - k e m e l d s 提供调试器开发工具的功能,因此,如果进行通常的编程,就不需要 意识到t k e r n e l d s 的存在。 3 1 1t - k e r n el 的核心对象和动态资源管理 t - k e r n e l 把操作对象的资源称为核心对象或简称为对象。任务、周期性处理程序、 信号量和邮箱都属于核心对象。编制t k e r n e l 上的程序,可以说就是编制核心对象。如 表3 1 所示。 基于a r m 的t - k e r n e l 系统移植研究 表3 1t - k e r n e i o s 的核心对象表 t a b 3 1c o r eo b j e c to ft - k e r n e f o s 分类核心对象 任务任务 信号量 同步通信事件标志 邮箱 互斥体 扩展同步通信消息缓冲区 集合点端口 固定大小的内存池 内存池管理 大小可变的内存池 周期性处理程序 时间管理 报警处理程序 任务是t - k e r n e l 上的程序执行单位,应用程序通常由一个或多个任务组成。各任务 由t - k e r n e l 控制,根据各个任务所被认定的优先顺序,进行分时执行。 为了进行任务间的同步通信,配置了信号量、事件标志和邮箱等同步通信功能以及 互斥体、消息缓冲区和集合点端口等扩展同步通信功能。 内存池是由任务动态确保内存的一种配置,例如,利用邮箱传送来自其他任务的数 据区域等。 : 周期性处理程序和报警处理程序与任务不同,是由t - k e r n e l 的时间管理功能所执行 的程序,总称为时间事件管理程序。不属于时间事件管理任务的程序,称为任务无关部 分,其他还有进行中断处理的中断处理程序。 在t k e r n e l 中,核心对象能够根据d 的树枝加以识别。例如,为了识别任务,可 以利用任务d ;而利用信号量d ,则可以识别信号量。 利用t - k e r n e l ,对象的d 全部在程序执行时被自动动态分配。例如,在生成任务 时通过t - k e r n e l 内的处理分配任务d ,用户则不能分配任意的值。因此,由核心所分 配的d 在编程中是个变量。 第3 章嵌入式实时操作系统t - k e r n e l 3 1 2t - k e r n e f 的内存管理 t k e r n e l 一个突出的特点就是支持m m u 的内存管理功能。m m u 是实现内存保护 和虚拟内存的硬件,在标准t e n g i n e 的c p u 中,是必须具备的。不使用m m u 时,程 序运行于物理内存上的物理地址空间上。而使用m m u 时,程序则在虚拟内存上的逻辑 地址空间运行。 在t - e n g i n e 系统中,实际操作m m u 进行内存管理的是t - k e r n e l e x t e n s i o n 。t k e r n e l 本身仅提供为实现t - k e r n e le x t e n s i o n 管理所需的基本功能。因此,内存管理模式要依 赖于,通过改变t - k e r n e le x t e n s i o n 可以灵活应对不同的内存管理。另外,即使不使用 m m u 的系统( 或者不存在m m u 的c p u ) ,也可以运行t - k e r n e l 。 下面以t k e r n e le x t e n s i o n 为前提,说明内存管理的构造。 1 任务固定空间和共享空间 使用m m u 时,t - k e r n e l 的任务在逻辑地址空间上运行。这一逻辑地址空间分为任 务固定空间和共享空间。 任务固定空间是指只有属于它的任务才能访问的内存空间。通常,任务属于特定的 某一个任务固定空间。一个任务固定空间允许有多个任务,但是,一个任务不允许属于 多个任务固定空间。 共享空间是所有任务均可以访问的内存空间。在共享空间中,包括系统所使用的空 间和任务间共享的空间。 某个任务只能在自己所属的任务固定空间和共享空间进行访问。例如,图3 1 中的 任务a 仅可以对任务固定空间# 1 和共享空间进行访问。任务b 和任务c 仅可以对任 务固定空间2 # 和共享空间进行访问。任务d 仅可对任务固定空间3 # 和共享空间进行 访问。各任务固定空间在逻辑地址空间上有重叠,实际上被分配的物理内存是其他的内 存。因此,任务a 和任务b 即使对任务固定空间上的同一地址进行访问,实际所访问 的内存也是不一样的。 基于a r m 的t - k e r r 七l 系统移植研究 图3 1 任务固定空间和共享空间 f i 9 3 1t a s ks p a c ea n ds h a r es p a c e 通过对每一任务设置任务固定空间,可以防止某个任务破坏其他任务的内存信息。 但与此同时,在任务间也就不能共用全局变量。需要共享的数据,必须确保其共享空间, 将其置于该空间内。生成任务时要指定各任务的任务固定空间。不使用m m u 时,可以 忽略任务固定空间的指定。 2 内存的保护级别 t k e r n e l 在内存空间设定保护级别。保护级别分0 3 级,共有4 个级别,数值越小, 越处于高层。在任务中设定与保护级别相对应的执行级别。执行级别为n 的任务,可以 访问保护级别n 以下的内存空间。例如,执行级别为2 的任务,可以访问保护级别2 和3 的内存空间。表3 2 规定了保护和执行级别的用途。 即使是属于共享空间上的内存空间,如果保护和执行级别不同,也不能进行访问。 因此,可以防止用户的应用程序破坏系统的内存空间。 保护和执行级别使用和等硬件功能来实现,因此,实际的保护和执行级别的功能要 依赖于硬件。例如,很多c p u 支持特权模式和用户模式两种执行模式。在这种情况下, 3 级则在用户模式中分配了0 - 2 级的特权模式,不保护0 - - 2 级的内存。 表3 2 内存的保护级 t a b 3 2p r o t e c tl e v
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 个体商铺合伙协议书
- 供气安全责任协议书
- 广东清远市清新区机关事务管理局招聘政府专项工作聘员易考易错模拟试题(共500题)试卷后附参考答案
- 分割车间承包协议书
- 广东事业单位2025广州市城乡建设委员会招录人员易考易错模拟试题(共500题)试卷后附参考答案
- 山西晋城城区2025部分事业单位招聘(测评)易考易错模拟试题(共500题)试卷后附参考答案
- 四川省成都市成华区列五中学2024-2025学年高二上学期10月测试化学试题含解析
- 查阅资料保密协议书
- 大连市青少年记者学会招录大学生实习就业人才招聘易考易错模拟试题(共500题)试卷后附参考答案
- 桃江竹笋产业协议书
- 人教版四年级数学上册四年级数学上册典型例题系列之第4单元:面积问题专项练习(解析版)人教版
- 保洁员绩效考核标准
- JJF 1975-2022 光谱辐射计校准规范
- 中医诊所卫生技术人员名录表
- 高二语文上册《老人与海》课文
- 网御安全系统power v功能使用手册
- 氢能系列报告认识氢能
- 社区心理学课件
- 彤程化学装置水联运方案(草稿)
- 注塑模具验收标准
- 2009-2022历年上海市公务员考试《专业科目-政法》真题含答案2022-2023上岸必备汇编4
评论
0/150
提交评论