




已阅读5页,还剩59页未读, 继续免费阅读
(计算机应用技术专业论文)基于arm的嵌入式远程监控系统的实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 随着科学技术的不断发展,嵌入式系统在工业控制和智能家电领域得到了广 泛的应用,同时控制逻辑和功能也变得越来越复杂,因此,简单的嵌入式系统已 经不能满足这种需求,为了解决这种问题,越来越多的人倾向于使用完整的操作 系统,这就使得嵌入式操作系统在嵌入式系统领域交得越来越重要。操作系统为 应用开发人员提供了一个访问底层硬件的接口,使得开发人员不需要过多的关注 底层硬件的实现细节,把精力都放在应用程序的开发上,降低了开发的难度。 目前,工业现场多采用现场总线对设备进行连接、监控,随着网络技术的发 展和市场需求的变化,工业设备实现网络化管理已经成为一种必然的趋势。而应 用嵌入式i n t e r n e t 技术的监控系统更是监控领域最新的发展趋势,嵌入式 i n t e r n e t 技术改变以往的监控系统体系结构,满足了现代监控系统的可扩展性、 分布式、实时性等要求,具有广阔的应用前景。 本课题实现了一个基于a r m 芯片和嵌入式操作系统的带有w e bs e r v e r 的嵌入 式系统。它对工业现场的设备进行监控,用户通过i n t e r n e t 远程访问其w e bs e r v e r 来监控设备的状态,同时还可以实现一些简单的控制。 为了实现这个目标,本文分析了目前嵌入式远程监控系统的优缺点,并研究 了当前国内外嵌入式操作系统研究的现状,决定采用目前比较流行的a r m 芯片 s 3 c 4 4 b o x 和比较有发展潜力的嵌入式操作系统u c l i n u x ,实现了一个w e b s e r v e r 的移植和开发,并通过对一系列关键问题,例如数据采集、嵌入式数据 库、实时性等的解决,力求实现个通用完整的系统解决方案。 本文从嵌入式系统的结构,嵌入式数据库系统的实现以及w e bs e r v e r 的移 植和实现、实时性改进等几个方面论述了目标系统各个部分的实现,详细介绍了 实现的原理和方法,并对最后的工作进行了总结。 关键词:嵌入式;远程监控:w e bs e r v e r ;a r m ;u o li n u x t h e a p p l i c a t i o no f ae m b e d d e dl o n g - r a n g e m o n i t o r i n gs y s t e mb a s e do na r m a b s t r a c t w i 也t h ec o n s t a n td e v e l o p m e n to fs c i e n c ea n dt e c h n o l o g y , t h ee m b e d d e ds y s t e mi s w i d e l yu s e di nt h ef i e l d so fi n d u s t r i a lc o n t r o la n di n t e l l i g e n ta p p l i a n c ew i t hi n c r e a s i n g c o m p l i c a t i o no fc o n t r o ll o g i ca n df u n c t i o n s ot h es i m p l ee m b e d d e ds y s t e mc a r tn o t a d a p tt h i sr e q u i r e m e n t i no r d e rt os o l v et h i sp r o b l e m ,m o r ea n dm o r ep e o p l el i k et ou s e e m b e d d e do p e r a t i n gs y s t e mw h i c hm a k e se m b e d d e ds y s t e mm o r ea n dm o r ei m p o r t a n t i tp r o v i d e sd e v e l o p e rt h ei n t e r f a c et ov i s i tt h eh a r d w a r e s ,s ot h e yn e e dn o tt op u tm u c h e n e r g yo n t h eh a r d w 盯e s d e t a i l s t h e yc a np u ta l l e n e r g yo nt h ed e v e l o po ft h e a p p l i c a t i o n a tp r e s e n t ,m o s ti n d u s t r i e su s eb u st om o n i t o r a l o n gw i t ht h ed e v e l o po ft h e n e t w o r kt e c h n o l o g ya n gt h ec h a n g eo ft h em a r k e t sd e m a n g ,t h ea d m i n i s t e r u s i n g n e t w o r ki nt h ei n d u s t r yi sac e r t a i nt r e n d a n dt h em o n i t o r i n gs y s t e mu s i n ge m b e d d e d i n t e m e tt e c h n o l o g yt oc o n t r o li st h en e w e s td e v e l o p m e n tt r e n de s p e c i a l l y , e m b e d d e d i m e m e tt e c h n o l o g yh a sc h a n g e dt h ep a s tm o n i t o r i n gs y s t e ms t r u c t u r e ,h a sm e t e x p a n s i b i l i t yo f t h e m o d e mm o n i t o r i n gs y s t e m ,d i s t r i b u t e d ,r e a l - t i m ec h a r a c t e r ,e t c t l l i ss u b j e c th a sr e a l i z e da ne m b e d d e ds y s t e mw i t hw e bs e r v e rb a s e do na r m c h i pa n de m b e d d e do p e r a t i n gs y s t e m i ti su s e dt oc o n t r o la n o t h e re q u i p m e n t ,u s e rc a n g e tt h es t a t eo fe q n i p m e n tt h r o u g ht h ew e bs e r v e r ,a tt h es s n et i m e ,c a na l s or e a l i z e s o m es i m p l ec o n t r 0 1 i no r d e rt or e a l i z et h i sg o a l ,t h i st e x th a sa n a l y z e dt h ep l u s e sa n dm i n u s e so ft h e e m b e d d e dl o n g r a n g em o n i t o r i n gs y s t e ma tp r e s e n t , s t u d i e dt h ec u r r e n ts i t u a t i o no f o p e r a t i n gs y s t e mr e s e a r c ha th o m ea tp r e s e n t ,d e t e r m i n et ou s et h em o r ep o p u l a ra r m c h i ps 3 c 4 4 b o xa n dm o r ep o t e n t i a le m b e d d e do p e r a t i n gs y s t e mu c l i n u xa tp r e s e n t , r e a l i z et h et r a n s p l a n t a t i o no fw e bs e r v e r ,a n db yt h es o l u t i o no fas e r i e so fk e y p r o b l e mf o re x a m p l ed a t am o d u l e ,e m b e d d e dd a t a b a s e ,r e a l - t i m ec h a r a c t e r , e t c m a k e e v e r ye f f o r tt or e a l i z ea ni n t a c ts y s t e m n l ep a p e rp r e s e n t st h ec o r r e s p o n d i n gp a r t so f o b j e c ts y s t e ma sw e l la si t sp r i n c i p l e a n dm e t h o do fi m p l e m e n t a t i o na c c o r d i n gt ot h es t r u c t u r eo fe m b e d d e ds y s t e m ,r e a l i z e o fw e bs e r v e ro fs y s t e m r e a l t i m ec h a r a c t e ri m p r o v e m e n t l a t e l y , i ts u m m a r i z e s t h ew h o l ew o r k k e yw o r d s :e m b e d d e d ;l o n g r a n g ec o n t m i :w e bs e r v e r a r m ;u c l i n u x 大连海事大学学位论文原创性声明和使用授权说明 原创性声明 本人郑重声明:本论文是在导师的指导下,独立进行研究工作所取得的成果, 撰写成博士硕士学位论文:基士坠4 的蛊毯远程监控丕统盥塞通:。除 论文中已经注明引用的内容外,对论文的研究做出重要贡献的个人和集体,均已 在文中以明确方式标明。本论文中不包含任何未加明确注明的其他个人或集体己 经公开发表或未公开发表的成果。 本声明的法律责任由本人承担。 论文作者签名:第袁妒m 彩年;月心日 学位论文版权使用授权书 本学位论文作者及指导教师完全了解“大连海事大学研究生学位论文提交、 版权使用管理办法”,同意大连海事大学保留并向国家有关部门或机构送交学位论 文的复印件和电子版,允许论文被查阅和借阅。本人授权大连海事大学可以将本 学位论文的全部或部分内容编入有关数据库进行检索,也可采用影印、缩印或扫 描等复制手段保存和汇编学位论文。 保密口,在年解密后适用本授权书。 论文作者签名:常缸垆导师签名:祷j 封建0 日期:蒯年j 月f j 目 第1 章绪论 1 1 课题的目的及意义 随着自动化技术和软硬件技术的不断发展成熟,国内外工业环境的自动化程 度得到极大的提高,在很大程度上解放了生产力,使人力成本得到了下降,特别 是在一些特殊环境下,远程监控有其得天独厚的优势,对保护工作人员和提高生 产效率有着现实和广泛的意义,必将在国内的工业化和自动化进程中发挥极大的 作用。 在现代工业生产中,一些仪器设备的正常运行对工厂的安全正常运行有着决 定性的意义,所以很有必要对这些仪器、设备进行监控,但传统的监控方式对工 作人员要求过高,同时在一些工作条件恶劣的环境,或有一定危险的工作环境下, 传统的监控方式变得越来越不适应现代大工业生产的需要。而远程监控技术的出 现和利用,极大的改善了目前的局面,远程监控可以使工作人员远离条件恶劣甚 至危险的工作环境,并且利用软件的实现,可以很快捷的根据仪器设备的当前数 据参数来判断设备的状态,在不安全状态出现时,可以很直观的告警,既减轻了 工作人员的工作强度,也降低了对工作人员的素质要求,可以极大地提高监控的 可靠性和工业生产的效率。 目前,在工业控制中,普遍使用现场总线进行数据传输,现场总线是指安装 在制造或过程区域的现场装置之间、以及现场装置或控制室内的自动化控制装置 之间的数字式、串行和多点通信的数据总线【”。这种通信方式使用专用线缆通信、 成本高、协议不统一、传输信息单一。因此,需要另一种更好的通信网络取代传 统的现场总线应用于工业现场通信。 本课题实现一个带有w e bs e r v e r 的嵌入式系统,用户通过i n t e r n e t 远程访 问其w e bs e r v e r 来实现对被控设备的监控。当被监控设备进入不可靠阶段时,监 控设备可以通过w e bs e r v e r 在远端计算机上直观的告警,并可以实现一些较简单 的自动控制,而不需人为的干预,极大地提高了效率。 1 2 目前研究现状 目前,单片机或微控制器( m c u ) 已经在家庭和工业的各个领域得到了应用,通 称嵌入式系统。目前的嵌入式系统还处于单独应用的阶段,将计算机芯片嵌入到 有关的设备中,以m c u 为核心,与一些监测、伺服、指示设备配合实现一定的功 能。在一些工业应用中,为了实现多个m c u 之间的信息交流,利用c a n 、r s 一2 3 2 、 r s 一4 8 5 等总线将m c u 组网,但这种网络的有效半径比较有限,并且一般是孤立于 i n t e r n e t 以外的。而i n t e r n e t 现已成为社会重要的基础信息设旋之一,是信息流 通的重要渠道,如果嵌入式系统能够连接到i n t e r n e t 上面,则可以方便、低廉地 将信息传送到几乎世界上的任何一个地方。 嵌入式i n t e r n e t 与m c u 技术的紧密结合,需要多方面的协作,因此包括 s i e m e n s i n f i n e o np h i l i p s 和m o t o r o l a 在内的数十个公司联合成立了“嵌入式 i n t e r n e t 联盟( e t i ) ”,共同推动这一市场。可以预言,嵌入式设备与i n t e r n e t 的 结合代表着嵌入式系统和网络技术的真正未来嘲。 鉴于网络化对嵌入式设备的重要作用,嵌入式w e bs e r v e r 也是目前国内外嵌 入式研究领域的一个热点,因此关于嵌入式w e bs e r v e r 技术的应用也得到了很快 的发展。工业以太网将在工业控制领域扮演越来越重要的作用n 1 3 本文的工作 本文在分析国内外相关技术如a r m 以及嵌入式操作系统的基础上,实现了如 下的目标系统。 本文将嵌入式l i n u x 的一种- - u c l i n u x 移檀到了硬件平台上,根据硬件平台, 裁减了不必要的驱动和应用模块,并且根据本文的应用需要,添加了针对本硬件 系统的串口驱动和网络驱动程序等。使系统可以通过串口和被监控的设备交换命 令、数据,通过网络接口和i n t e r n e t 连接。 本文将嵌入式l i n u x 下常见的嵌入式w e bs e r v e r 软件b o a 运用于现场监控的 工业控制中,通过c g i 的编程以及系统底层的驱动,实现了通过远端w e b 浏览器 或者使用h t t p 协议的应用程序对工业现场进行实时监控。 针对工业控制对象对于数据存储的需要,本文采用了实时的嵌入式数据库, 将一个适合于嵌入式系统的数据库软件移植到嵌入式系统当中,以便于数据的存 取和管理。 由于工业现场有时要求很高的实时性,普通的l i n u x 的任务调度算法可能无 法满足特定情况下的要求,针对这个问题。本文将这种应用下的操作系统进行了 实时性改造,以满足特殊需求系统实时性的应用要求。 本文通过以上工作,完成了一套远程实时监控的软硬件平台。通过软件模块 的不同组合,以达到对远端设备进行监控的目的。 综上所述,整个系统的结构如图1 1 所示。 数据采集器 数据采集器 数据采集器 数据采集器 图1 1 系统结构 f i g 1 1f r a m e w o r k 具体的实现包括: 1 嵌入式操作系统u c l i n u x 的移植。 2 w e bs e r v e r 控制器和数据采集器在目标系统上的实现。 3 嵌入式数据库的选用和移植。 4 系统实时性的改进。 第2 章系统工作平台 2 1 目标系统的硬件平台 在本系统中,我们的硬件平台采用武汉创维特公司的a r m 开发板,它的微控 制器采用s a m s u n g 公司的s z c 4 4 b o x 芯片,该芯片是1 6 3 2 位精简指令结构的a r m 处理器,具有低功耗等特点,是业内公认的低成本、高性能最佳内核之一。具有 较高的性价比,是中低端嵌入式产品中应用比较广泛的处理器之一 4 】。s 3 c 4 4 b o x 是基于a r m 7 t d m i 的体系结构,a z 1 7 t i ) m i 是a r m 公司晟早为业界普遍认可且赢得了 最广泛应用的处理器核u 】。 系统的硬件平台的结构如图2 1 所示 图2 i 系统硬件平台结构 f i g2is y s t e m sh a r d w a r es t r u c t u r e 其中串行接口电路用于s 3 c 4 4 b o x 系统与被监控设备控制器的通讯:1 0 h z 有 源晶振为系统提供工作时钟,通过片内p l l 电路倍频为6 4 m h z 作为微处理器的= e 作时钟;f l a s h 存储器用于存放已调试好的用户应用程序,嵌入式操作系统或其他 在系统掉电后需要保存的用户数据等;s d r a m 存储器作为系统运行时的主要区域, 系统及用户数据、堆栈均位于s d r a m 存储器中:l o m 以太网接口为系统提供以太网 接入的物理通道,通过该接口,系统能以i o m 的速率接八以太网:j t a c , 接口可对 接入的物理通道,通过该接口,系统能以l o m 的速率接入以太网;j t a g 接口可对 第2 章系统工作平台 2 1 目标系统的硬件平台 在本系统中,我们的硬件平台采用武汉创维特公司的a r m 开发板,它的微控 制器采用s 心s u n g 公司的s 3 c 4 4 b o x 芯片,该芯片是1 6 3 2 位精简指令结构的a r m 处理器,具有低功耗等特点,是业内公认的低成本、高性能最佳内核之一。具有 较高的性价比,是中低端嵌入式产品中应用比较广泛的处理器之一【4 】。s 3 c 4 4 b o x 是基于a r m 7 t d m i 的体系结构,a r m 7 t d m i 是a r m 公司最早为业界普遍认可且赢得了 最广泛应用的处理器核【5 】。 系统的硬件平台的结构如图2 1 所示 图2 i 系统硬件平台结构 f i g 2 1s y s t e m sh a r d w a r es t r u c t u r e 其中串行接口电路用于s 3 c 4 4 b o x 系统与被监控设备控制器的通讯;i o m h z 有 源晶振为系统提供工作时钟,通过片内p l l 电路倍频为6 4 m h z 作为微处理器的工 作时钟;f l a s h 存储器用于存放已调试好的用户应用程序,嵌入式操作系统或其他 在系统掉电后需要保存的用户数据等;s d r a m 存储器作为系统运行时的主要区域, 系统及用户数据、堆栈均位于s d r a m 存储器中;i o m 以太网接口为系统提供以太网 接入的物理通道,通过该接口,系统能以i o m 的速率接入以太网:j t a g 接口可对 4 芯片内部的所有部件进行访问,通过该接口可对系统进行调试、编程等。 芯片中除了微处理器内核外,在芯片中还集成了许多外围设备:2 个通用串口 通道,8 个l o 位的a d 转换器,2 个通用d m a ,5 个p w m 计时器和一个内部计时器, 7 1 个可编程的通用输入输出口,i 个可编程中断控制器( 8 个外部中断源) ,动态 r a m 同步动态r a m 控制器,r o m s r a m 和f l a s h 控制器。同时,在芯片中还有总线 仲裁器和内存译码器【6 】。 2 1 1a r m 简介【7 】 a r m ( a d v a n c e dr i s cm a c h i n e s ) ,既可以认为是一个公司的名字,也可以认 为是对一类微处理器的通称,还可以认为是一种技术的的名字。 a r m 公司成立于英国剑桥,主要出售芯片设计技术的授权。目前,采用a r m 技 术知识产权( i p ) 核的微处理器,即我们通常所说的a r m 微处理器,已遍及工业 控制、消费类电子产品、通信系统、网络系统、无线电系统等各类产品市场,基 于a r m 技术的微处理器应用约占据了3 2 位r i s c 微处理器7 5 以上的市场份额, a r m 技术正在逐步渗入到我们生活的各个方面。 a r m 公司是专门从事基于r i s c 技术芯片设计开发的公司,作为知识产权供应 商,本身不直接从事芯片生产,靠转让设计许可由合作公司生产各具特龟的芯片, 世界备大半导体生产商从a r m 公司购买其设计的a r m 微处理器核,根据各自不同 的应用领域,加入适当的外围电路,从而形成自己的a r m 微处理器芯片进入市场。 目前,全世界有几十家大的半导体公司都使用a r m 公司的授权,因此既使得a r m 技术获得更多的第三方工具、制造、软件的支持,又使整个系统成本降低,使产 品更容易进入市场被消费者所接收,更具有竞争力。 2 1 2a r m 微处理器的应用领域和特点 到目前为止,a r m 微处理器及技术的应用已深入到各个领域【g 】: 1 工业控制领域:作为3 2 位的r i s c 架构,基于a r m 核的微控制器芯片不但 占据了高端微控制器市场的大部分市场份额,同时也逐渐向低端微控制器 应用领域扩展,a r m 微控制器的低功耗、高性价比,向传统的8 位1 6 位 微控制器提出了挑战。 2 无线通讯领域:目前已有超过8 5 的无线通讯设备采用了a r m 技术,a r m 以其高性能和低成本,在该领域的地位日益巩固。 3 网络应用:随着宽带技术的推广,采用a r m 技术的a d s l 芯片正逐步获得 竞争优势。此外,a r m 在语音及视频处理上进行了优化,并获得广泛支持, 也对d s p 的应用领域提出了挑战。 4 消费类电子产品:a r m 技术在目前流行的数字音频播放器、数字机顶盒和 游戏机中得到广泛采用。 5 成像和安全产品:现在流行的数码相机和打印机中绝大部分采用a r m 技 术。手机中的3 2 位s i m 智能卡也采用了a r m 技术。 除此之外,a r m 微处理器及技术还应用到许多不同的领域,并会在将来取得更 加广泛的应用。 采用r i s c 架构的a r m 微处理器一般具有如下特点: 1 体积小、低功耗、低成本、高性能; 2 支持t h u m b ( 1 6 位) a r m ( 3 2 位) 双指令集,能很好的兼容8 位1 6 位器 件; 3 大量使用寄存器,指令执行速度更快; 4 大多数数据操作都在寄存器中完成; 5 寻址方式灵活简单,执行效率高; 6 指令长度固定; 2 1 3a r m 微处理器的应用选型 1 a r m 微处理器内核的选择:a r m 微处理器包含一系列的内核结构,以适用不同 的应用领域,系统采用的u c l i n u x 操作系统不需要删u ( m e m o r ym a n a g e m e n t u n i t ) 的支持。所以我们采用不带m m u 的微处理器a r m t t d m i t 9 1 ,u c l i n u x 已经 成功移植到多种不带m m u 的微处理器平台上,并在稳定性和其它方面都有上佳 表现。 2 系统的工作频率:系统的工作频率在很大程度上决定了a r m 微处理器的处理能 力。a r m 7 系列微处理器的典型处理速度为0 9 m i p s m h z ,芯片系统主时钟为 2 0 m h z 一1 3 3 m h z ,本系统采用的a r m 7 t d m i 内部时钟为6 4 m h z ,能够满足系统的 需求。 6 3 芯片内存储嚣的容量:大多数的a r m 微处理器片内存储器的容量都不太大,需 要用户在设计系统时外扩存储器,本系统外扩了4 m 的f l a s h 和8 m 的s d r a m , 基本满足存储需求。 4 片内外围电路的选择:除a r m 微处理器核以外,几乎所有的a r m 芯片均根据备 自不同的应用领域,扩展了相关功能模块,并集成在芯片之中,我们称之为片 内外围电路,如u s b 接口、i i s 接口、a d c 和d a c 等,本系统需要的夕 围接口 包括串口、网臼等。 2 1 4s 3 0 4 4 b o x 的特点 s a m s u n g 公司推出的1 6 3 2 位r i s c 处理器s 3 c 4 4 b o x 为手持设备和一般类型 应用提供了高性价比和高性能的微控制器解决方案 1 0 1 。为了降低成本,s 3 c 4 4 b o x 提供了丰富的内置部件,如:8 k bc a c h e ,8 通道l o 位a d c ,4 通道d m a 等。 s 3 c 4 4 b o x 采用了a r m 7 t d m i 内核,0 2 5 u r n 工艺的c m o s 标准宏单元和存 储编译器。它的低功耗精简和出色的全静态设计特别适用于对成本和功耗敏感的 应用。 s 3 c 4 4 b o x 的杰出特性是它的c p u 核,是由a r i v l 公司设计的1 6 3 2 位 a r m 7 t d m ir i s c 处理器( 6 4 m h z ) 。a r m 7 t d m i 体系结构的特点是它集成了 t h u m b 代码压缩器,片上的i c e 断点调试支持,和一个3 2 位的硬件乘法器。 s 3 c 4 4 b o x 通过提供全面的、通用的片上外设,大大减少了系统电路中除处理 器以外的元器件配置,从而最小化系统的成本。 2 2 软件平台 嵌入式系统软件开发平台的建立是嵌入式系统开发必不可少的步骤,当系统 硬件平台搭建起来后,对硬件平台的调式和软件开发平台的建立是迫切需要解决 的问题。下面就嵌入式系统软件开发平台的几个方面作详细介绍。 2 2 1u c i in u x 系统简介 l i n u x 是一种很受欢迎的操作系统,它与u n i x 系统兼容,开放源代码。它原 本被设计为桌面系统,现在广泛应用于服务器领域。丽更大的影响在于它正逐渐 的应用于嵌入式设备。u c l i n u x 正是在这种氛围下产生的。在u c l i n u x 这个英文单 词中u 表示m i c r o ,小的意思,c 表示c o n t r o l ,控制的意思,所以u c l i n u x 就是 m i c r o c o n t r o l l i n u x ,字面上的理解是“针对微控制领域而设计的l i n u x 系统” 【1 1 】。 u c l i n u x 目前在工业控制领域已经有了很多成功的应用,它继承了l i n u x 的稳 定性和强大的网络功能,同时支持没有姗u 的处理器,非常适合于具有网络功能 的中低端嵌入式系统。和l i n u x 相比,u c l i n u x 为了在嵌入式硬件条件下运行,对 标准l i n u x 做了很多的修改和裁减,这也是u c l i n u x 在嵌入式系统中成功运用的 关键。 u 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 高) 。同时这也是标准l i n u x 系统采用的启动方式。 u c l i n u x 系统多采用r o m f s 文件系统,这种文件系统相对于一般的e x t 2 文件 系统要求更少的空间。【1 2 】 u c l i n u x 重写了应用程序库,相对于越来越大且越来越全的g l i b c ,u c l i b c 对 l i b c 做了精简。由于嵌入式系统一般不支持模块加载,u c l i n u x 对用户程序一般 采用静态链接的形式,同时这种做法也是通常嵌入式系统的做法。 2 2 2u o ii n u x 操作系统的体系结构 u c l i n u x 操作系统是由引导程序、内核、文件系统和用户应用程序这几部分构 成的。 系统调用接口 用户应用程序 设备驱动 文件系统 操作系统核心机制 ( 进程调度、内存 l i n u x 内核 管理、中断机制、 时钟管理、文件系 统、网络支持、信 引导加载程序 号机制等等) 图2 2u c l i n u x 的体系结构 f i g 2 2u c l i n u x ss t r u c t u r e 内核是整个操作系统的核心,是操作系统性能的主要体现。在多任务系统中, 内核负责管理各个任务,或者说为每个任务分配c p u 时间,并且负责任务间的通 信。内核提供的基本服务是任务切换 1 3 】。相对于实时和非实时,同样,内核也可 分为可抢占式内核和非可抢占式内核。但拥有可抢占式的内核的并不一定是实时 系统。内核一般由进程管理、设备管理、存储管理、文件系统等部分组成。u c l i n u x 的内核组成如下图所示。 图2 3u c l i n u x 内核结构 f i g 2 3u c l i n u xk e r n e l ss t r u c t u r e 1 进程调度 进程调度主要是协调任务对计算机系统内资源如内存、i o 设备、c p u 的 争夺使用。进程调度又称为c p u 调度,其根本任务是按照某种原则为处于就 绪状态的进程分配c p u ,u c l i n u x 的进程调度沿用了l i n u x 的传统,系统每隔 一定时间挂起进程,同时系统产生周期性的时钟计时中断,并通过调度函数( 定 时器处理函数) 决定进程什么时候拥有它的时间片,然后进行相关进程切换。 切换通过父进程调用f b r k 函数生成子进程来实现。u c l i m l x 系统f b r k 调用完成 后,要么子进程代替父进程执行( 此时父进程被挂起s l e e p ) 直到子进程调用 e x i t 退出;要么调用e x c c 执行一个新的进程,这个时候产生可执行文件的加载, 即使这个进程只是父进程的拷贝,这个过程也不可避免。当予进程执行e x i t 或e x e c 后,子进程使用w a k e u p 把父进程唤醒,使父进程继续往下执行。 2 内存管理 标准l i n u x 采用了虚拟内存,在内存的管理上,采用了段页式管理,一次 逻辑地址到物理地址的转换要经过查询段表,查询页表和查询页表项,最后才 能得到需要的物理地址,内存访问的安全性由系统提供。而u c l i n u x 由于没有 m m u 管理存储器,其对内存的访问是直接的,所有程序中访问的地址都是实 际的物理地址。因此操作系统对内存空间没有保护,各个进程实际上共享一个 运行空间,导致了用户程序使用的空间可能占用到系统内核空间而导致系统崩 溃。 3 文件系统 u c l i n u x 继承了l i n u x 完善的文件系统性能。其采用的是r o m f s 文件系统, 这种文件系统相对于一般的e x t 2 文件系统要求更少的空间。空间的节约来自 于两个方面,首先,内核支持m m f s 文件系统比支持e x t 2 文件系统需要更少的 代码,其次r o m f s 文件系统相对简单,在建立文件系统超级块( s u p e r b l o c k ) 时需 要更少的存储空间。r o m f s 文件系统不支持动态擦写保存,对于系统需要动态 保存的数据采用虚拟r a m 盘的方法进行处理( r a m 盘将采用e x t 2 文件系统) 。 4 网络功能 u c l i n u x 使用的是l i n u x 的内核,继承了l i n u x 网络操作系统的优势,有完 整的t c p i p 协议栈,网络性能优秀,有众多优秀的网络管理工具。 5 设备管理 和标准l i n u x 一样,u c l i n u x 也把设备分为字符设备、块设备和网络设备。 其中,字符设备以字节为单位进行数据处理,一般不使用缓存技术,并且只能 按顺序读写,典型的字符设备如键盘、鼠标等。块设备将数据按可寻址的块作 为单位进行处理,允许随机访问,并且经常采用缓存技术,典型的块设备如硬 盘等【“1 。 2 3u o iin u x 操作系统在a r m 平台上的移植 u c li n u x 内核的移植可以分为扳级移植和片级移植。对于u c li n u x 发行版本中 已经支持的c p u 通常只需要针对板级硬件进行适当修改即可,这种移植口u 做板级 移植。而对于u c l i n u x 发行版本中没有支持的c p u 则需要添加相应c p u 的移植代 码,这种移植叫做片级移植。片级移植相对板级移植来说要复杂,需要对u c l i n u x 内核有详尽的了解。本系统采用板级移植。 u c l i n u x 操作系统的移植通常要经过交叉编译工具链的安装、b o o t l o a d e r 移 植、系统内核的配置裁减、生成系统映像等几个步骤。b o o t l o a d e r 是系统上电后 首先获得执行的一段小程序,它一般完成系统的一些初始化工作,然后把操作系 统调入到内存中,跳到操作系统的入口,开始执行。在移植b o o t l o a d e r 之前,首 先需要了解自己的开发板的硬件配置情况,包括:c p u 的型号、串彳亍口的设置、晶 振的频率等。本文使用一台p c 机作为宿主机,安装r e d h a t9 0 ,通过以太网连接 到目标系统。对u c l i n u x 系统的配置裁减以及应用程序的编写都是在宿主机上完 成,要实现u c l i n u x 系统的配置和编译,就必须在宿主机上安装交叉编译工具链, 在生成系统的b i n 文件后,通过f l a s h 烧写软件将包含b o o t l o a d e r 、u c l i n u x 内 核和文件系统的b i n 文件烧写到目标系统的f l a s h 中,目标系统的u c l i n u x 操作 系统的定制就完成了【1 5 】。系统开发流程如下图所示。 主机:r c d h a tl i n u x 目标机:s 3 c 4 4 b o x 图2 4 系统开发流程 f i g 2 4s y s t e m sp r o g r a m m i n gf l o w 针对不同的目标硬件平台,所选用的交叉编译工具都是不同的,本文中使用的 是a r m 7 t 叫i 核的c p u ,选用a r m _ e 1 卜系列工具链。 2 3 1 设置工具链 设置工具链,在主机机器上创建一个用于编译将在目标系统上运行的内核和 应用程序,这是因为目标硬件可能没有与主机兼容的二进制执行级别。工具链由 一套用于编译、汇编和链接内核及应用程序的组件组成。这些组件包括: b i n u t i l s 一用于操作二进制文件的实用程序集合。他们包括诸如a r 、a s 、 o b j d u m p 、o b j c o p y 这样的实用程序。 g c c - - g n uc 编译器。 g 1 i b c 一所有用户应用程序都将链接到的c 库。避免任何使用c 库函数的内核 和其它应用程序可以在没有该库的情况下进行编译。 u c l i n u x 的打印终端一通常情况下,u c l i n u x 的默认终端是串口,内核在启动 时所有的信息都打印到串口终端( 使用p r i n t k 函数打印) ,同时也可以通过串 口终端与系统交互。 交叉编译调试工具一支持一种新的处理器,必须具备一些编译,汇编工具,使 用这些工具可以形成可运行于这种处理器的二进制文件。对于内核使用的编译 工具同应用程序使用的有所不同。在解释不同点之前,需要对g c c 连接做一些 说明: 1 d ( 1 i n kd e s c r i p t i o n ) 文件:i d 文件是指出连接时内存映象格式的文件。 c r t o s :应用程序编译连接时需要的启动文件,主要是初始化应用程序栈。 p i c ( p o s i t i o ni n d e p e n d e n c ec o d e ) :与位置无关的二进制格式文件,在程序 段中必须包括r e l o c 段,从而使得代码加裁时可以进行重新定位。 内核编译连接时,使用u c s i m m 1 d 文件,形成可执行文件映象,所形成的代码 段既可以使用间接寻址方式( 即使用r e l o c 段进行寻址) ,也可以使用绝对寻 址方式。这样可以给编译器更多的优化空间。因为内核可能使用绝对寻址,所 以内核加载到的内存地址空间必须与1 d 文件中给定的内存空间完全相同。 应用程序的链接与内核链接方式不同。应用程序由内核加载,由于应用程序的 1 d 文件给出的内存空间与应用程序实际被加载的内存位置可能不同,这样在应 用程序加载的过程中需要一个重新定位的过程,即对r e l o c 段进行修正,使得 程序进行间接寻址时不至于出错。 构建工具链建立了一个交叉编译器环境。本地编译器编译与本机同类的处理 器的指令。交叉编译器运行在某一种处理器上,却可以编译另一种处理器的指令。 设置交叉编译器工具链包括下载源代码、修补补丁、配置、编译、设置头文件、 安装以及很多的操作【1 6 】。 由于u c l i n u x 使用f l a t 格式作为可执行文件的格式,而a r m 的交叉编译工具 对源文件编译后生成的均为e l f 格式,因此需要对生成的可执行文件进行格式转 换,这就要用到e l f 2 f l a tt 具,它在新版的交叉编译工具链中已经提供了,只需 在应用程序编译时使用一e l f 2 f l a t 参数即可。 2 3 2u o ii n u x 内核的编译配置 在得到u c l i n u x 的压缩文件后,在宿主机上通过运行解压缩命令t a r z x f v u c l i n u x s a m s u n g t a r g z 来解压文件。在文件解压完成后,进入解压后的目录, 修改相应的文件,使之适合自己的开发板。 在l i n u x a r c h a r m n o m m u c o n f i g i n 文件中增加对m a c h i n et y p e 的支持。 在l i n u x i n c l u d e a r m n o r m n u a r c h s 3 c 4 4 b o 下增加对内存、处理器和相关引 脚的指定。 毛e l i n u x d r i v e r s m t d m a p s f l a s h c ,l i n u x d r i v e r s m t d m a d s m a k e f i l e 和l i n u x d r i v e r s m t d m a p s c o n f i g i n 文件中增加对f l a s h 操作的支持。 在l i n u x d r i v e r s c h a r f l a s h c o n f i g c 中增加f l a s h 的分区映象。 运行命令m a k em e n u c o n f i g 来对u c l i n u x 系统进行裁剪。当然首先必须要确 保这个目录是干净的目录,否则的话,必须首先运行g n a k em r p r o p e r 命令,该命 令确保源代码目录下没有不正确的目标0 文件以及文件的互相依赖。接下来的内 核配置过程比较烦琐,但是配置的适当与否与日后l i n u x 的运行直接相关。配置 内核可以根据需要使用下面命令中的一个: # m a k ec o n f i g ( 基于文本的最为传统的配置界面,不推荐使用) # m a k em e n u e o n f i g ( 基于文本选单的配置界面,字符终端下推荐使用,必须安装 n c u r s es - d e v 和t k 4 一d e v 库) # m a k ex c o n f i g ( 基于图形窗口模式的配置界面,x w i n d o w 下推荐使用) g 目n a k eo l d c o n f i g ( 如果只想在原来内核配鬣的基础上修改一些小地方,会省去不 少麻烦) 1 7 1 运行m a k em e n u c o n f i g ,在出现的界面中选择以下选项: t a r g e tp l a t f o r ms e l e c t i o n 一一 选中 女 c u s t o m i z ek e r n e ls e t t i n g sn 核配置 c u s t o m i z
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025房地产项目室内外装饰设计施工监理合同
- 2025年中小企业融资连带担保合同范本
- 2025年度图书馆图书采购与可持续发展合同
- 2025年风力发电场电线电缆配套供应协议
- 2025版历史遗迹拆除与文化遗产保护合同范本
- 2025年度高新技术项目融资服务合同范本二
- 2025年度塑料包装袋环保回收利用采购合同
- 2025版新型节能电器贴牌生产销售合同
- 2025年二层商铺楼房租赁合同及商业地产市场调研与分析服务协议
- 2025年度健身房室内涂料施工协议
- 高产小麦品种介绍
- HemiView森林冠层图像分析系统
- 创新方法教程题库题库(449道)
- 建设工程消防验收评定规则
- 山东省临沂市兰山区2022-2023学年小升初数学自主招生备考卷含答案
- 电气设备交接试验方案
- D500-D505 2016年合订本防雷与接地图集
- 北邮社电机拖动与调速技术教学包课后题解
- 学校门卫岗位职责及管理制度
- JJG 1105-2015氨气检测仪
- GB/T 17421.7-2016机床检验通则第7部分:回转轴线的几何精度
评论
0/150
提交评论