(物理电子学专业论文)嵌入式linux在epon系统上的移植及开发的研究.pdf_第1页
(物理电子学专业论文)嵌入式linux在epon系统上的移植及开发的研究.pdf_第2页
(物理电子学专业论文)嵌入式linux在epon系统上的移植及开发的研究.pdf_第3页
(物理电子学专业论文)嵌入式linux在epon系统上的移植及开发的研究.pdf_第4页
(物理电子学专业论文)嵌入式linux在epon系统上的移植及开发的研究.pdf_第5页
已阅读5页,还剩62页未读 继续免费阅读

下载本文档

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

文档简介

,y 5 7 7 4 8 8 摘要 干兆以 太网无源光网 络e p o n ( e t h e rn e t p a s s i v e o p t i c a l n e t w o r k ) 是解决“ 最后一公里” 瓶颈的新兴宽带光接入技术,具有成本低、兼容性好、技术成熟、可维护性强、业务功 能灵活等特点,因此市场前景十分看好。 e p o n 系统的光线路终端o l t ( o p l i c a l l i n e t e r m i n a l ) 和光网 络单元o n u ( o p t i c a l n e t w o r k u n it ) 都是典型的嵌入式系统设计, 它山 c p u ( m p c 8 2 4 5 ) , 存储设 备、 外围 硬件 设备和嵌入式软件组成。嵌入式软件包括嵌入式操作系统和用户应用程序两个部分, 它 是e p o n 系统交换、控制的核心,尤其是嵌入式操作系统更是整个e p o n 的灵魂。因此, 嵌入式操作系统的选择与研究及其 卜 的应用程序的夕 发成为整个e p o n 系统研发的关 键。 本文的主要研究工作及取得的成果如下: ( 1 ) 研究了 e p o n 系统的体系结构, 并对嵌入式系统的 特点、 设计和应用作了 深入的 论述。 ( 2 )从多个角度分析了 嵌入式l in u x 作为嵌入式操作系统的可行性, 并分析了 嵌入式 l i n u x 用于嵌入式系统今后需要完善的几个方面。 ( 3 ) 在深入分析p p c b o o t 源代码的 基础上, 结合o l t / o n u 主板的 特性, 完成了 p p c b o o t 在o n u / o l t 上的修改与移植。 ( 4 )基于嵌入式l i n u x 内 核的 源代码, 针对e p o n 系统的硬件特性, 对嵌入式l i n u x 内 核进行了修改和配置。设计了包括o l t / o n i 交换芯片的驱动程序。 ( 5 )基于嵌入式l i n u x , 开发了 e p o n 系统中的 应用程序模块, 并以 s n m p 为 例, 详细 地论述了应用程序模块的实现。 关键词:以太网无源光网络 l i n u x 内核移植 嵌入式l i n u x引导装载程序 简单网络管理协议 来经作 者、 一导 )i p ii) 勿全_交 公布 ab s t r a c t e p o n ( e t h e r n e t p a s s i v e o p t i c a l n e t w o r k s ) i s a n e m e r g in g b r o a d b a n d o p t i c a l a c c e s s n e t w o r k t e c h n o l o g y t o s o l v e t h e l a s t m i l e b o t t l e n e c k . i t h a s t h e c h a r a c t e r i s t i c o f l o w c o s t a n d g o o d c o m p a t i b i l i t y , a n d i t s t e c h n o l o g y h a s b e e n d e v e l o p e d w e l l . t h e r e f o r e e p o n h a s a f a i r l y w i d e m a r k e t . o p t i c a l l in e t e r m i n a l a n d o p t i c a l n e t w o r k u n i t a r e t y p i c a l e m b e d d e d s y s t e m s i n e p o n , w h i c h c o m p r i s e c p u ( m p c 8 2 4 5 ) , m e m o r y e q u i p m e n t , p e r i p h e r a l h a r d w a r e e q u i p m e n t a n d e m b e d d e d s o ft w a r e . e md e d d e d s o ft w a r e i n c l u d e s e m b e d d e d o p e r a t i o n s y s t e m a n d u s e r s a p p l i c a t io n , w h i c h i s t h e c o r e o f e x c h a n g e a n d c o n t r o l in e p o n , e s p e c i a l l y e m b e d d e d o p e r a t i n g s y s t e m b e i n g t h e s o u l o f w h o l e e p o n s y s t e m . s o t h e c h o i c e a n d s t u d y o f e m b e d d e d o p e r a t i n g s y s t e m , a l o n g w i t h d e v e l o p i n g a p p l i c a b l e s o ft w a r e u n d e r e m b e d d e d o p e r a t in g s y s t e m, b e c o m e s t h e k e y o f w h o l e e p o n . b a s e d o n t h e d e s i g n a n d s t u d y o f e p o n , c o n t e n t s i n t h i s p a p e r a r e f o l l o w s ; ( 1 ) s t u d y t h e s y s t e m s t r u c t u r e o f e p o n , d i s c u s s t h e e m b e d d e d s y s t e m a n d i t s c h a r a c t e r i s t i c , i t s d e s i g n a n d i t s a p p l i c a t i o n s ( 2 ) a n a l y z e t h e f e a s i b i l i t y o # e m b e d d e d l i n u x a p p l i e d i n e p o n s y s t e m f ro m d i f f e r e n t w a y , a l s o a n a ly z e t h e l i m i t a t i o n o f e m b e d d e d l i n u x . ( 3 ) b a s e d o n d e e p l y a n a l y z e o f t h e s o u r c e c o d e o f p p c b o o t , c o m b i n e d w i t h t h e c h a r a c t e r i s t i c o f h a r d w a r e , f i n i s h t h e m o d i f i c a t i o n a n d p o r t i n g o f p p c b o o t o n t h e ma i n b o a r d o f ol t a n d o nu. ( 4 ) b a s e d o n t h e s o u r c e c o d e o f th e k e rn e l o f l i n u x - 2 .4 . 1 9 , a i m i n g a t t h e c h a r a c t e r i s t i c o f h a r d w a r e , a me n d e d a n d c o n f i g u r e d t h e k e rne l o f l i n u x - 2 .4 . 1 9 , d e s i g n t h e d r i v e r o f b c m5 6 1 5 . ( 5 ) d e v e l o p t h e m o d u l e s o f a p p l i c a t i o n s i n e p o n u n d e r l i n u x . a s a e x a m p l e , d e t a i l e d l y d i s c u s s t h e p r o c e s s o f i m p l e m e n t a t i o n o f s n mp i n e p o n . k e y w o r d s : e p o n l i n u x e mb e d d e d l i n u x b o o t l o a d e r p o rt i n g s nmp i v 1 绪论 1 . 1 引言 无源光以太网 ( e p o n )的开发是由 a l l o p t i c 等新公司推动的,发起原因是异步传输 模式无源光网 络a p o n ( a t m p a s s i v e o p t i c a l n e t w o r k ) 标准不适合本地环, 缺少视频传 输功能、带宽有限、结构复杂、造价昂贵。随着快速以太网、g 比特以太网和i o g 以太 网逐渐成为主流, a l l o p t i c 坚信e p o n 会消除广域网 、 n a n ( w i d e a r e a n e t w o r k ) 和局域网 l a n ( l o c a l a r e a n e t w o r k ) 连接中a t m和i p 之间的协议转换。e p o n 建立在国际电联 i t u ( i n t e r n a t i o n a l t e l e c o m m u n i c a t i o n s u n i o n ) 关于a p o n 的 标准g . 9 8 3 上面, 寻求构建 把生活带入梦幻般完美的服务接入网络f s a n ( f i n e s e r v i c e a c c e s s n e t w o r k s ) 。 这个完美 服务接入网 络在单一的 光接入系统匕 传输汇聚的数据、视频和语音信息1 1 1 . e p o n 的经济学考虑非常简单, 光纤是传输数据、 视频和语音业务最有效的媒介, 能 提供无限的带宽。 但是将每个用户与端局之间实现点对点光纤连接, 在光纤的两端安装 有源电设备,在端局实现所有光纤连接的管理,其费用巨大,无法承受。e p o n 克服了 点对点的弊端,转而采用点对多点拓扑,不需要诸如再生器、放大器和激光器等电子器 件, 减少了端局使用的激光器数量。 点对点光纤技术适用于城域网和长距离应用, e p o n 适用于接入网的特殊要求。 e p o n比其他接入网技术更为简单, 效率高, 费用低。 e p o n 将光纤延 f 中 到最后一公里,从而获得高效、高可扩性、 低维护费用、端到端的 光网 6 1 e p o n最大 的优越性在于允许运营 商放 弃复杂 昂贵的异步传输模式 a t m ( a s y n c h r o n o u s t r a n s f e r m o d e ) 和同步光纤im ) s o n e t ( s y n c h r o n o u s o p t i c a l n e t w o r k ) 器件, 从而使网 络大为简化z 1 。 传统的电 信网 使用多层结构,u p o v e r a t m, s o n e t和 wd m,这种结构的网络要传输i p 业务,需要使用a t m交换机来构成虚链路,使用分插 复用器和数字交叉连接设备管理s o n e t 环和点对点的 w d m 光连接 3 1 1 . 2 e p o n系统的体系结构 e p o n 系统主要由网 元管理系统 ( e m s , e l e m e n t m a n a g e m e n t s y s t e m )、 光线路终 端 ( o l t ) 、 光 配线 网 ( o d n , o p t ic a l d i s t ri b u t i o n n e t w o r k ) 、 光网 络 单 元 ( o n u ) 组 成4 1 。如 图l . 1 所示: 一 , go i 图 1 . 1 e p o n 系统的 体系结构 o l t一般位于中心局内, 它提供与o d n 之间的光接口。 在o a n 网络侧, o l t应 提供至少一个网络接n , o l t 也提供传送到o n u所需各种业务的手段。 o n l连接p o n的用户侧,提供用户数据、图像和电话网络与p o n 的接口。 o n u 的基本功能是接收光信号, 并将其转换成用户需要的 格式( 以 太网、 i p 多 播、 p o t s , t i ) . e p o n 一个特有的性能是o n u 除了接收光信号并进行转换之外,还提供第2 , 3 层的交换 功能, 允许企业业务在o n u 内部实现路由。 e p o n 还可以利用第3 个波长来传输图像业务 5 o d n即 光配线网 络由 单模光纤和分路/ 祸合器、 连接器、 光纤接头等无源器件组成 ( 这些光缆和器件均在室外) 。 有源器件如o l t和o n l在o d n的 两端。 光信号在o d n 中的传输时, wd ma 把各o n l 的 眨 行信号分别调制为不同波长的光信号, 即每个o n i 占用一个波长,经过合波器藕合到同一根光纤传输到o l t ,在o l t中利用分波器分别 取出属于各o n u 的不同波长的光信号,再分别通过光电探测器解调为电信号,下行则 采用) 播方式13 1 由于 o n u 位于每个光纤到 f t t 13 ( f i b e r t o t h e b u i l d i n g ) 和光纤到户f t t h ( f i b e r t o t h e h o m e ) 应用的用户位置,其费用将由多个用户共同分摊,o n u的设计和费用是建造 e p o n 系统的关键因素。通常o n u 的费用占f t t b 的7 0 %,在f t t h中,o n l的成本占接 近8 0 % 1 3 1 0 e p o n系统中的o l t / o n u都是典型的嵌入式系统,它们以m p c 8 2 4 5 作为c p u , 各带有3 2 m的内存s d r a m和4 m的闪存f l a s h作为存储设备,外围有b c m5 6 1 5 交 换芯片及以太网日、串口设备,还有引导 程序、嵌入式操作系统和应用程序都烧写在 f l a s h中, 从而使o l t / o n i . 具有交换机的基本功能, e p o n系统成为可配置可管理的 网络系统。 1 . 3 嵌入式系统 嵌入式系统早己渗入到人们日常生活的每 一 个角落,与我们的生活息息相关! 3 c 融合、三网融合、中小企业信息化加速进行,无论是消费电子、还是企业计算市场,对 嵌入式系统的需求从来都未像今天这般为 i t业所重视。从掌上电脑、软交换机到即插 即用的电子邮件服务器,我们可以窥斑见豹地感受到 i t产品市 场正面临着这样三个互 相关联的机遇:下一代互联网的自 主运算趋势;企业对 i t解决方案后台化、简单化的 诉求:消费者期待网络功能强大、简单易用、 扩展方便、稳定低耗的下一代手持计算设 各。 这三方需求正在拉动一个以消费电子设备、自 主计算网络部件和功能服务器等产品 为代表的全新嵌入式系统及相关产品、 解决方案迅速浮出水面19 1 而嵌入式系统是以应用为中心,以半导 体技术、 控制技术计算机技术和通讯技术为 基础, 强调硬件软件的协同性与整合性, 软件与硬件可剪裁, 以满足系统对功能、 成木、 体积和功耗等要求的专用计算机系统。高实时性是嵌入式系统的基木要求,其次, 还要 求代码尽可能小,运行速度尽可能快,可靠性尽可能高 , “ 。 嵌入式系统一般由嵌入式微处理器、 存储设备、外围硬件设备、嵌入式操作系统以 及用户应用程序等1 i. 个部分组成,用于实现对其他设备的控制、监视或管理等功能。 嵌入式系统的核心是嵌入式微处理器。嵌入式微处理器一般就具备以下4 个特点: ( 1 )对实时多任务有很强的支持能力,能完成多任务并且有较短的中断响应时间,从 而使内部的代码和实时内核心的执行时阳 减少到最低限度。 ( 2 )具有功能很强的存储 区保护功能。 这是由于嵌入式系统的软件结构己模块化, 而为了避免在软件模块之问出 现错误的交叉作用,需要设计强大的存储区保护功能,同时也 有利于软件诊断。 ( 3 ) 可 扩展的处理器结构, 以能最迅速地开展出满足应用的最高性能的嵌入式微处理器 ( 4 ) 嵌入式微处理器必须功耗很低, 尤其是用于便携式的无线及移动的计算和通信设备中靠 电池供电的嵌入式系统更是如此如需要功耗只有m w 甚至i w 级。 嵌入式操作系统是嵌入式系统的灵魂。 简单的只是流程控制的嵌入式系统一般不使 用操作系统, 但是一旦提供图形界面和网络支持等功能后, 就变得复杂化, 这是就需要 操作系统作系统软件了。嵌入式操作系统具有一下几个特点:小的系统内核、 较强的实 时性、多任务功能、能够提供各种设备的驱动程序、 提供图形界面和t c p / i p , p p p 等协 议支持。 嵌入式操作系统是操作系统领域的一个重要分支, 越来越多的企业和科研机构 把日 光转向嵌入式操作系统的开发和研究上 1 2 l 嵌入式软件除了操作系统软件 ( o s )外, 还有应用程序,嵌入式系统也是面向应用 的软件产品开发。 有时设计人员把这两种软件组合在一起。 应用程序控制着系统的运作 和行为; 而操作系统控制着应用程序编程与硬件的交互作用 l 3 。 尽管从八十 年代末开始 陆 续出 现了一 些 嵌 入 式 操 作 系 统,比 较著 名的 有v x w o r k p s o s n e c u le u s 和w in d o w s c e 。 但这些专用操作系统都是商业化产品, 其高昂的价格使许多低端产品的小公司望而 却步, 而且源代码封闭性也大大限制了开发者的积极性。 对上层应用者而言,嵌入式操 作系统是一套高度简练、界面友善、质量可靠、应用广泛、易开发、多任务并且价格低 廉的操作系统。 尽管嵌入式系统有着无比 广阔的市场需求和发展前景, 但嵌入式系统的发展, 多年 来却经历了一个比相对后期产生的个人计算机( p c ) 更为曲折和痛苦的历程。 随着微处理 器的产生,价格低廉、结构小巧的c p u 和外设连接提供了稳定可靠的硬件架构, 那么限 制嵌入式系统发展的瓶颈, 就突出表现在了软件方面。 嵌入式软件的特征可以概括为四 个字: “ 小” 、 “ 特” 、 “ 专” 、 “ 简” 。所谓 “ 小” ,是指基于专用设备普遍的特点和需求, 一般不会编写得太大; “ 特”是指它一般根据某一系统的功能设计单独编写 ( 或在既有 软件 卜 进行修改) , 是一种个性化很强的软件产品: “ 专”不仅是从专用系统的角度来说 的, 而且出于系统功能、 系统安全和功耗等方而最佳配置的考虑,嵌入式软件即使在同 一品牌、同系列的产品中也需要根据系统硬件的变化和增减不断进行修改, 而这种修 改显然不同于通用软件的 “ 升级” ;至于 “ 简” ,则是说嵌入式软件 一 般不要求其功能设 计及实现 卜 过于复杂,简单既出于控制成本的目 的,同时也是对系统安全的考虑p 4 l 1 . 4 课题来源 建立宽带光接入网己 经是发展的必然趋势, 而e p o n因为其对e t h e m e t 的兼容以及 充足的带宽等种种优点成为光接入网的热门技术。 目前关于e p o n 的协议标准尚在制定 之中, 国内 多家 科研单 位都提出 了自 己 的 总体 方案 3 。 本文是国 家“ 8 6 3 ” 计 划“ 基于千 兆以太网的宽带无源光网络系统” ( 编号2 0 0 1 a a 1 2 2 0 2 3 )的一个子课题, 它的土要任务 就是生成o l t / o n u的引导装载程序、选择和配置嵌入式操作系统,使o l t / o n i 在硬件 启动完成后自 动过渡到操作系统的启动,从而为交换芯片的驱动和应用程序提供支持。 没有它,o l t / o n l 无异于无b i o s 和操作系统的 “ 死机” 。因此,本子课题是e p o n 系统 成为可配置、可管理并具有交换机功能的关键,也是e p o n 系统研发的首要任务之一。 1 . 5 本文的主要内容 木论文主要由六个部分组成,分别是: 第一章 绪论, 主要论述了e p o n系统的体系结构, 也阐述了e p o n系统中o l t / o n l 的嵌入式系统设计,并对嵌入式系统的特点、设计及应用作了详细的论述。 第二章 嵌入式l i n u x 应用于嵌入式系统的可行性分析,从多个角度分析了嵌入式 l i n u x 作为嵌入式操作系统的可行性,指出其适合e p o n 系统低成木的要求,并分析了嵌 入式l i n u x 用于嵌入式系统今后需要完善的几个方面。 第三章 p p c b o o t 在m p c 8 2 4 5 上的移植,在深入分析p p c b o o t 源代码的基础上,结合 o l 丁 / o n u 主板的特性,研究了尸 p c b o o t 在o n u / o l 丁匕 的修改与移植。并对部分源代码作了 分析和说明。 第四章 针对 e p o n 系统嵌入式l i n u x内核的配置和修改, 在分析嵌入式l i n 。 内核 源代码的基础上, 针对 e p o n 系统的硬件特性, 对嵌入式l i n u x内核进行了修改和配置。 包括完成o l t / o n u 交换芯片驱动程序的设计。 第五章 详细介绍嵌入式l i n u x 下开发的准备工作和e p o n 系统中开发的应用程序模 块。 包括开发模型、 开发步骤以及主机系统的配置以及各个木块的功能。 着重以s n m p d e 实现为例,阐述了应用程序在e p o n 系统中的实现。 第六章 总结与展望,总结了全文,并对后续工作的开展提出目 标。 2 嵌入式l i n u x 用于e p o n系统的可行性分析 , 1三! 雀. j 目.jlj . f刁 l i n u x 的诞生来自 于一名芬兰大学生l i n u s t o r v a l d s 的业余爱好, 是在网络上不断 完善和发展的操作系统,因此是 一 个自山软件。 在网络上开发 !, i n u x己流行成为很多研 究操作系统的高手热衷的活动, 使得l i n u x 在短期内就成为了一个稳定、 成熟的操作系 统 ( o s ) o 重要的是, l i n u x 的开发都是在g p l 的版本控制之下,因此l i n u x内核都是源 代码开放的。l i n u x内核的开发是由l i n u s t o r v a l d s 领导的内核开发小组进行开发的。 目 前在他们的公共站点h t t p : / / w w w . k e r n e l . o r 盯上几乎每三天进行一次内 核的升级, 目 前最新的内核是 l i n u x 2 . 4内核,l i n u x 2 . 6也即将面世。 自1 9 9 1 年以来, l i n u x 不仅在服务器和p c机方面成为wi n d o w s 9 5 , 9 8 的强劲对手, 还成为嵌入式系统方面的宠儿。 2 . 2 l i n u x 满足嵌入式系统的基本要求 首先分析l i n u x 能否满足嵌入式系统的 基本要求 1 6 1 . ( 1 ) 嵌入式系统所要求的实时,多任务性。从l i n u x 进程调度的3 个策略: “ 非实时, 实时先进先出,实时基十优先权轮转法”可以看出,l i n u x对于实时任务是有特殊处理 的 ( “ 软实时” ) ,虽然并没有满足 “ 硬实时” 要求, 但是这种软实时可以 满足一般嵌入 式系统的要求( 在 1 -5 u s内 响应) 口 -4 o l i n u x也是一个多任务操作系统, 也就是说 l in u x允许有多个程序同时装入内存运行,操作系统为每个程序创建一个运行环境, l in u x 的多仟务性满足嵌入式系统的要求。 ( 2 ) 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的进程调度方法也简单高效, 对于用户进程采用简单的 动态优先级调度方式: 对十内 核中的例程( 如: 设备3 1 动程序、 中断服务程序等) 则采用独特的内 核机制, 保证了内 核例程的高效运行。 l in u x 是成千上 力人智慧的结晶,是最可靠、最稳定的操作系统。 ( 3 ) 嵌 入式系统没有磁盘: 虽然一般的l in u x 是需要磁盘的, 但l i n u x 能够解决嵌入 式系统没有磁盘的问题。因为l i n u x 支持将某些模块常驻内存,所以最简单的办法是: 可以将嵌入式系统需要的应用程序和l i n u x内核同时储留在内存中,系统启动时,启动 应用程序。 再来分析l i n u x 能否满足嵌入式操作系统的一些复杂功能要求 1 6 . ( 1 ) 网 络协议: l i n u x 提供t c p / i p 网 络协议和i n t e rn e t 客户, 服务器软件。 ( 2 ) 图 形用户界面:有x w i n d o w s o ( 3 ) 外设: l i n u x 可以 使用的 外设驱动接日 很多。 ()带 有u n ix 用 户 所熟 悉的 完 善的 开 发 工 具, 如 :g c c ,g d b ,纯d b ,x g d b 等。 开 发嵌 入式 系统的关键是要有一套好的开发和调试工具, 传统的嵌入式系统的开发和调试工具是在 线仿 真器 ( i c e ) , 在线 仿真器允 许开发者 调 试和监 视程序的 运行, 了 解底层软硬件接口 的 状态, 但是并不方 便做更高 级的 调试。 l i n u x 利用g n u 的g c c 做编译器, 用g d b ,k g d b , x g d b 做调试工具可方便地开发嵌入式系统。 ( 5 ) 几乎所有的u n i x 系统和应用软件都己 移植到了l i n u x卜 。 它不仅继承了u n i x 的 特征,而且在许多方面超过了u n i x . o ( 6 ) l i n u x 的移植性好, 它的内 核移植到新的 微处理器上基本不用修改。 通过上面的分析, 可以看出l i n u x 在嵌入式系统方面完全可以同其它商业e o s相抗 衡,能够满足嵌入式系统的要求。 2 .3 l i n u x 优越于其它商业操作系统 l in u x 与其他的商业操作系统相比, 还有许多 优越性,主要表现在【 习 : ( 1 ) l in u x是免费的操作系统, 在i n t e rn e t 上有着丰富的开发资源。 l i n u x的 创始人 l i n u s t o r v a l d s 将l i n u x 适时地放到g n u公共许可证下, 使得l i n u x 本身在短短的儿年 发展成为一个稳定、健壮的 o s ,也使得人们不用花钱就可以使用。使得操作系统真正 走上平民化。遇到问题时可通过网络,得到丰富的技术支持。 ( 2 ) l i n u x 的源代码是开放的,源代码随处可得,即使最困难的问 题也有办法解决, 不存在黑箱技术。i li 门 u x 系统是层次结构目 . 内核完全开放的操作系统。它是由很多体积 小h .性能高的微内核和系统组成。 在内核代码完全开放的前提下, 小同领域和小同层次 的用户可以根据自己的应用需要,很容易地对内核进行改造;在低成本的前提下,设计 和开发出真正 满足自己需要的嵌入式系统。 ( 3 )强大的网络支持功能。 l i n u x 诞生于因特网并具有u n i x 的特性, 这就保证了它 支持所有标准因特网协议,并且 可以利用 l i n u x的网络协议栈将其开发成为嵌入式的 t c p / i p网络协议栈,支持 t c p / i p , p p p , i g mp , i p v 6 ,而且提供了对 a t m 协议的支 持。 ( 4 ) l i n 。 二 具备一整套工具链, 容易自 行建立嵌入式系统的开发环境和交叉运行环境, 并月 _ 可以跨越嵌入式系统开发中仿真工具的障碍。 一 般开发嵌入式操作系统的程序调试 和跟踪都是使用仿真器来实现的, 而使用l i n u x 系统做原型的时候, 可以绕过这个障碍, 直接使用内核调试器来做操作系统的内核调试和查错。 ( 5 ) i, i n u x 具有 泛的硬件支持特性。 无沦 是r i s c 还是c i s c , 3 2 位还是6 4 位等各种 处理器,l i n u x 都能运行。l i n u x 最通常使用的微处理器是 i n t e l x 8 6 芯片家族,但它 同样能运行于m o t o r o l a 公司的6 8 k 系列c p u 和i b m , a p p l e , m o t o r o l a 公司的p o w e r p c c p u 以及工 n t e l 公司的s t r o n g a r m c p u 等处理器系统,这意味着嵌入式l i n u x 将具有更) - 泛的应用前景。 综合上面的分析,可以看出,l i n u x 用于嵌入式系统方面是可行的,具有广泛的应 用前景。而e p o n系统的o l t / o n l ) 是典型的嵌入式系统, 其成本的高低直接影响着市 场的前景,嵌入式l i n u x 的免费性,正好满足了e p o n系统低成本的要求。 2 . 4 l i n u x 局限性 目前 些传统的 嵌入式 l i n u x 系统开发正在蓬勃兴起,并且已经开辟了很大的市场,除了一 l i n u x 公司,像r e d h a t , v a l i n u x 等正在从事嵌入式l i n u x 的研究之外 批新公司 ( 如 l i n e o , t i m e s y s 等) 和一些传统的大公司 ( 如 i b m , s g i , m o t o r o l a , i n t e l 等) 以及一些开发专有嵌入式操作系统的公司( 如l y n x ) 也正在进行嵌入式l i n u x 的研 究和开发。 但就目前的技术面言, 嵌入式l i n u x 的研究成果与 市场的真正需求还有一段 差距。因此,要开发出真正成熟的嵌入式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 的实时性能。 一般来说, 对 l i n u x 实时性的扩展可以从两方面进行:向外扩展和向上扩展。向外扩展是从范围上扩展, 计 实时系统支持的范围更广,支持的设备更多。目 前的开发所面向的设备一般仅限于较简 单的有实时要求的串/ 并口数据采集、浮点数据计算等,而像实时网络这样实时系统的 高级应用还需进一步的发展。向上扩展是扩充l i n u x 内核, 从功能上扩充l i n u x 的实时 处理和控制系统。 如嵌入式系统r t - l i n u x , 它的基本原理是将l i n 。的内核代码做一些 修改, 将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 o a d a b l e k e r n e l m o d u l e , l k m ) 的形式存在的,需要运行实时任务的时候,将这个实时任务的内 核模块插入到内核中去, 实时任务和l i n u x 一般进程之间的通信通过共享内存或者f i f o 通道来实现。 ( 2 ) 改变l i n u x内核的体系结构 l i n u x 的内核体系采用的是m o n o l i t h i c , 在这种体系结构中,内核的所有部分都集 中在一起, 而且所有的部件在一起编译连接。 这样虽然能使系统的各部分直接沟通, 有 效地缩短任务之间的切换时间, 提高了系统的响 应速度, 实时性好并提高了c p u 的利用 率, 但在系统比较大的时候体积也比较大,与嵌入式系统容量小、资源有限的特点不符 合。 而另外一种内核体系结构m i c r o k e r n e l ,在内核中只包括了 一 些基本的内核功能如 创建和删除任务、任务调度、内存管理和中断处理等部分, 而文件系统、网络协议栈等 部分都是在用户内存空间运行。这种结构虽然执行效率不如m o n o l i t h i c 内核,但大大 减小了内核的体积,同时也极大地方便了整个系统的升级、维护和移植,因此更能满足 嵌入式系统的特点需要。为此,为使嵌入式 l i n u x 的应用更加广泛,可以考虑将 l i n u x 目 前的m o n o l i t h i c 内核结构中的部分结构改造成 m i c r o k e r n e l 体系结构。通过这种折 中办法, u j 一 以使得到的l i n u x 既具有很好的实时性, 又能满足嵌入式系统体积小的要求。 ( 3 ) 完善l i n u x 的集成开发环境 提供完整的集成开发环境是每一个嵌入式系统开发人员所期待的。 一个完整的嵌入 式系统的集成开发环境一般需要提供的工具是编译/ 连接器、 内核调试/ 跟踪器和集成图 形界面开发平台。 其中的集成图形界面开发平台包括编辑器、调试器、软件仿真器和监 视器等。 在l i n u x 系统中,具有功能强大的g c c 编译器工具链, 使用了基十g n u 的调试 器g d b 的远程调试功能, 一般由 一台客户机运行调试程序调试宿主机运行的操作系统内 核;在使用远程开发时还可以使用交叉平台的方式, 如在 w i n d o w s 平台下的调试跟踪器 对l i n u x 的宿主系统做调试。但是,l i n u x 在基于图形界面的特定系统定制平台的研究 上, 与w i n d o w s 操作系统相比还存在差距。因此,要使嵌入式l i n u x 在嵌入式操作系统 领域中的优势更加明显,整体集成开发环境还有待提高和完善。 3 p p c b o o t在e p o n系统上的移植 3 . 1 引言 e p o n系统的 o l t / o n l 的主板使用 mp c 8 2 4 5作为 c p u,这种器件属于集成 p o w e r p c的处理器, 有较高的集成度, 它集5 个芯片于一体, 从而降低了系统的组成开 销。高集成度的结果是简化了电路板的设计,降低了功耗和加快了开发调试时i r j o mp c 8 2 4 5 还有一些优越性: 3 3 3 - 3 5 0 mh z m p c 6 0 3 e处理器内核: 3 2 位p c i 接口运行可 达到6 6 mh z ;存储控制器提供的s d r a m支持频率最高达 1 3 3 mh z ,支持2 g b ;消息 单元具有 p o消息支持能力; 通用u o a n d r o m 接口支持; 2 个信道d ma控制器: 业 界标准1 2 c接口, 支持链接; 带有多个定时器和计数器的可编程中断控制器。 这种低成 本、多用途、 精彩的新型设备广泛地应用于交换机、路由器、接线器、网络存储应用和 图像显示系统。 p p c b o o t 在e p o n 系统o l t / o n i 上的移植, 实际上就是在mp c 8 2 4 5 平台上的移植。 3 . 2 p p c b o o t简介 p p c b o o t的前身是8 x x r o m和f a d s r o m, 其最高版本为p p c b o o t 2 .0 , 2 .0 版 本以后名称就改为了u - b o o t ,是由德国d e n x软件中心依照g p l发布的公共软件。 o l t / o n i中是选用的是1 . 1 .6 版本, 为的是生成e p o n日 标板的引导装载程序 引导装 载程序通常是在任何硬件上执行的 第一段代码, 它相当于p c机中的b o i s , 完成系统从 硬件启动到操作系统启动的过渡, 也是嵌入式系统中必不可少的一段程序, 其实现方式 有山硬件的特性决定。 3 . 3 p p c b o o t源代码分析 p p c b o o t 的源代码树如图3 . 1 所示, 据此来分析一下p p c b o o t 的源代码分布, 然后 再解剖它d 7 l 曰j浏 付 觅 立 呵 互 .月 翔 1- 1 自 b o a r d 闲 曰 c o m m o n n自 c p u 自 us r+1自 d is k +白 d o c c 白 d r iv e r s 曰自 d t t r自 e x a m p le s n口 。 (+ 7 自 in c lu d e 闲自 n e t 1+ 自 p p c 图自 : 比 n自 t o o ls 日 录/ i n c l u d e / a s m - p p c 是一些比较底层的头文件,编译时会根据不同的配置与 / i n c l u d e / c o n f i g s / a s m 建 立一个 符号 链接; 还包括其他一些 头文 件, 例如: p p c b o o t .h 等。 3 .3 .4 公共代码 除了和主板, c p u 特性相关的代码外,其他大部分都是公用的代码, 位于/ c o m m o n) 下面,象p p c b o o t 的命令解析代码/ c o m m o n / c o m m a n d .c , p p c b o o t 环境变量处理代码 e n v i r o n m e n t . c 等都位于该目 录下。还有一个公共的代码就是p o w e r p c 系列的主板初始化 代码:b o a r d . c , c o m m o n 日 录下的代码都是公用的,在完成c p u 的初始化之后就会跳到 这个文件中,而与主板相关代码的执行都是在这个文件中调用的。 3 . 3 5 网络传输代码 网络传输代码位于目录中的/ n e t/ 下面,象a r p .c ,b o o t p .c , e t h .c ,t ft p . c 等都在这里 b o o t p , t f t p ,以太网初始化等功能的实现也是由这些代码完成的 3 . 3 .6 ma k e f i l e 文件 ma k e f i l e 文件位十p p c b o o t 的根目 录下, 是整个编译的控制主文件, 后面会讲到如 何修改该文件以添加o l t / o n u 主板的编译控制。 3 . 3 .7 关键的驱动程序文件 p p c b o o t 中几个比较关键的外设驱动代码包括串口的初始化,以太网口驱动 s d r a m初始化,f l a s h 初始化,以e p o n 的o l t / o n l 的主板为例,分别位于: 串口 :/ c p u / m p c 8 2 4 x / s e r i a l .c; s d r ame poo a r d / mu s e n k i / mu s e n k i s . c; f l as h: / b o a r d / mu s e n k i / fl a s h .c ; r t l 8 1 3 9 : / d r i v e r / r t l 8 1 3 9 . c 。 在移植的过程中这些都是需要修改和关注的代码。 3 . 4 3 . 4 . 1 针对o l t / o n u主板p p c b o o t的修改 目标板系统参数配置 日 标板系统参数在头文件中配置,要求对被选择为蓝本的主板和o l t / o n c 的主板 有足够的了解, 然后再做修改,卜 面是针对e p o n 的o l t / o n u 的主板修改的参数以及一 些比较关键的配置说明: # d e f i n e c o n f t g m p c 8 2 4 x 1 ; # d e f i n e c o n f i g m p c 8 2 4 5 1 ; # d e f i n e c o n f i g m u s e n k i 1 ; 这些是关于

温馨提示

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

评论

0/150

提交评论