




已阅读5页,还剩63页未读, 继续免费阅读
(通信与信息系统专业论文)基于嵌入式linux平台的车载网络系统研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 随着汽车电子技术的发展及汽车性能的不断提高,汽车上的电子装置越来越 多。传统的电器系统大多采用点对点的单一通信方式,相互之间很少有联系, 这样必然造成庞大的布线系统,并且很大程度上影响了整车的性能。为了适应 汽车电子设备的发展,车载网络系统应运而生,例如c a n 和l i n 、f l e x r a y 等 在车载网络系统中均有应用。其中,c a n 总线结构独特,性能可靠,所以c a n 在车载网络中的使用最为广泛。 可是由于c a n 应用于车身网络低端通讯又具有成本高的缺点。所以,汽车 车身控制网络目前要解决的问题就是再建立一个统一的、低成本的低端通讯网 络标准,作为c a n 的辅助总线而存在。实现车身控制网络的层次化,以更低的 成本实现车身控制网络。而l i n 总线的目标就是定位于车身网络模块节点间的 低端通讯,并且可靠性高,易于开发。 本文简单介绍了国内外车载网络的发展现状和趋势。在熟悉了c a n 总线和 l i n 总线的基础上,结合嵌入式系统的特点,给出了基于嵌入式l i n u x 平台的车 载网络系统的设计方案和实现。 为了对车载网络各节点进行有效的监控,以及数据的处理,设计了车载网络 主控制节点。主控制结点采用a r m 7 核的s 3 c 4 4 b o x 处理器,软件以, u c l i n u x 为平台,实现了基于s j a l 0 0 0 的c a n 设各驱动程序,整个系统具有高可靠性和 较强的处理能力。所以,为将来扩展成车内信息集控中心提供了软硬件环境。 除了c a n 总线以外,本系统还将l i n 总线应用到车载网络中,提出了车内低成 本的c a n l i n 混合网络体系结构。为了使c a n 网络和l i n 网络能够互连互通, 设计了基于p i c l 8 f 2 4 8 的c a n l i n 数据交换网关。它既是c a n 节点,同时也 是l i n 总线上的主结点,将收到的c a n 报文封装成l 1 n 报文向l i n 总线上转 发,同时将收到的l i n 报文封装成c a n 报文向c a n 总线上转发,成功地实现 了o n 总线和l 1 n 总线数据的透明传输。 关键词:车载网络,c a n 总线,l i n 总线,, u c l i n u x ,网关 a b s t r a c t w i t ht h e r a p i dd e v e l o p m e n t o fe l e c t r o n i c t e c h n i q u ea n d t h e c o n t i n u i t y i m p r o v e m e n to fv e h i c l ep e r f o r m a n c e ,t h ee l e c t r o n i ce q u i p m e n t s o nv e h i c l ea r e b e c o m i n g m o r ea n dm o r e t r a d i t i o n a le l e c t r i c s y s t e m sm o s t l y i n t r o d u c e d p o i n t t o p o i n tc o m m u n i c a t i o nm o d e ,l i t t l ea f f i l i a t i o nw i t ht h e m t h a tm a d et h e c o n n e c t i o ns y s t e mc o m p l e x i no r d e rt oa d a p tt h ed e v e l o p m e n to ft h ev e h i c l e e l e c t r o n i ce q u i p m e n t ,t h ei n - v e h i c l en e t w o r ks y s t e mh a sc o m ef o r t h f o re x a m p l e , c a nb u s ,l i nb u sa n df l e x r a yh a v eb e e na p p l i e di ni n v e h i c l en e t w o r ks y s t e m b e c a u s eo fp a r t i c u l a rs t r u c t u r ea n ds t a b l ep e r f o r m a n c eo fc a nb u s ,w h i c ha p p l i e di n i ti st h em o s tw i d e l y h o w e v e r , t h e r ei sad i s a d v a n t a g eo fh i g hc o s ti nc a n b u st h a ti sa p p l i e di nl o w l e v e lc o m m u n i c a t i o no fb o d yn e t w o r k s on o w , b o d yc o n t r o ln e t w o r ki sr e q u i r e dt o s o l v et h ep r o b l e mt h a ti se s t a b l i s h i n ga n o t h e rc o n s i s t e n ta n dl o w c o s tl o wl e v e l c o m m u n i c a t i o nn e t w o r ks t a n d a r d a n dt h e n ,t h i ss t a n d a r dw i l lb et h ea s s i s t a n tb u so f c a n f r o mt h i s ,b o d yc o n t r o ln e t w o r kw o u l di m p l e m e n th i e r a r c h ya n dl o w c o s t ;t h i s m o m e n t ,t h et a r g e to fl 1 nb u si sa p p l y i n gi nl o wl e v e lc o m m u n i c a t i o na m o n gb o d y n e t w o r km o d u l en o d e s t h i sp a p e ri n t r o d u c e dt h ed o m e s t i ca n di n t e r n a t i o n a ls i t u a t i o na n dd e v e l o p m e n t a b o u tt h ei n v e h i c l en e t w o r kb r i e f l y o nt h eb a s i so ff a m i l i a rw i t hc a nb u sa n dl i n b u s ,c o n s i d e r i n gc h a r a c t e r i s t i c s o ft h ee m b e d d e ds y s t e m ,ih a v ed e s i g n e dt h e i n - v e h i c l en e t w o r ks y s t e mb a s e do ne m b e d d e dl i n u xp l a t f o r m i no r d e rt om a n a g i n gt h en o d e so fi n - v e h i c l en e t w o r ke f f i c i e n t l ya n dp r o c e s s i n g t h ed a t a ,ih a v ed e s i g n e dt h em c n ( m a i nc o n t r o ln o d e ) o ft h ei n v e h i c l en e t w o r k t h a ti sc a r r i e do u tb yt h es 3 c 4 4 b o xm p uo fa r m 7c o r e ,a n dt h es o f t w a r ep l a t f o r m i s z c l i n u x m c nr e a l i z e dt h ec a nd e v i c ed r i v e rb a s e do ns j a l 0 0 0 ,t h ew h o l e s y s t e mi sm o r er e l i a b l ea n de f f i c i e n t s oi tp r o v i d e st h es o f t w a r ea n dh a r d w a r e e n v i e m e n to fe x t e n d i n gt ot h ei n v e h i c l ei n f o r m a t i o nc e n t e ri nt h ef u t u r e b e s i d e s c a nb u s ,t h i ss y s t e mu s e dl i nb u si n t oi n v e h i c l en e t w o r k ,a n dp r e s e n tl o wc o s t c a n l i nm i xn e t w o r ka r c h i t e c t u r ef o rv e h i c l e i no r d e rt oc o r n e c tb e t w e e nc a nb u s a n dl i nb u s ,1d e s i g n e dt h ec a n l i nd a t ae x c h a n g eg a t e w a yb a s e do np i c l 8 f 2 4 8 i i t h a ti st h ec a nn o d e ,a sw e l la si st h el i nm a s t e rn o d e t h eg a t e w a yt r a m f o r mt h e c a n m e s s a g e sr e c e i v e df r o mt h ec a n b u st ol i nm e s s a g e s ,a n dt r a n s m i tt ot h el i n b u s a tt h es a m et i m e ,i tt r a m s f o r mt h el i nm e s s a g e sr e c e i v e df r o mt h el i nb u st o c a nm e s s a g e s ,a n dt r a n s m i tt ot h ec a nb u s i tr e a l i z e dd a t at y p ec o n v e r t i o n b e t w e e nc a nb u s a n dl 1 nb u ss u c c e s s f u l l y k e yw o r d s :i n - v e h i c l en e t w o r k ,c a nb u s ,l i nb u s ,m c l i n u x ,g a t e w a y l i l 此页若属实请申请人及导师签名。 独创性声明 y 8 6 0 2 五6 本人声明,所星交的论文是我个人在导师指导下进行的研究工 作及取得的研究成果。据我所知,除了文中特剐加以标注和致谢 的地方外,论文中不包含其他入已经发表或撰写过的研究成果, 也不包含为获得武汉理工大学或其它教育机构的学位或证书而使 用过的材料。与我一同工作的同志对本研究所傲的任何贡献均已 在论文中作了明确的说明并表示了谢意。 研究生签名:2 乏i 缝:崆日期兰:型:垒- 彩 关于论文使用授权的说明 本人完全了解武汉理工大学有关保留、使用学位论文的规定, 即:学校有权保留送交论文的复印俘,允许论文被壹阏和借阅i 糯 学校可以公布论文的全部内容,可以采用影印、缩印或其他复制 手段保存论文。 ( 保密的论文在解密后应遵守此规定) 研究生签名:触导师签名:越期立:生:生:! z 注:请将此声明装订在论文的目录前。 武汉理工大学硕士学位论文 1 1 课题的研究意义 第1 章引言 随着车用电气设备越来越多,从发动机控制到传动系统控制,从行驶、制动、 转向系统控制到安全保证系统及仪表报警系统,从电源管理到为提高舒适性而 作的各种努力,使汽车电气系统形成一个复杂的大系统,并且都集中在驾驶室 控制。另外,随着近年来i t s 的发展,以3 g ( g p s 、g i s 和g s m ) 为代表的新型 电子通讯产品的出现,它对汽车的综合布线和信息的共享交互提出了更高的要 求。 从布线角度分析,传统的电气系统大多采用点对点的单一通信方式,相互之 间少有联系,这样必然造成庞大的布线系统。据统计,一辆采用传统布线方法 的高档汽车中,其导线长度可达2 0 0 0 米,电气节点达1 5 0 0 个,而且,根据统 计,该数字大约每十年增长1 倍,从而加剧了粗大的线束与汽车有限的可用空 间之间的矛盾1 1 i 。无论从材料成本还是工作效率看,传统布线方法都将不能适应 汽车的发展。 从信息共享角度分析,现代典型的控制单元有电控燃油喷射系统、电控传动 系统、防抱死制动系统( a a s ) 、防滑控制系统( a s r ) 、废气再循环控制、巡航系 统和空调系统。为了满足各子系统的实时性要求,有必要对汽车公共数据实行 共享,如发动机转速、车轮转速、油门踏板位置等。但每个控制单元对实时性 的要求是因数据的更新速率和控制周期不同而不同的。这就要求其数据交换网 是基于优先权竞争的模式,且本身具有较高的通信速率,c a n 总线正是为满足 这些要求丽设计的。 c a n 作为网络总线的标准已经是主流,可是由于c a n 应用于车身网络低端 通讯又具有成本高的缺点,所以,汽车车身控制网络目前要解决的问题就是再 建立一个统一的、低成本的低端通讯网络标准,作为c a n 的辅助总线而存在, 实现车身控制网络的层次化,以更低的成本实现车身控制网络。而a 类的l i n 总线的目标就是定位于车身网络模块节点间的低端通讯。和c a n 相比,l i n 出 于采用了1 2 v 的低成本单线传输、基于标准的u a r t s c i 接口的低成本硬件、 武汉理工大学硕七学何论文 无石英或陶瓷振荡器的从节点,从而降低了硬件平台的成本。另外,l i n 的最高 速率为2 0 k b s ,完全可以满足低端的大多数应用对象对传输速率的要求【3 】。所以 l i n 以较低的成本实现了开关型器件之间的网络通讯,有效地支持了汽车应用中 分布式机械电子节点的控制,弥补了c a n 在低端通讯成本高的不足。由于月前 尚未建立低端多路通讯的汽车标准,因此l i nj 下发展成为低成本的低端串行通 讯的行业标准。 1 2 车载网络的发展现状 汽车电子化是现代汽车发展的重要标志。随着信息技术的发展,电子技术为 解决汽车所面临的诸多问题提供了最佳方案。但当汽车内部电子设备之问采用 传统的一对一连线方式时,电子设备的数量增加将导致连线大幅度增多,致使 车辆重量随之增加,并削弱车辆性能。为适应汽车电子设备迅速增加的应用需 要,汽车电子网络应运丽生。 目前与汽车动力、底盘和车身密切相关的车载网络主要有c a n 、l i n 和 f l e x r a y 等。从全球车载网络的应用现状来看,通过2 0 多年的发展,c a n 已成 为目前全球产业化汽车应用车载网络的主流,目前c a n 已由过去仅服务中、高 级轿车,逐渐渗透到6 万人民币以下的家用轿车之中,近两年在国内新下线的 合资品牌的轿车全部都采用了c a n 。作为c a n 低成本替代的l i n 还处于产业 化的初级阶段,据调查,目前在国内上市的轿车中,只在2 0 0 5 年年初上市的v o l v o 的$ 4 0 和2 0 0 5 年4 月上市的长安铃木雨燕中得到应用f2 1 。而2 0 0 4 年才向全球公 开发布的f l e x r a y 还处于应用研究的前期阶段,与f l e x r a y2 0 配套的部分集成 电路还未正式上市,其产业化应用还需要一定的时间。 从国内车载网络的发展来看,我国已掌握了o n 应用关键技术。在2 0 0 5 年 9 月1 8 日国家“十五”重大科技成就展在北京海淀展览馆向社会公众所有展示 的新能源汽车全采用了自主研发基于c a n 的车载网络。其中,由北京理工大学 主持研发的纯电动公交车、二汽主持研发的混合动力公交车已进入试运营阶段。 在传统汽车方面,一汽在展会上展示了自主研发的大客车,在这辆大客车中安 装有一汽车自主研发的a m t ,其中a m t 控制器采用了自主研发基于c a n 的车 载网络,a m t 通过车载网络与车上的其他零部件进行信息交互【3 1 。自主研发基 于c a n 车载网络在新能源汽车和传统汽车上的成功应用,标志着自主研发的车 武汉理工大学硕士学位论文 载网络已深入到汽车控制的核心一一汽车动力系统之中。 为了规范国内的车载网络,全国汽车标准化技术委员会在2 0 0 5 年丌始持续 在网上公布商用车控制系统局域n n ( c a n ) n 信协议系列国家标准征求意见 稿,基于c a n 的车载网络开始纳入标准化规范化管理,自主研发的车载网络在 技术上走向成熟,并开始了它的产业化进程。 在l i n 总线应用研究上,我国已跨越单纯的学习阶段,迈入与全球同步发展 阶段。从1 9 9 9 年7 月l i n l 0 公布到2 0 0 2 年1 1 月l i n l 3 的公布,在这3 年多 的时间里,中国的汽车电子才起步,作为汽车电子关键技术之的车载网络技 术国内还处于萌芽状态,国内只有少数科研院所在跟踪l i n 的发展趋势。在2 0 0 3 年9 月l i n2 0 公布时,中国的汽车电子产业己处于自主研发的高潮,国内从事 车载网络的相关企业与全球同步获得了l i n2 0 的协议文本,并根据l i n2 0 协 议,修正其前期在l i n 方面的研发工作,以符合l 1 n2 0 的要求。 车载网络技术的发展趋势主要有以下几方面1 4 】: 1 网络技术迅速在汽车应用中普及 短短几年内,汽车网络技术的发展速度之快令人瞠目结舌。从目前的情况来 看,世界各大汽车公司的车身网络控制和动力系统网络控制的技术平台均已基 本建立,在新推出的车型中,全面采用网络控制技术已成为可能。因此可以断 言,近几年内,网络技术在汽车中的应用将会迅速普及。 2 网络性能不断提升 线控作为一项全新的汽车工程概念,必将促进控制系统网络向高速、实时、 容错方向发展。同时,要实现完善的车内办公和娱乐功能,信息处理和多媒体 网络的带宽必将越来越高。此外,网络的安全性和可靠性也会不断提高。 3 网络协议逐渐统一 目前在汽车行业中存在很多网络通信协议,由于缺乏全世界统一的标准,实 际上增加了汽车的制造成本。虽然建立一个统一的汽车网络协议体系是一件十 分复杂和困难的工作,但在汽车制造商和供应商之间已逐渐对这一问题达成一 致。 3 武汉理工大学硕士学位论文 1 3 本课题研究的目标和主要内容 本文来源于嵌入式车载信息平台,笔者从事的工作如下; 1 系统整体方案的设计:根据目前车载网络的发展趋势,同时考虑到成本 因素,设计了带有c a n 主控制节点和c a n l i n 网关的c a n l i n 车载混合网络 结构: 2 系统的硬件设计与实现:主要包括两块电路板。一个是基于a r m 7 型c p u s 3 c 4 4 b o x 的主控制节点,它是整个网络的核心,性能强大,为将来的扩展提供 了可能;另一个是基于p i c l 8 f 2 4 8 的c a n i i n 网关,负责c a n l i n 数据的透 明传输; 3 系统软件设计与实现:在主控制节点上成功移植了u b o o t 和岸c l i n u x , 并完成了基于s j a l 0 0 0 的c a n 设备驱动程序。还实现了c a n l i n 网关的软件 功能,该网关既有c a n 节点的功能,同时也具备l i n 主节点的功能。可以完成 c a n l i n 数据的透明传输; 4 本文s a ej 1 9 3 9 协议的报文帧格式、协议数据单元等主要方面说明了s a e j 1 9 3 9 协议的内容,并且以c a n ,u n 混合车载网络系统为对象设计了整个网络 系统的通信协议。 4 武汉理1 人学硕十学位论文 第2 章# c l i n u x 开发技术分析 2 1 嵌入式系统 嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,用 于应用系统对功能、可靠性、成本、体积、功耗等有严格要求的专用计算机系 统。 嵌入式系统一般包括硬件和软件两部分。硬件包括嵌入式处理器、存储器以 及各种外围设备。软件部分包括嵌入式操作系统和用户应用程序。有时设计人 员把这两种软件的开发过程组合在一起。 2 1 1 嵌入式系统的发展 实际上嵌入式系统这个概念很早以前就已经存在了。在通讯方面,嵌入式系 统在1 9 6 0 年就被用于对电子机械电话交换的控制,当时被称为“存储式程序控 制系统”( s t o r e dp r o g r a mc o n t r o d 。那个时候,计算机词却还不是很普遍,而 存储式程序主要是指用于存储程序及日常信息的内存部分。存储这些逻辑数据, 而不是将其写入硬盘,这个概念的确具有突破性的意义。 嵌入式系统的发展,大致经历四个阶段【5 l : 第一阶段是以单芯片为核心的可编程控制器形式的系统,同时具有与监测、 伺服、指示设备互相配合的功能。这种系统大部分应用于些专业性极强的工 业控制系统中,般没有操作系统的支持,通过汇编语言编程对系统进行直接 控制,运行结束后清除内存。 第二阶段是以嵌入式c p u 为基础、以简单操作系统为核心的嵌入式系统。 这一阶段的操作系统具有一定的兼容性和扩展性,但用户界面不够友好。 第三阶段是以嵌入式操作系统为标志的嵌入式系统。这一阶段的嵌入式系统 主要特点是:嵌入式操作系统能运行于各种不同类型的微处理器上,兼容性好; 操作系统内核体积小、效率高,并且具有高度的模块化和扩展性;具备文件和 目录管理、设备支持、多任务、网络支持、图形窗口以及用户界面等功能;具 武汉理r 大学硕士学何论文 有大量的应用程序接t t ( a p 0 ,丌发应用程序简单;嵌入式应用软件丰富。 第四阶段是以基于i n t e m e t 的应用为标志的嵌入式系统,这是一个正在迅速 发展的阶段。目前大多数嵌入式系统还孤立于i n t e m e t 之外,但随着i n t e r n e t 的 发展以及i n t e r n e t 技术与信息家电、工业控制技术等结合日益密切,嵌入式1 设备 与i n t e m e t 的结合将代表着嵌入式技术的真正未来。 相应地,与现代嵌入式系统密不可分的嵌入式软件也得到快速的发展。自 2 0 世纪7 0 年代后期,专用嵌入式操作系统出现开始,经过多年不断发展,如今 已有几十种不同的嵌入式操作系统可供开发者选择,如v x w o r k s 、p s o s 、 w i n d o w sc e 、嵌入式l i n u x 和c o s 1 i 等。近年来,嵌入式软件的涉及面愈发 扩大。目前它不仅包括嵌入式操作系统等系统软件,还包括一系列支撑软件, 如数据库、调试软件、网络通讯协议、用户界面系统等,当然也包括各种应用 软件。 2 1 2 嵌入式系统特点 嵌入式系统同通用型计算机系统相比具有以下特点: 1 嵌入式系统是面向特定应用的系统。嵌入式处理器与通用型处理器的最 大不同是,嵌入式处理器大多工作在为特定场合设计的系统中,具有功耗低、 体积小、集成度高等特点,能够把通用计算机系统中,许多由外围板卡实现的 功能集成在芯片内部,从而有利于嵌入式系统设计小型化; 2 嵌入式系统的硬件和软件都必须高效率地设计,量体裁衣、去除冗余, 力争在同样的硅片面积上实现更高的性能,这样才能在具体应用中更具有竞争 力: 3 为了提高程序执行速度和系统可靠性,嵌入式系统中的软件一般都固化 在存储器或处理器芯片内部,而不是存贮于磁盘等载体中: 4 嵌入式系统本身不具各自主开发能力,设计完成以后用户不能对其中的 程序功能进行修改,必须有一套完整的配套开发工具和环境才能对嵌入式系统 进行开发; 5 嵌入式系统和具体应用有机地结合在一起,它的升级换代也是和具体产 品同步进行,因此嵌入式系统产品一旦进入市场,具有较长的生命周期。 武汉理工大学硕士学位论文 2 1 3 嵌入式处理器 作为嵌入式系统的硬件核心,嵌入式处理器一般就具备以下3 个特点: 1 对实时多任务管理有较强的支持能力,能完成多任务管理并且有较短的 中断响应时间,从而使内部的代码和实时内核心的执行时间减少到最低限度; 2 具有较强的存储区域保护功能。这是由于嵌入式系统的软件结构己模块 化,而为了避免在软件模块之问出现错误的交叉作用,需要设计强大的存储区 域保护功能: 3 可扩展的处理器结构,能迅速地丌发出满足各种应用的要求的嵌入式系 统。 嵌入式处理器分为嵌入式控制器、嵌入式d s p 处理器、嵌入式片上系统 ( s o c ,s y s t e mo nc h i p ) 等多个种类。目前市场上有3 0 多个系列,超过1 0 0 0 种 嵌入式处理器。 2 1 4 嵌入式操作系统 嵌入式系统的软件核心是嵌入式实时操作系统( r t o s ,r e a lt i m eo p e r a t i n g s y s t e m ) 。实时操作系统是指具有实时性,能支持实时控制系统工作并能管理多 个任务的操作系统。r t o s 的首要任务是调度一切可利用的资源完成实时控制任 务,其次才着眼于提高计算机系统的使用效率,重要特点是要满足应用系统对 时间的严格限制和要求。 实时操作系统与其他的操作系统之间最大的区别就是它要满足处理与时间 的关系。在实时处理中,系统的正确性不仅仅依赖于处理的逻辑结果,而且依 赖于结果产生的时间。对于实时操作系统来说,最重要的要求就是必须满足在 一个事先设定好的时间限制中对内部或外部的事件进行响应和处理的能力。此 外,作为实时操作系统还需要有效的中断处理能力来处理异步事件,有高效的 i o 管理能力来处理有严格时间限制的数据收发应用,即系统应该有在事先定义 的时间范围内识别和处理离散事件的能力。系统能够处理和存储控制系统所需 要的大量数据。 实时操作系统应具有如下的功能1 6 i : 1 多任务管理; 武汉理l + 人学硕士学位论文 2 任务间同步和通信( 信号量、共享内存、消息等) ; 3 存储器优化管理( 含r o m 的管理) ; 4 实时时钟服务; 5 中断管理服务。 2 2 # c l i n u x 操作系统分析 p c l i n u x 是一种应用较为广泛的嵌入式操作系统。它是一个g n u 的项目, 代码完全开放。r c l i n u x 的英文解释是m i c r oc o n t r o ll i n u x ,可理解为“微控制 领域中的l i n u x ”。z c l i n u x 内核是操作系统的灵魂,包括了内核的抽象和对硬件 资源的闻接访问,它以统一的方式支持多任务,而这种方式对用户进程是透明 的,每个进程运行起来就像只有它一个进程在计算机运行一样,独占内存和其 它硬件资源。实际上内核在并发地运行几个进程,并且能够让几个进程公平合 理地使用硬件资源,也能够使各个进程之间互不干扰安全的运行。 2 2 1 t t c i i n u x 内核的结构 # c l i n u x 内核主要有5 个主要予系统组成川,如图2 - 1 所示。 图2 - 1 # c l i n u x 内核子系统的抽象结构 1 进程调度( s c h e d ) 它控制着进程对c p u 的访问,当需要选择下一个进程运行时,由调度程序 选择最值得运行的进程。可运行进程实际上是仅等待c p u 资源的进程,如果某 个进程还在等待其它资源,则该进程是不可运行进程。# c l i n u x 使用了比较简单 的基于优先级进程调度算法。 武汉理工大学硕士学位论文 2 内存管理( m m l 内存管理允许多个进程安全地共享主内存区域。u c l i n u x 与l i n u x 的最大的 区别在于l i n u x 采用了虚拟存储技术,虚拟存储技术的实现是基于局部性原理。 当一个程序在运行之前,没有必要全部装入内存,而是将那些当前需要运行的 部分页面装入内存运行,其余暂时留在硬盘上。如果发现所需页面不在内存中, 操作系统将产生一个页失效异常,导致操作系统把需要运行的部分页加载到内 存中。虚拟存储技术能够提供内存保护。进程不能以非授权方式访问或修改页 面,内核保护单个进程的数据与代码,以防止其他进程修改它们。 l i n u x 是针对有内存管理单元的处理器而设计的,虚拟内存地址是经过内存 管理单元m m u ( m e m o r ym a n a g e ru n i t ) 进行地址转换后映射为实际的物理地址。 z c l i n u x 没有m m u ,不能使用虚拟存储技术,但仍然采用存储器分页管理机制, 系统启动时把实际存储器分页,在加载应用程序时分页加载。但由于没有m m u 管理,所以实际上v c l i n u x 采用了实存储器策略。, u c l i n u x 对内存的访问是直接 的,所有程序访问的地址都是实际的物理地址。操作系统对内存空问没有保护, 各个进程实际上是共享一个运行空间。一个进程在运行前,系统必须为进程分 配足够的连续地址空间,然后全部载入到主存储器连续空间中。 3 文件系统( f s ) 文件系统可分为逻辑文件系统和设备驱动程序。逻辑文件系统是指p c l i n u x 所支持的文件系统如e x t 2 ,r o m f s 等,设备驱动程序是指为每一种硬件控制器 编写的设备驱动模块。 4 网络接d ( n e t ) 提供对各种网络标准的存取和各种网络硬件的支持,网络接口可分为网络协 议和网络驱动程序两部分,网络协议部分负责实现每一种可能的网络传输协议, 网络设备驱动程序负责与硬件进行通讯。 5 进程问通信( i p c ) 它的作用是支持进程间的各种通讯机制,常用的进程问的通讯机制有:管道、 有名管道( f w 0 ) 、s y s v 机制、网络s o c k e t 方式和全双工管道。其中,s y s v 机制包括消息队列,信号量和共享内存。 9 武汉理工大学硕士学位论文 2 2 2g c l i n u x 内核的功能 t c l i n u x 内核为用户提供了一个虚拟的机器接口,它抽象了许多硬件细节, 程序可以以某种方式来进行数据处理,而内核将所有的硬件抽象成统一的虚拟 接口。z c l i n u x 内核的主要功能如下: 1 对文件系统的读写进行管理,把文件系统的操作映射到对磁盘或 者其他设备的操作; 2 管理程序的运行,为程序分配资源,并且处理程序之间的通讯: 3 管理存储器,为程序分配内存; 4 管理输入输出,将设备映射成文件。 2 3 嵌入式系统引导装载程序 引导加载程序是系统加电后运行的第一段软件代码。回忆一下p c 的体系结 构可以知道,p c 机中的引导加载程序由b i o s ( 其本质就是一段固件程序) 和 位于硬盘m b r 中的o sb o o t l o a d e r ( 引导装载程序。比如:l i l o 和g r u b 等) 一起组成。b i o s 在完成硬件检测和资源分配后,将硬盘m b r 中的 b o o t l o a d e r 读到系统的r a m 中,然后将控制权交给o sb o o t l o a d e r 。 b o o t l o a d e r 的主要运行任务就是将内核映像从硬盘上读到r a m 中,然后跳转 到内核的入口点去运行,也即开始启动操作系统。 而在嵌入式系统中,通常并没有像b i o s 那样的固件程序( 有的嵌入式c p u 也会内嵌一段短小的启动程序) ,因此整个系统的加载启动任务就完全由 b o o t l o a d e r 来完成。比如在一个基于a r m 7 r d m i 核的嵌入式系统中,系统在 上电或复位时通常都从地址0 x 0 0 0 0 0 0 0 0 处开始执行,而在这个地址处安排的 通常就是系统的b o o t l o a d e r 程序。 b o o t l o a d e r 通常是在任何硬件上执行的第一段代码。在像台式机这样的常规 系统中,通常将引导装载程序装入主引导记录( m a s t e r b o o t r e c o r d ( m b r ) ) q b ,或 者装入l i n u x 驻留的磁盘的第一个扇区中。通常,在台式机或其它系统上,b i o s 将控制移交给引导装载程序。这就提出了一个有趣的问题:谁将引导装载程序 装入( 在大多数情况中) 没有b i o s 的嵌入式设备上昵? 对于移植肛c 1 i n u x 到 其它开发板来说,编写或者修改b o o t l o a d e r 是一个不可避免的过程。对应于不同 1 0 武汉理r 大学硕士学位论文 的硬件平台,相应的b o o t l o a d e r 也是不同的,但是大致的功能一致。 嵌入式系统并不需要像p c 机上的b i o s 引导程序那样的灵活性,因为它通 常只需要处理一些硬件的配置,这个代码更简单,它只是个指令清单,将固定 的数字写到硬件寄存器中去。然而,这是关键的代码,因为这些数值要与硬件 相符而且要按照特定的顺序进行。所以在大多数情况下,一个最小的通电自检 模块,可以检查内存的正常运行、让l e d 闪烁,并且驱动其它必须的硬件以使 z c l i n u x 操作系统启动和运行。这些启动代码完全根据硬件决定,不可随意移动。 通常每个典型的芯片都有一个b i o s 样本,可以用来作为设计的参考,它可以根 据你的需要轻易的修改,在少数情况下,启动代码需要重新编写,最后将这个 代码下载到f l a s h 或e p r o m 芯片中。 嵌入式系统的b i o s 的文件有两种类型构成,一种是c 语言组成的( 扩展名 是c 的文件) ,一种是a r m 汇编格式的( 扩展名是s 的文件) 。b i o s 很重要的 功能就是同宿主机通讯下载l i n u x 内核,通常的方式有使用串口或者是网口来下 载。般来说,网口的下载速度较快,但是需要配置网络环境,是宿主机和目 标板在一个网络内,这些可以通过设置相应的网络地址和掩码即可;通过串口 的下载速度相对较慢,通常为9 6 0 0 比特或者1 9 2 0 0 比特。在l i n u x 环境下,可 以通过m i n i c o m s 来设置串口参数。 2 4 洼c l i n u x 内核及其配置 嵌入式操作系统内核可以在f l a s h 上直接运行,也可以加载到内存中运行。 f l a s h 的运行方式,是把内核的可执行映像烧写到f l a s h 上,系统启动时从f l a s h 的某个地址开始执行。这种方法实际上是很多嵌入式系统所采用的方法。内核 加载方式是把内核的压缩文件存放在f l a s h 上,系统启动时读取压缩文件在内存 里解压,然后开始执行。这种方式相对复杂一些,但是运行速度可能更快,因 为r a m 的存取速率要比f l a s h 高。 # c l i n u x 内核的配置系统由三个部分组成【8 】,分别是: 1 m a k e f i l e :分布在l i n u x 内核源代码中的m a k e f i l e ,定义l i n u x 内核的编 译规则; 2 配置文件( c o n f i g i n ) :给用户提供配置选择的功能: 3 配置工具:包括配置命令解释器( 对配置脚本中使用的配置命令进行 武汉理工大学硕士学位论文 解释) 和配置用户界面( 提供基于字符界面、基于n c u r s e s 图形界面以及基于 x w i n d o w 图形界面的用户配置界面,各自对应于m a k e c o n f i g 、m a k e m e n u c o n f i g 和m a k ex c o n f i g ) 。 这些配置工具都是使用脚本语言,如t c l t k ,p e r l 编写的( 也包含一些用c 编写的代码) 。本文并不是对配置系统本身进行分析,而是介绍如何使用配置系 统。所以,除非是配置系统的维护者,一般的内核丌发者无须了解它们的原理, 只需要知道如何编写m a k e f i l e 和配置文件就可以。所以,在本文中,只对m a k e f i l e 和配置文件进行讨论。另外,凡是涉及到与具体c p u 体系结构相关的内容,本 文都以a r m 为例,这样不仅可以将讨论的问题明确化,而且对内容本身不产生 影响。 # m a k ec o n f i g ( 基于文本的最为传统的配簧界面) # m a k em e n u c o n f i g ( 基于文本选择的配置界面) # m a k ex c o n f i g ( 基于图形窗口模式的配置界面) 进行配置时,大部分选项可以使用其缺省值,只有小部分需要根据用户不同 的需要选择。例如,如果需要内核支持d o s 分区的文件系统,则要在文件系统 部分选择f a t 或d o s 系统支持;系统如果配有网卡、p c m c i a 卡等,需要在网 络配置中选择相应卡的类型。 选择相应的配置时,有三种选择,它们分别代表的含义如下: “y 乙将该功能编译进内核; “n ,_ 不将该功能编译进内核; “m ,_ 将该功能编译成可以在需要时动态插入到内核中的模块。 将与核心其它部分关系较远且不经常使用的部分功能代码编译成为可加载 模块,有利于减小内核的大小,减小内核消耗的内存,简化该功能相应的环境 改变时对内核的影响。许多功能都可以这样处理,例如像上面提到的网卡的支 持、对f a t 等文件系统的支持。下面是一些较为重要的特征及相应的简短描述。 1 网络支持 一般,如果需要与网络( 如i n t e r n e t ) 连接在一起,只需选择y ,或者想通过s l i p , p p p 等方式连接到i n t e r n e 上。接着,又会被询问是否支持t c p i p 网络,同样, 应当选择y 。 2 进程问通信i p c ( i n t e r p r o c e s sc o m m u n i c a t i o n ) 是否支持进程间的通讯机制,通过i p c 来使进程之间完成对话功能还有许多 武汉理t 大学硕十学位论文 其它的包也是这样。因此,最好选择y 。 3 s c s l 支持 如果拥有s c s 工设备,选择y 。接着,将被进一步询问有关信息,如对 c d r o m 的支持,磁盘支持以及s c s i 适配器的类型。 配置完内核,接下来需要对内核源代码文件的依赖性和完整性进行检验,并 且进行编译,此时要保证系统所使用的g c c 版本在g c c 2 7 2 以上: # m a k ed e p ( 确保关键文件在讵确的位置) # m a k ec l e a n ( 确保所有有关文件都处于最新版本状态) # m a k el i bo n l y ( 确保编译相应的库文件) # m a k eu s e r _ o n l y ( 确保编译链接应用程序) # m a k er o m f s ( 确保生成r o t o r s 文件系统) # m a k ei m a g e ( 确保生成下载的映像) # m a k e ( 确保生成一个二进制的文件i m a g e r a m ,i m a g e r o m ,其中i m a g e r a m 可直接下载到内存里运行,而i m a g e r o m 则要被烧录到f l a s h 中,然后上电复位 即可运行) 。 完成如上步骤后,一个新的内核就己经生成了,然后可以通过网口或者串口 进行下载运行即可。如果内核配置正确,那么系统就会正常的运行,同时通过 交叉编译环境中的宿主机可以看到嵌入式系统启动的界面。 2 5 # c l i n u x 内核链接及载入 旦为目标系统编译了内核后,通过使用引导装载程序( 它已经被装入到目 标板的闪存中) ,内核就被装入到目标系统的内存( 在s d r a m 中或者在闪存中) 。 通过使用串行、u s b 或以太网端口,引导装载程序与主机通信以将内核传送到 目标的闪存或s d r a m 中。在将内核完全装入目标后,引导装载程序将控制传 递给装入内核的地址。 2 5 1 内核链接文件 内核可执行文件由许多链接在一起的对象文件组成。对象文件有许多节,如 文本、数据、i n i t 数据、b s s 等等。这些对象文件都是由一个称为链接器脚本的 武汉理丁大学硕十学位论文 文件链接并装入的。这个链接器脚本的功能是将输入对象文件的各节映射到输 出文件中:换句话说,它将所有输入对象文件都链接到单一的可执行文件中,将 该可执行文件的各节装入到指定地址处。v m l i n u x 1 d s 是存在于a r c h 目 录中的内核链接器脚本,它负责链接内核的各个节并将它们装入内存中特定偏 移量处。典型的v m l i n u x 1 d s 看起来像这样。 典型的v m l i n u x 1 d s 文件如下: o u t p u t _ a r c h ( ) 车包括a r c
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 供应链金融合同中担保资产范围及买卖双方风险分担
- 电力系统检修安全操作协议
- 高层管理人员内部股份转让及股权激励协议
- 2023年辅警招聘报名表
- 大学法学专业试题及答案
- 造价专业面试题目及答案
- 全球化与科技融合的新模式研究-洞察及研究
- 网媒专业考试题及答案
- 检验专业英语试题及答案
- 吊篮租赁公司半年工作总结
- 现代中国的对外关系课件
- HY/T 080-2005滨海湿地生态监测技术规程
- GB/T 712-2011船舶及海洋工程用结构钢
- GB/T 20969.1-2021特殊环境条件高原机械第1部分:高原对内燃动力机械的要求
- GB/T 19868.4-2005基于预生产焊接试验的工艺评定
- GB/T 19633.1-2015最终灭菌医疗器械包装第1部分:材料、无菌屏障系统和包装系统的要求
- 吸附及吸附过程课件
- 羽毛球运动基础知识简介课件
- 设计美学研究课件
- 管道施工安全检查表
- 部编版七年级上册语文《雨的四季》课件(定稿;校级公开课)
评论
0/150
提交评论