(生物医学工程专业论文)基于嵌入式linux的pm10分析系统的设计.pdf_第1页
(生物医学工程专业论文)基于嵌入式linux的pm10分析系统的设计.pdf_第2页
(生物医学工程专业论文)基于嵌入式linux的pm10分析系统的设计.pdf_第3页
(生物医学工程专业论文)基于嵌入式linux的pm10分析系统的设计.pdf_第4页
(生物医学工程专业论文)基于嵌入式linux的pm10分析系统的设计.pdf_第5页
已阅读5页,还剩69页未读 继续免费阅读

(生物医学工程专业论文)基于嵌入式linux的pm10分析系统的设计.pdf.pdf 免费下载

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

文档简介

东北大学硕士学位论文 a b s t t a c t t h ed e s i g no fp m 10 a n a l y s es y s t e m b a s e do nt h ee m b e d d e dl i n u x a b s t r a c t i nt h i sg r a d u a l l yi n f o r m a t i o n i z e dp o s t - p ct i m e s ,c o m p u t e ra n dn e t w o r kh a v eb e e n w i d e l yu s e dt h o r o u g h l yi ne v e r ya s p e c to fs o c i a ll i f e e m b e d d e dp r o d u c t se x c e e d e d g e n e r a lp u r p o s ec o m p u t e r sg r e a t l yi na p p l i c a t i o nq u a n t i t y ,t h u se m b e d d e dt e c h n o l o g y h a sb e c o m ea ni m p o r t a n ts u b j e c to ff u t u r es o c i e t yd e v e l o p m e n t o nab a s i st h a tt h e a d v a n t a g e so fe m b e d d e dl i n u xh a db e e ni n t e n s i v e l yl e a r n t ,t h i sp a p e ra n a l y z e dt h e f u n c t i o nd e m a n da n do r i g i n a ld e f e c t so f p m l os u s p e n d e dp a r t i c u l a rm a t t e ra n a l y z e ri n d e t a i l ,a n dr e a l i z et h ea p p l i c a t i o no fe m b e d d e dp r o d u c t st ot h ep r o d u c td e s i g ni n e n v i r o n m e n t a lm o n i t o r i n g t h i sp a p e ri n t r o d u c e dt h es t r u c t u r e ,a d v a n t a g e s ,d e v e l o p m e n tp r o c e s sa n d c o m p i l i n gt e c h n o l o g yo fl i n u xs y s t e m o nb a s i so fa n a l y z i n ge x i s t i n gp r o b l e m so f f o r m e rd a s i b i l 0 0 0s y s t e mo f d a s i b ie n v i r o n m e n t a lc o r p ,u s a ,t h ep a p e rd e s c r i b e d t h e s y s t e mc o n s t i t u t i o no ft h ei m p r o v e d s t r u c t u r eo fp m l 0s u s p e n d e dp a r t i c u l a r m a t t e ra n a l y z e ri sd i s t r i b u t e da d m i n i s t e ra n dc o n t r o l l e r a d m i n i s t e rc o m p l e t ei n t e r f a c e o fm e na n d m a c h i n e ,d i s p l a yc a l c u l a t e c o n t r o l l e rc o m p l e t ed r i v e ro fo u t e re q u i p m e n t , a n dt h e nt h ep a p e rr e p r e s e n t e dt h er e a l i z a t i o no ft h ee m b e d d e dp r o d u c t s ,i e ,p m l 0 e m b e d d e ds y s t e md e s i g n ,a n dd e t a i l so f t e s t i n gv e r i f i c a t i o n i nt h ep r o c e s so fr e a l i z a t i o n , t h ep m l 0s y s t e ms t r u c t u r ew a sd e s i g n e da c c o r d i n g t ot h er e q u e s to nh a r m o n ya l l o c a t i o no fs o f t w a r ea n dh a r d w a r e w h e nh a r d w a r e s t r u c t u r ew a sd e t e r m i n e d t h em a i na t t e n t i o nw o u l db ef o c u s e do nt h er e a l i z a t i o no f s o f t w a r ed e s i g na ta p p l i c a t i o nl e v e l n l cs y s t e mu s e dad e s i g nm e t h o dc a l l e d “d o w n f r o mt o p ”,t h a tu p o nr e q u e s to f t h es y s t e m ,t h er e a l i z e df u n c t i o nw a sd i v i d e di n t oe i g h t p a r t s ,c o m m u n i c a t i o n , m e c h a n i c a lt r a n s m i s s i o n ,m a i nc o n t r o lt a s k ,m e n u ,r e a l - t i m e d a t ad i s p l a y , h i s t o r i c a ld a t am e m o r y , n e t w o r kc o m m u n i c a t i o na n dd a t ac o m p u t i n g t h e s ef u n c t i o n sw e r ea b s t r a c t e dt ot h r e et y p e so ft a s k s ,i n d e p e n d e n t l ye x e c u t e dt a s k , b a s i ct a s ka n dc o n t r o lr e a l i z a t i o nt a s k 1 1 1 ed e s i g nw a sr e a l i z e db yt h et e a m w o r ko f t h e s et a s k s i nt h ep r o c e s so fd e b u g g i n g ,g d bd e b u g g e rw a su s e df o rt e s t i n gt h ef u n c t i o n i i i 东北大学硕士学位论文a b s t r a c t m o d u l e sa n d s y s t e ml e v e lf u n c t i o n a f t e re n s u r i n gt h ea c c u r a c yo f e a c hm o d u l ed e s i g n , o n l i n es y s t e mt e s t i n gw a ss u c c e s s f u l l ye x e c u t e da n dt h ea n t i c i p a t e dd e s i g nt a 昭e tw a s a t t a i n e df i n a l l y t h ep r a c t i c es h o w e dt h a tl i n u xo p e r a t i n gs y s t e m sa d v a n t a g e sc a nb e f u l l yu t i l i z e dw h e na p p l i e dt oe n v i r o n m e n t a la i rm o n i t o r i n gi n s t r u m e n t sa n ds y s t e m , a n dt h er e l i a b i l i t yo fa n a l y s i ss y s t e mu n i ta n ds t a b f l i t yo ft h ed a t at r a n s m i s s i o nw e r e i m p r o v e d t h ec a p a b i l i t y p r i c er a t i oo ft h em o n i t o r i n gs y s t e mh a sb e e ni m p r o v e da s w e l l t h el i n u xo p e r a t i n gs y s t e mh a sav e r yw i d ep r o s p e c ti na p p l i c a t i o n k e yw o r d s :e n v i r o n m e n t a lm o n i t o r i n g ,e m b e d d e dl i n t t x ,c o m m u n i c a t i o n , r e a l t i m eo p e r a t i n gs y s t e m ,p m l 0s u s p e n d e d p a r t i c u l a rm a t t e r i v 东北大学硕士学位论文 图表目录 图2 1 图2 2 图2 3 图2 4 图2 5 图2 6 图2 7 图2 8 图2 9 图3 1 图3 2 图3 3 图3 4 图4 1 图4 2 图4 3 图4 4 图4 5 图4 6 图4 7 图4 8 图4 9 图4 1 0 图4 1 1 图4 1 2 图4 1 3 图4 1 4 图5 1 图5 2 图5 3 图5 4 图5 5 图5 6 图5 7 图5 8 图5 9 图5 1 0 图5 1 1 图5 1 2 图表目录 l i n u x 系统的构成8 l i n u x 内核的系统组成9 l i n u x 状态转移图1 2 网络子系统与其它子系统的关系1 3 i p c 子系统与其它子系统的关系1 4 嵌入式l i n u x 开发流程1 6 编译程序的基本结构1 7 g c c 模式1 8 软件编译、链接流程1 8 系统配置2 2 城市空气质量监测应用系统2 5 硬件功能图2 6 系统软件结构图2 7 硬件结构图2 8 前置板原理图3 0 电机驱动原理图3 1 流程控制原理图3 2 执行单元实物图3 3 前置板实物图3 4 电机驱动板实物图3 4 数据传递关系3 5 主程序流程图3 9 通讯流程图4 1 p m i o 通讯模块流程4 2 流量控制图4 4 显示结构图4 5 显示主界面4 8 编译过程5 4 列表5 4 执行代码5 5 设置断点5 6 执行到断点处5 6 查看变量5 7 函数树5 7 查看汇编代码5 8 运行结果6 0 软件测试流程6 0 p m i o 系统前面板6 1 显示主界面6 2 v i i i 独创性声明 本人声明所呈交的学位论文是在导师的指导下完成的。论文中取得的 研究成果除加以标注和致谢的地方外,不包含其它人己经发表或撰写过的 研究成果,也不包括本人为获得其它学位而使用过的材料。与我一同工作 的同志对本研究所做的任何贡献均己在论文中作了明确的说明并表示谢 意。 学位论文作者签名: 么劭芥乞 日期:挪、胁彳 学位论文版权使用授权书 本学位论文作者和指导教师完全了解东j 匕大学有关保留、使用学位论 文的规定:即学校有权保留并向国家有关部门或机构送交论文的复印件和 磁盘,允许论文被查阅和借阅。本人授权东北大学可以将学位论文的全部 或部分内容编入有关数据库进行检索、交流。 ( 如作者和导师同意网上交流,请在下方签名;否则视为不同意。) 学位论文作者签名: 导师签名: 签字日期: 签字目期: 东北大学硕士学位论文 第一章引言 第一章引言 经济快速增长和城市化快速进程中的大气污染问题日趋严重,随着人h 的增 长带来能源的消耗的增加,燃煤消耗和机动车的大量使用导致污染范围持续扩 大,以颗粒物、二氧化硫、氮氧化物等为主要污染物的大气污染问题日趋严重。 环境空气监测和空气质量预报工作日益引起人们的重视。 1 1 我国环境空气质量监测的概况 环境监测是环境保护的耳目,是准确测取、解释和运用环境质量信息为环境 管理和环境建设提供依据的一项系统性的工作,是执行环境监督管理的最重要的 技术手段。离开了环境监测的技术支持,整个环保工作就会陷入被动局面。我国 环境监测能力“九五”以来得到了较快的充实和发展,初步形成了具有我国特色 监测技术和管理体系,环境监测工作取得了明显成绩。但与发达国家相比仍存在 较大差距,亟待加强我国环境监测的质量控制水平,实现先进的环境管理和科学 的实施监督的环保工作需求。由于目前我国环境监测设备在品种、数量、性能、 质量上还不能完全满足实际工作的需要,大部分监测站的仪器装备技术含量低, 功能单一,稳定性和可靠性差,使得环境监测数据的准确性、可靠性、可比性和 一致性等方面问题严重,也使我国环境监测的质量控制水平受到严重制约。 国内使用的环境自动监测系统国外产品主要为:( 1 ) 美国热电子公司( t h e r m o e l e c t r o n 公司) ;( 2 ) 美国t e l e d y n e 公司( 包括原a p i 公司和m o n i t o r 公 司) ;( 3 ) 法国e s a 公司和法国s e r e s 公司;( 4 ) 日本d d k 公司、h o r i b a 公司、岛津公司。国内厂家要为:河北先河公司、武汉天虹公司、北京中晟泰科 环境科技发展有限责任公司( b e s t e c h d a s i b i ) 等。 1 2 课题的提出 原美国d a s i b i 公司的d a s i b i 1 0 0 0 系列环境空气质量监测系统五参数的系 统构成如下: 8 0 0 1 型数据采集器; 5 0 0 8 型多元气体校准仪: 4 1 0 8 型二氧化硫分析仪; 1 0 0 8 a h 型臭氧分析仪; 3 0 0 8 型一氧化碳分析仪; 东北大学硕士学位论文 第一章引言 2 1 0 8 型氮氧化物分析仪; 7 0 0 l 型悬浮颗粒分析仪; - 串口分配器和调制解调器。 d a s i b i 1 0 0 0 系统的出现,改善了我国的环境监测工作的条件,虽然提高了 数据的有效性和工作人员的工作效率。但是d a s i b i 1 0 0 0 系统是美国8 0 年代的 产品,随着信息技术和网络技术的发展, 人员的素质不同,监测工作的日益加重, 统暴露出不足之处。 以及中国用户的普及范围的增加、监测 d a s i b i 一1 0 0 0 系列环境空气质量髓测系 在这套系统中,数据采集仪负责完成对各分析单元提供的各种污染物的历史 数据进行存储保留并提供给中心站,数据的存储空间有限。数据的采集是通过各 单机的模拟量输出连接到8 0 0 1 对应于该种污染物相应的通道上,这种连接方式 带来的结果就是在8 0 0 1 上显示的污染物的实时数据与单机对应显示的实时数据 不符,存在系统误差。对系统而言,各单机与中心站的通讯是通过现场的c o s ( 串 口分配器) 和调制解调器来完成的,现场是采用r s 2 3 2 串行总线实现的,点对 点的连接方式,对于节点的扩展性很差。这是系统上存在的问题。 另外,对于单机而言: 硬件方面:各分析单元采用的微控制器大多是8 0 年代的产品,技术落后; 硬件电路的集成度不高,生产工艺复杂,故障点不宜判断排除。 数据存储方面:各单机不具备数据存储功能,现场需要一台数据采集仪增 加成本。 人机界面:英文界面,l e d 显示,不适合我国国情,人机界面不友好,操 作不便。 网络功能:原系统远程联接只支持p s t n 方式。 软件:自行设计的多任务操作系统,系统运行不够稳定。 基于上述原因,要设计开发出一套适于现代科技发展要求的环境质量监测系 统【4 ,5 ,6 。 1 3 课题主要研究思路和手段 本课题主要针对d a s i b i 1 0 0 0 系统的缺点,首先确定系统的现场总线形式改 为r s 一4 8 5 方式,各单机选择l i n u x 操作系统,提高系统稳定性;各单机增加数据 存储功能,取消系统中的c o s 和数据采集仪。首先设计7 2 0 1 型p m l 0 悬浮颗粒 物分析仪系统,具体设计实现环境监测系统中的嵌入式产品。在嵌入式领域,由 于l i n u x 操作系统具有开放的源代码、良好的可移植性、丰富的代码资源,并且 东北大学硕士学住论文 第一章引言 2 1 0 8 型氮氧化物分析仪; 7 0 0 1 型悬浮颗粒分析仪; 串口分配器和调制解调器。 d a s i b i 1 0 0 0 系统的出现,改善了我国的环境监测工作的条件,虽然提高了 数据的有效性和工作人员的工作效率。但是d a s m i 1 0 0 0 系统是美国8 0 年代的 产品,随着信息技术和网络技术的发展 人员的素质不同,监测工作的日益加重 统暴露出不足之处。 以及中国用户的普及范围的增加、监测 d a s i b i 1 0 0 0 系列环境空气质量监测系 狂这套系统中,数据采集仪负责完成对各分析单元提供的各种污染物的历史 数据进行存储保留并提供给中心站,数据的存储空间有限。数据的采集是通过各 单机的模拟量输出连接到8 0 0 1 对应于该种污染物相应的通道上,这种连接方式 带来的结果就是在8 0 0 1 上显示的污染物的实时数据与单机对应显示的实时数据 不符,存在系统误差。对系统而言,各单机与中心站的通讯是通过现场的c o s ( 串 1 3 分配器) 和调制解调器来完成的,现场是采用r s - 2 3 2 串行总线实现的,点对 点的连接方式,对于节点的扩展性很差。这是系统上存在的问题。 另外,对于单机而言: 硬件方面:各分析单元采用的微控制器大多是8 0 年代的产品,技术落后; 硬件电路的集成度不高,生产工艺复杂,故障点不宜判断排除。 数据存储方面;各单机不具备数据存储功能,现场需要一台数据采集仪增 加成本。 人机界而:英文界面,l e d 显示不适合我国国情,人机界向不友好,操 作不便。 网络功能:原系统远程联接只支持p s t n 方式。 软件:自行设计的多仟务操作系统,系统运行不够稳定。 基于上述原因,要设计开发山一套适于现代科技发展要求的环境质量监测系 统 4 , 5 , 6 , 7 1 。 1 3 课题主要研究思路和手段 本课题主要针对d a s i b i 1 0 0 0 系统的缺点,首先确定系统的现场总线形式改 为i t s 一4 8 5 方式,各单机选择l i n u x 操作系统,提高系统稳定性;各单机增加数据 存储功能,取消系统中的c o s 和数据采集仪。首先设计7 2 0 1 型p m l 0 悬浮颗粒 物分析仪系统,具体设计实现环境监测系统中的嵌入式产品。在嵌入式领域,由 于l i n u x 操作系统具有开放的源代码、良好的可移植性、丰富的代码资源,并且 于l i n u x 操作系统具有开放的源代码、良好的可移植性、丰富的代码资源,并且 查些查兰堡主兰竺垒查 软硬件是可裁剪的,适用于对功能、 专用系统,适于应用在本系统中。 第一章引言 可靠性、成本、体积、功耗等有严格要求的 嵌入式系统是一种根据特定用途所专门开发的系统,它只完成预期要完成的 功能。本课题硬件管理平台采用嵌入式工控机,资源充足、硬件系统成熟稳定, 这就大大减少了由硬件系统引入错误的机会,避免反复进行硬件平台设计,从而 可以将主要精力放在系统的功能实现上。 在设计方法上采用白顶向下的方法对系统的软件和硬件进行模块化的划分。 在明确了系统级的总体任务规划以及功能模块划分以后,主要进行系统的各功能 软硬件设计,然后,将硬件系统结合软件功能模块构成整个系统级设计。为了保 证设计的正确性,最终在系统硬件上进行在线测试验证,如果硬件验证的结果达 到了系统的设计指标要求,那么系统整个设计与实现的过程就结束了。 1 4 课题完成的内容及实际意义 本课题主要完成嵌入式系统产品一7 2 0 l 型p m i o 悬浮颗粒物分析仪系统的设 计实现,并使其产品化投入市场。该项产品的设计实现改变了目前我国环境监测 设备在性能、质量上还不能完全满足实际工作的需要的现状。同时也解决了大部 分监测站的仪器装备技术含量低,功能单一;环境监测数据的准确性、可靠性、 可比性和一致性差等方面的问题,改变我国环境监测质量控制水平发展受到严重 制约的现状。 1 5 论文组织结构 本文主要阐述在环境空气质量自动监测系统中,基于嵌入式l i n u x 的p m i o 系统产品的设计实现。全文共分六章。 第一章引言。主要介绍课题的背景、研究意义及论文的组织结构。 第二章嵌入式l i n u x 系统开发。介绍嵌入式操作系统的特点、优势:详细 阐述了嵌入式l i n u x 系统的构成及开发过程及编译调试技术。 第三章p m i o 分析系统设计方案。描述p m i o 系统的硬件和软件设计的方案 第四章p m i o 分析系统的设计与实现。描述7 2 0 1 型p m i o 悬浮颗粒物分析 仪具体实现方法。 第五章调试验证。详细阐述系统应用程序的调试及系统的在线测试验证过 程。 第六章结束语。 东北大学硕士学位论文 第二章嵌八式l i n u x 系统开发 第二章嵌入式l i n u x 系统开发 随着信息化技术的发展和数字化产品的普及,以计算机技术、芯片技术和软 件技术为核心的嵌入式系统再度成为当前研究和应用的热点,通信、计算机、消 费电子技术( 3 c ) 合一的趋势正在逐步形成,无所不在的网络和无所不在的计算 正在将人类带入一个崭新的信息社会。 2 1l i n u x 概论 2 1 1 嵌入式系统 2 1 1 1 嵌入式系统定义 嵌入式系统被定义为:以应用为中心、 剪、适应应用系统对功能、可靠性、成本、 统。 2 1 ,1 2 实时系统与嵌入式系统 以计算机技术为基础、软件硬件可裁 体积、功耗严格要求的专用计算机系 嵌入式系统经常被错误地叫做实时系统,其实,多数的系统并不是如此。他 们并不具备实时特性,实时性只是相对的。实时严谨地定义为硬实时,能在极短 的时间内响应,并以某种确定的方式处理事件。现在,许多硬实时功能正在逐渐 集中在d s p 或a s i c 的设计中,通过增加一些适当的硬件,如f i f o ,d m a 或其 他专用硬件来实现。 2 1 1 3 嵌入式系统特征 嵌入式系统产品的特征 嵌入式系统是面向用户、面向产品、面向应用的,如果独立于应用之外发展, 则会失去市场。嵌入式处理器的功耗、体积、成本、可靠性、速度、处理能力、 电磁兼容性等方面均受到应用要求的制约,这些问题是各个半导体厂商之间竞争 的热点。和通用计算机不同,嵌入式系统的硬件和软件要求高效率地设计,量体 裁衣、去除冗余,在同样的硅片面积上实现更高更可靠的性能,这样才能在具体 应用对处理器的选择面前更具有竞争力。 对芯片配置进行裁剪和添加理想的性能; 嵌入式处理器要针对用户的具体需求, 但同时还受订货量和市场的制约。因此 东北大学硕士学位论文第二章嵌八式l i n u x 系统开发 不同的处理器面向的用户是不一样的,可能是一般用户,行业用户或单一用户。 嵌入式系统和具体应用是有机结合的,它的升级换代也是和具体产品同步进行, 因此嵌入式系统产品一旦进入市场,具有较长的生命周期。嵌入式系统中的软件, 一般都固化在只读存储器中,而不是以磁盘为载体,可以随意更换,因此嵌入式 系统的应用软件生命周期也和嵌入式产品一样长。另外,各个行业的应用系统和 产品,和通用计算机软件不同,较少发生突然性的跳跃现象,嵌入式系统中的软 件更强调可继承性和技术衔接性,发展比较稳定。 嵌入式系统软件的特征 嵌入式处理器的应用软件是实现嵌入式系统功能的关键,对嵌入式处理器系 统软件和应用软件的要求也和通用计算机有所不同。1 软件要求固态化存储为了 提高执行速度和系统可靠性,嵌入式系统中的软件一般都固化在存储器芯片或单 片机本身中,而不是存贮于磁盘等载体中。2 软件代码高质量、高可靠性,尽管 半导体技术的发展使处理器速度不断提高、片上存储器容量不断增加,但在大多 数应用中,存储空间仍然是宝贵的还存在实时性的要求。3 系统软件的高实时性 是基本要求,在多任务嵌入式系统中,对重要性各不相同的任务进行统筹兼顾的 合理调度是保证每个任务及时执行的关键,除提高处理器速度,任务调度要由优 化编写的系统软件来完成。4 多任务操作系统是知识集成的平台和走向工业标准 化道路的基础【2 8 , 3 5 , 3 4 】。 2 1 1 4 嵌入式处理器 嵌入式系统的核心是嵌入式处理器,嵌入式处理器与通用处理器最大的不同 点在于,嵌入式c p u 大多工作在为特定用户群所专门设计的系统中,它将通用 c p u 中许多由板卡完成的任务集成到芯片内部,从而易于嵌入式系统在设计时趋 于小型化,同时还具有很高的效率和可靠性。嵌入式处理器的体系结构经历了从 c i s c ( 复杂指令集) 至r i s c ( 精简指令集) 和c o m p a c tr i s c 的转变,位数则由 4 位、8 位、1 6 位、3 2 位逐步发展到6 4 位。目前常用的嵌入式处理器可分为低 端的嵌入式微控制器( m i c r oc o n t r o l l e r u n i t ,m c u ) 、中高端的嵌入式微处理器 ( e m b e d d e dm i c r op r o c e s s o ru n i t ,e m p u ) 、用于计算机通信领域的嵌入式d s p 处理器( e m b e d d e dd i g i t a ls i g n a lp r o c e s s o r ,e d s p ) 和高度集成的嵌入式片上系 统( s y s t e mo nc h i p ,s o c ) 。 东北大学硕士学位论文 第二章嵌入式l i n u x 系统开发 2 1 2 嵌入式l i n u x 系统 2 1 2 1l i n u x 的历史 在十几年前,一位芬兰的赫尔辛基大学的年轻人l i n u xt o r v a l d s 为了实习 m i n i x ,又不想天天排队等着上机,买了一台4 8 6 微机。随后,他发觉m i n i x 的 功能十分不完善,便决心写一个保护模式下的操作系统,便诞生了l i n u x 的原型。 2 1 2 2l i n u x 与g n u 谈及l i n u x ,就必须介绍与l i n u x 紧密联系的g n u 。g n u 即g n u sn o tu n i x 的缩写。g n u 是自由软件基金会的董事长r i c h a r dm 。s t a l l m a n 于1 9 8 4 年发起 的。他认为:u n i x 虽然不是最好的操作系统,但也不会太差。他有能力将其不 足的地方加以改进,使之成为一个优秀的操作系统。开发的目的就是让所有的用 户自由的获得这个系统,可以免费使用系统的源代码,并可以自由拷贝。 2 1 2 3l i n u x 的优势 嵌入式l i n u x 的开发和研究是操作系统领域中的一个热点,目前已经开发成 功的嵌入式系统中,大约有一半使用的是l i n u x 。l i n u x 之所以能在嵌入式系统市 场上取得如此辉煌的成果,与其自身的优良特性是分不开的。 广泛的硬件支持 l i n u x 能够支持x 8 6 、a r m 、m i p s 、a l p h a 、p o w e r p c 等多种体系结构,目 前已经成功移植到数十种硬件平台,几乎能够运行在所有流行的c p u 上。l i n u x 有着异常丰富的驱动程序资源,支持各种主流硬件设备和最新硬件技术,甚至可 以在没有存储管理单元( m m u ) 的处理器上运行,这些都进一步促进了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 为开发者提供了一套完整的工具链,它利用g n u 的g c c 做编译器,用g d b 、k g d b 、 x g d b 做调试工具,能够很方便地实现从操作系统到应用软件各个级别的调试。 完善的网络通信和文件管理机制 l i n u x 至诞生之日起就与i n t e r n e t 密不可分,支持所有标准的i n t e r a c t 网络协 议,并且很容易移植到嵌入式系统当中队”】。 2 1 2 4l i n u x 的不足 提高系统实时性 l i n u x 虽然已经被成功地应用到了p d a 、移动电话、车载电视、机顶盒、网 络微波炉等各种嵌入式设备上,但在医疗、航空、交通、工业控制等对实时l 生要 求非常严格的场合中还无法直接应用,原因在于现有的l i n u x 是一个通用的操作 系统,虽然它也采用了许多技术来加快系统的运行和响应速度,并且符合p o s i x 1 0 0 3 1 b 标准,但从本质上来说并不是一个嵌入式实时操作系统。 改善内核结构 l i n u x 内核采用的是整体式结构,整个内核是一个单独的、非常大的程序, 这样虽然能够使系统的各个部分直接沟通,有效地缩短任务之间的切换时间,提 高系统响应速度,但与嵌入式系统存储容量小、资源有限的特点不相符合。 完善集成开发平台 引入嵌入式l i n u x 系统集成开发平台,是嵌入式l i n u x 进一步发展和应用的 内在要求。传统上的嵌入式系统都是面向具体应用场合的,软件和硬件之间必须 紧密配合,但随着嵌入式系统规模的不断扩大和应用领域的不断扩展,嵌入式操 作系统的出现就成了一种必然,因为只有这样爿能促成嵌入式系统朝层次化和模 块化的方向发展。很显然,嵌入式集成开发平台也是符合上述发展趋势的,一个 优秀的嵌入式集成开发环境能够提供比较完备的仿真功能,可以实现嵌入式应用 软件和嵌入式硬件的同步开发,从而摆脱了”嵌入式应用软件的开发依赖于嵌入 式硬件的开发,并且以嵌入式硬件的开发为前提”的不利局面。一个完整的嵌入 式集成开发平台通常包括编译器、连接器、调试器、跟踪器、优化器和集成用户 界面。 东北大学硕士学位论文 第二章嵌入式l i n u x 系统开发 2 2l i n u x 操作系统基本构成 2 2 1 系统概述 嵌入式l i n u x 操作系统的结构如图2 1 ,从图中可以看出l i n u x 由4 个主要 部分组成。 用户进程 系统调用接口 l i n u x 内核 硬件控制器 图2 1l i n u x 系统的构成图 f i g 2 1s t r u c t u r eo f l i n u xs y s t e m 用户进程 用户应用程序是运行在l i n u x 操作系统最高层的一个庞大的软件集合。当一 个用户程序在操作系统之上时,它就是操作系统的一个进程。 系统调用接口 为了在应用程序中实现特定的任务,可以通过系统调用来调用系统内核中特 定的过程,以实现特定的任务。一般认为,这些调用和服务也是操作系统内核的 一部分,内核的编程接口也属于这一部分。 l i n u x 内核 内核是操作系统的灵魂,包括内核抽象和对硬件资源( 如c p u ) 的间接访问, 它负责从网络上接收和发送数据包等。即:内核实际上是抽象的资源操作到具体 硬件操作细节之间的接口。 硬件 这个子系统包括了l i n u x 安装时所需要的可能的物理设备,如c p u ,内存, 硬盘,网络硬件等。 2 2 2l i n u x 内核 l i n u x 以统一的方式支持多任务,而这种方式对用户进程是透明的,每一个 进程运行起来就如只有它自己在计算机上运行一样,独占内存和其他的硬件资 源。实际上内核在并发地运行几个进程口9 , 3 4 , 3 5 】。 l i n u x 将系统的一些关键性程序分离出来构成所谓操作系统内核。 l i n u x 内核主要由五个子系统组成:进程调度,内存管理,虚拟文件系统, - 8 一 东北大学硕士学位论文 第二章嵌入式l i n u x 系统开发 网络接口,进程问通讯。如图2 2 。 图2 2l i n u x 内核的系统组成 f 蟾2 2s t r u c t u r eo f l i n u xk e r n e l 1 进程调度( s c h e d u l e r ) :控制进程对c p u 的访问。当需要选择下一个 进程运行时,由调度程序决定最值得运行的进程。运行进程实际上是仅等待c p u 资源的进程,如果某个进程在等待其它资源,则该进程是不可运行进程。l i n u x 使用了比较简单的基于优先级的进程调度算法选择新的进程。 2 内存管理( m m ) 允许多个进程安全的共享主内存区域。l i n u x 的内存管理 支持虚拟内存,即计算机中运行的程序,其代码,数据,堆栈的总量可以超过实 际内存的大小,操作系统只将当前使用的程序块留在内存中,其余的程序块则保 留在磁盘中。必要时,操作系统负责在磁盘和内存间交换程序块。内存管理从逻 辑上分为硬件无关部分和硬件有关部分。硬件无关部分提供了进程的映射和逻辑 内存的对换;硬件相关的部分为内存管理硬件提供了虚拟接口。 3 虚拟文件系统( v i r t u a l f i l e s y s t e m ,v f s ) 隐藏了各种硬件的具体细节,为所 有的设备提供了统一的接口,v f s 提供了多达数十种不同的文件系统。虚拟文件 系统可以分为逻辑文件系统和设备驱动程序。逻辑文件系统指l i n u x 所支持的文 件系统,如e x t 2 ,f a t 等,设备驱动程序指为每一种硬件控制器所编写的设备驱动 程序模块。 4 网络接口( n e t ) 提供了对各种网络标准的存取和各种网络硬件的支持。 网络接口可分为网络协议和网络驱动程序。网络协议部分负责实现每一种可能的 网络传输协议。网络设备驱动程序负责与硬件设备通讯,每一种可能的硬件设备 都有相应的设备驱动程序。 5 进程间通讯( i p c ) 支持进程问各种通信机制。 处于中心位置的进程调度,所有其它的子系统都依赖它,因为每个子系统都 需要挂起或恢复进程。一般情况下,当一个进程等待硬件操作完成时,它被挂起; 当操作真正完成时,进程被恢复执行。例如,当一个进程通过网络发送一条消息 时,网络接口需要挂起发送进程,直到硬件成功地完成消息的发送,当消息被成 a 东北大学硕士学位论文 第二章嵌入式l i n u x 系统开发 功的发送出去以后,网络接口给进程返回一个代码,表示操作的成功或失败。其 他子系统以相似的理由依赖于进程调度。 各个子系统之间的依赖关系如下: 进程调度与内存管理之间的关系:这两个子系统互相依赖。在多道程序环境 下,程序要运行必须为之创建进程,而创建进程的第一件事情,就是将程序和数 据装入内存。 进程间通信与内存管理的关系:进程间通信子系统要依赖内存管理支持共享 内存通信机制,这种机制允许两个进程除了拥有自己的私有空间,还可以存取共 同的内存区域。 虚拟文件系统与网络接口之间的关系:虚拟文件系统利用网络接口支持网络 文件系统( n f s ) ,也利用内存管理支持r a m d i s k 设备。 内存管理与虚拟文件系统之间的关系:内存管理利用虚拟文件系统支持交 换,交换进程( s w a p d ) 定期由调度程序调度,这也是内存管理依赖于进程调度的唯 一原因。当一个进程存取的内存映射被换出时,内存管理向文件系统发出请求, 同时,挂起当前正在运行的进程。 除了这些依赖关系外,内核中的所有子系统还要依赖于一些共同的资源。这 些资源包括所有子系统都用到的过程。例如:分配和释放内存空间的过程,打印 警告或错误信息的过程,还有系统的调试例程等等。 2 2 3 系统数据结构 在l i n u x 的内核的实现中,有一些数据结构使用频度较高,它们分别是: 1 t a s k s t r u c t l i n u x 内核利用一个数据结构( t a s ks t r u c t ) 代表一个进程,代表进程的数据 结构指针形成了一个t a s k 数组( l i n u x 中,任务和进程是相同的术语) ,这种指针数 组有时也称为指针向量。这个数组的大小由n rt a s k s ( 默认为5 1 2 ) ,表明l i n u x 系统中最多能同时运行的进程数目。当建立新进程的时候,l i n u x 为新进程分配 一个t a s ks t r u c t 结构,然后将指针保存在t a s k 数组中。调度程序一直维护着一个 c u r r e n t 指针,他指向当前正在运行的进程。 2 m m s t r u c t 每个进程的虚拟内存由一个m ms t r e e t 结构来代表,该结构实际上包含了当 前执行映像的有关信息,并且包含了一组指向v ma r e as t r u c t 结构的指针, v ma r e as t r u c t 结构描述了虚拟内存的一个区域。 3 i n o d e 东北大学硕士学位论文第二章嵌入式l i n u x 系统开发 虚拟文件系统( v f s ) 中的文件、目录等均由对应的索引节点( i n o d e ) 代表。每 个v f s 索引节点中的内容由文件系统专属的例程提供。v f s 索引节点只存在于内 核内存中,实际保存于v f s 的索引节点高速缓存中。如果两个进程用相同的进程 打开,则可以共享i n o d e 的数据结构,这种共享是通过两个进程中数据块指向相 同的i n o d e 完成。l i n u x 的具体结构是指系统实现的结构。 l i n u x 的具体结构类似于抽象结构,这种对应性是因为抽象结构来源于具体 结构,我们的划分没有严格依照源代码的目录结构,且和子系统的分组也不完全 匹配,但是,它很接近源代码的目录结构。 2 2 4 子系统结构 2 2 4 1 进程调度 进程执行操作系统中的任务,进程调度控制进程对c p u 的访问。当需要选择 下一个进程运行时,由调度

温馨提示

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

评论

0/150

提交评论