




已阅读5页,还剩54页未读, 继续免费阅读
(控制理论与控制工程专业论文)工业控制中实时嵌入式系统的研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
华中科技大学硕士学位论文 摘要 j f 随着电子、通信和计算机技术的发展,芯片集成度越来越高,嵌入式设备的功 能日益强力巧。传统的单片机已经不能满足工业控制的需要,因此嵌入式系统应运而 生。 本文以作者曾经参与过的裁剪并实现基于r t a i 的实时操作系统,以及开发过的 便携式循检终端软件为背景,综合考虑工业控制的特点,结合长期的嵌入式系统的 应用开发的实践经验展开论述。 首先介绍嵌入式系统及其在国内外的发展,以及在工业控制中的应用:其次介 绍了嵌入式实时操作系统,重点分析了嵌入式l i n u x 的实时性能的扩充,并在实时 性能方面与其它嵌入式实时操作系统进行了比较。 接着介绍了作者所从事的工程实践方面的内容:第一个工程项目是根据武汉某 电力公司的应用背景裁剪并实现了一个基于r t a i 的实时操作系统,并根据实时控制 的要求进行了实时性测试,结果满足该项目的应用要求。以另一个工程项目便携式 循检终端为背景,提出一个完整的嵌入式系统解决方案:从硬件平台的选择,嵌入 式操作系统实时性、稳定性、可靠性的考虑,到g u i 和通信功能的选择逐步展开论 述,并在应用软件部分实现了控制、通信、图形三大功能模块;在给出仿真例子的 同时,还对整个系统的实现进行了性能上的分析,并考虑了应用程序的跨平台移植。 最后叙述了在目前的工业控制中,嵌入式系统能够在哪些层次和哪些功能上替 换现有的设备或者节点,并讨论了嵌入式系统的联网和通信功能:展望了嵌入式系 统在工业控制中的应用前景及有待于进一步完善的方面和今后发展的方向。 本文详细地叙述了完整嵌入式系统的具体实现,及它们在工业控制中的网络互 联,对于在工业控制中应用的嵌入式系统的研究和构造有一定的指导作用。 关键词:嵌入式系统;微处理器;实时操作系统;g u i ;r t a i 、, 一。、。 ,一 - 卜 华中科技大学硕士学位论文 a b s t r a c t w i t ht h ed e v e l o p m e n to fe l e c t r o n i c s 、c o m m u n i c a t i o n c o m p u t e rt e c h n o l o g y , t h e i n t e g r a t i o no fc h i p si sm o r ea n dm o r eh i 曲e r , w h i l et h ef u n c t i o no fe m b e d d e dd e v i c ei s i n c r e a s i n g j yp o w e r f u l s i n c e t h et r a d i t i o n a l s i n g l ec h i p c a l l tm e e tt h ee x a c tn e e d d e m a n d e db yt h em o d e r ni n d u s t r i a lc o n t r o l ,an e ws o l u t i o nn a m e de m b e d d e ds y s t e mi s p r o p o s e d t oc o p ew i t ht h e p r o b l e m t l l i st h e s i si sb a s e do nt h ea u t h o r se x p e r i e n c ea n dk n o w l e d g eo b t a i n e df r o mt w o p r o j e c t st h a tt h ea u t h o rc o o p e r a t e dt od e s i g na n dr e a l i z e t h ef i r s tk n o w l e d g e c o m e sf r o m t h e t a i l o r e dr t o sb a s e do nr t a i , a n dt h eo t h e rc o m e sf r o mi n t e r n a l a p p l i c a t i o n so f p o r t a b l ee m b e d d e dt e r m i n a l 1 1 l et h e s i si sf u r t h e re x t e n d e dt oaf u l ld e t a i lc o m b i n i n g t h e l o n g - t e r mp r a c t i c a le x p e r i e n c ef r o m t h ea p p l i c a t i o na n d d e v e l o p m e n t o ne m b e d d e d s y s t e m , w i t ht h ec o n s i d e r a t i o no ft h es p e c i f i cc h a r a c t e r i s t i c so fi n d u s t r i a lc o n t r 0 1 t h et h e s i sb e g i n sw i t ha no v e r v i e wo ft h ed e v e l o p m e n to fe m b e d d e ds y s t e mi nt h e w o r l da n dt h ea p p l i c a t i o no fi ti nt h ei n d u s t r i a lc o n t r 0 1 n e x tt h ea u t h o ri n t r o d u c e st h e e m b e d d e dr e a l t i m eo p e r a t i n gs y s t e m ,f o c u s i n go nt h er e a l t i m ee x t e n s i o no fe m b e d d e d l i n u xa n dt h ec o m p a r ew i t ho t h e re m b e d d e dr t o s t ob ec o n t i n u e dw i t h ,t w op r o j e c t st h a tt h ea u t h o ra t t e n d e da r ed i s c u s s e di n t of u i i d e t a i l s f i r s t ,ar t o sb a s e do nr i :mw a st a i l o r e df o rt h ea p p l i c a t i o nn e e db yw u h a n e l e c t r i cp o w e r c o m p a n y , a n df u r t h e rt e s t e dt om e e tt h er e q u i r e m e n to nc r i t i c a lr e a l - t i m e c o n t r 0 1 s e c o n d ,w ep r o p o s e dac o m p l e t es o l u t i o nf o rp o r t a b l ee m b e d d e dt e r m i n a la n d r e a l i z e dt h ec o r r e s p o n d i n gs o f t w a r ep a r t s ,i n c l u d i n gs e l e c t i o no fh a r d w a r ep l a t f o r m ,t h e r e a l t i m e p e r f o r m a n c e 、s t a b i l i t y 、r e l i a b i l i t y o fe m b e d d e do p e r a t i n gs y s t e m ,g u ia n d c o m m u n i c a t i o n i n t e r n e t a p p l i c a t i o n si n c l u d i n gc o n t r o l 、c o m m u n i c a t i o n 、g r a p h i c a l i n t e r f a c ea r er e a l i z e d w h i l ead e m oi sp r o v i d e d t h ep e r f o r m a n c eo ft h ew h o l e s y s t e mi s a n a l y z e d ,a n d t h e t r a n s p l a n ta m o n gm u l t i p l eo p e r a t i n gs y s t e m s i sd i s c u s s e d i nt h ee n d ,t h ec o n c l u s i o ni st h a te m b e d d e d s y s t e m c a ns e r v ea st h es u b s t i t u t eo ft h e d e v i c e s c u r r e n t l yu s e d i ni n d u s t r i a lc o n t r 0 1 n e c a p a b i l i t y o fi n t e r n e t a c c e s s i n g i n e m b e d d e ds y s t e mi sd i s c u s s e d t h ef u t u r ea p p l i c a t i o no fe m b e d d e d s y s t e mi ni n d u s t r i a l c o n t r o li sp r o s p e c t e d t l l i st h e s i s p r o v i d e su sw i t haf u l ld e s c r i p t i o n o nt h er e a l i z a t i o no ft h ew h o l e e m b e d d e d s y s t e m sa n dt h e i ri n t e r c o n n e c t i o nw i t ht h ec u r r e n ti n d u s t r i a ln e t w o r k i tw i l lb e o fg u i d a n c ei nt h ef u r t h e rr e s e a r c ha n d d e v e l o p m e n ti nt h ee m b e d d e ds y s t e mu s e di nt h e i n d u s t r i a lc o n t r 0 1 k e y w o r d s :e m b e d d e d s y s t e m ;m i c r o p r o c e s s o r ;r e a l - t i m eo p e r a t i n gs y s t e m ;g u i ; r t a i 华中科技大学硕士学位论文 1 1 嵌入式系统的概述 1绪论 1 1 1嵌入式系统的发展趋势:过去、现在和未来 嵌入式系统( e m b e d d e ds y s t e m ) 被定义为:以应用为中心、以计算机技术为基 础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求 的专用计算机系统。它主要由嵌入式微处理器、外围硬件设备、嵌入式操作系统以 及用户应用软件等部分组成,用于实现对其他设备的控制、监视和管理等功能【1 】 2 1 【3 1 0 嵌入式系统是将先进的计算机技术、半导体技术和电子技术和各个行业的具体 应用相结合后的产物【4 】a 综观嵌入式技术的发展,大致经历了以下四个阶段【1 】【5 】: 第一阶段是无操作系统的嵌入算法阶段,是以单芯片为核心的可编程控制器形 式的系统,同时具有与监测、伺服、指示设备相配合的功能。这种系统大部分应用 于一些专业性极强的工业控制系统中,一般没有操作系统的支持,通过汇编语言编 程对系统进行直接控制,运行结束后清除内存。这一阶段系统的主要特点是:系统 结构和功能都相对单一,处理效率较低,存储容量较小,几乎没有用户接口,比较 适合于各类专用领域中。由于这种嵌入式系统使用简便、价格很低,以前在国内工 业领域应用较为普遍,但是已经远远不能适应高效的、需要大容量存储介质的现代 化工业控制和新兴的信息家电等领域的需求。 第二阶段是以嵌入式c p u 为基础、以简单操作系统为核心的嵌入式系统。这一 阶段系统的主要特点是:c p u 种类繁多,通用性比较差;系统开销小,效率高;一 般配备系统仿真器,操作系统具有一定的兼容性和扩展性;应用软件较专业,用户 界面:f 够友好;系统主要用来控制系统负载以及监控应用程序运行。 第三阶段是通用的嵌入式实时操作系统阶段,是以嵌入式操作系统为核心的嵌 入式系统。这阶段系统的主要特点是:嵌入式操作系统能运行于各种不同类型的 微处理器上,兼容性好;操作系统内核精小、效率高,并且具有高度的模块化和扩 展性;具备文件和目录管理、设备支持、多任务、网络支持、图形窗口以及用户界 面等功能;具有大量的应用程序接口( a p i ) ,开发应用程序简单:嵌入式应用软件丰 富。 华中科技大学硕士学位论文 第四阶段是以芯片技术和基于i n t e m e t 为标志的嵌入式系统,这是一个正在迅速 发展的阶段。目前大多数嵌入式系统还孤立于i n t e m e t 之外,但随着i n t e r a c t 的发展 以及i n t e m e t 技术与信息家电、工业控制技术等结合日益密切,嵌入式设备与i n t e r n e t 的结合将代表着嵌入式技术的真正未来,并推动嵌入式技术的快速发展。 近几年嵌入式系统的技术发展有了以下显著的变化f 6 】1 7 】:( 1 ) 新的处理器功能越来 越强:( 2 ) 各种嵌入式l i n u x 操作系统正迅速发展,它具有开放源码、系统内核小、 效率高、内核网络结构完整等特点,裁剪后的系统很适于嵌入式系统的开发:( 3 ) 面 向定制趋势,在系统级整合改造并支持应用特制的性能,将操作系统的功能和内存 需求定制成每个应用所需的系统,这同时也对嵌入式系统的设计提出了挑战,如基 于微内核设计,功能插件( p l u g i n ) 支撑技术和协议可插拔技术,在此基础上来实现从 简单的单个独立设备到复杂的、网络化的、多处理器的嵌入式系统;( 4 ) 嵌入式系统 的多媒体化和网络化方向趋势,特别是与i n t e m e t 和无线网络的结合:( 5 ) 基于知识的 嵌入式系统也已开始出现。 1 2 嵌入式系统的软硬件组成及其系统构架 1 2 1 嵌入式系统的特点 纵观嵌入式系统的发展及其在各种领域的应用,可归纳出以下一些特点8 】【9 】: 1 、嵌入式系统是集软件硬件于一体的资源开销小、离性能价格比、高可靠性系 统【1 0 l 。软件方面除操作系统外,还需有完成嵌入式系统功能的应用软件;硬件方面 除了c p u 外,还需有外围电路支持,微控制器、d s p ,它们已经构成了嵌入式系统 硬件的基础。 2 、嵌入式系统软硬件结合紧密。通用计算机出于可扩展等要求更强调系统的模 块化、层次化和标准化;而在嵌入式系统软硬件体系结构内部,各层次、模块之间 的耦合度比通用计算机强,这是嵌入式系统要求高效的结果。 3 、嵌入式系统一般是实时系统,因为在嵌入式应用中很多是属于过程控制或者 通讯领域,这些领域要求的实时性很强,实时系统中的嵌入式操作系统必须是嵌入 式实时操作系统。 4 、嵌入式系统与外界的接口设备都是针对具体应用的设备,往往具有特殊性。 2 华中科技大学硕士学位论文 不同应用领域之间差别很大,不同系列的c p u 在体积、外中断源、支持的总线结构 等方面不同。 5 、嵌入式系统开发采用独特的宿主机目标机模式、在这个环境下调试好目 标机的硬件和软件,才能使目标机( 最终的嵌入式系统) 脱离开发环境,独立运行。 1 2 2 嵌入式系统的硬件平台 嵌入式系统的硬件平台包括【1 l l :微处理器、f o 硬件、存储器、外围电路,嵌入 式系统的核心是嵌入式微处理器【8 1 a 嵌入式微处理器一般具备4 个特点:( 1 ) 对实时 和多任务有很强的支持能力,能完成多任务并且有较短的中断响应时间,从而使内 部的代码和实时操作系统的执行时间减少到最低限度;( 2 ) 具有功能很强的存储区保 护功能,这是由于嵌入式系统的软件结构已模块化,为了避免在软件模块之间出现 错误的交叉作用,需要设计强大的存储区保护功能,同时也有利于软件诊断;( 3 ) 具 有丰富的功能和良好的可扩展性,以能迅速地扩展出满足应用的高性能的嵌入式微 处理器;“) 嵌入式微处理器的功耗必须很低,尤其是用于便携式的无线及移动的计 算和通信设备中靠电池供电的嵌入式系统更是如此。 1 2 3 嵌入式系统的软件构成 嵌入式系统的软件包括操作系统和应用软件。 操作系统是嵌入式系统的灵魂。嵌入式操作系统是一种支持嵌入式系统应用的 操作系统软件【5 1 1 1 2 1 ,可以分为两类,一类是面向控制、通信等领域的实时操作系统; 另类是面向消费电子产品的非实时操作系统。它通常包括与硬件相关的底层驱动 软件、系统内核、设备驱动接口、通信协议、图形界面、标准化浏览器等。嵌入式 操作系统具有通用操作系统的基本特点,如能够有效管理越来越复杂的系统资源; 能够把硬件虚拟化,使得开发人员从繁忙的驱动程序移植和维护中解脱出来:能够 提供库函数、驱动程序、工具集以及应用程序。与通用操作系统相比较,嵌入式操 作系统在系统小巧、可装卸、实时高效性、硬件的相关依赖性、软件固化弱交互性、 强稳健性、统一接口以及应用的专用性等方面具有较为突出的特点【1 3 】。 嵌入式系统的应用软件是实现嵌入式系统功能的关键,对嵌入式系统应用软件 的要求也和通用计算机有所不同。1 、软件要求固态化存储:为了提高执行速度和系 3 华中科技大学硕士学位论文 统可靠性,嵌入式系统中的软件一般都固化在存储器芯片中。2 、要求软件代码高质 量、高可靠性:尽管半导体技术的发展使处理器速度不断提高、片上存储器容量不 断增加,但在大多数应用中,存储空间仍然是宝贵的,还存在实时性的要求。为此 要求程序编写和编译工具的质量要高,以减少程序二进制代码长度、提高执行速度。 3 、一般嵌入式系统的应用软件都是针对行业应用的,其专业性和专用性都比较强。 1 3 嵌入式系统的应用领域及其在工业控制中的应用 在嵌入式系统领域,国际市场发展迅速,技术和市场也日趋成熟,中国市场增 长很快,而且潜力巨大【1 4 1 。嵌入式系统可应用于家电市场、工业市场、商业市场、 通讯市场和国防市场,应用的产品形态丰富多样,如掌上电脑、机顶盒、数字电视、 数字音像设备、手机、可视电话、车载智能设备、数控机床、商业终端、教育终端、 智能控制设备等,而工业控制是嵌入式系统重要的应用领域。 工业控制系统历经了四个阶段:模拟仪表控制系统阶段、集中式数字控制系统 阶段、集散控制系统阶段和现场总线控制系统阶段。这四个阶段也就是从模拟信号 传输到数字信号传输、从集中控制到分散控制、从封闭性到开放性的演变过程。 随着计算机、通信、自动控制、微电子等技术的发展,大量智能控制芯片和智 能传感器的不断出现,并随着在传感器、通信和计算机领域所取得的巨大成就以及 计算机技术和网络通信技术的发展,使对信息的高速处理和传输成为现实。同时应 用对象的扩大、控制系统的日益复杂,控制性能指标日益升高,使人们对工业控制 系统的综合性能尤其是其安全性和可靠性提出了许多新的要求:希望能对整个控制 系统的运行状况实时控制和实时监测,对设备的工作状态进行实时监测和实时管理, 并在此基础上实现设备的智能维护( s m a r tm a i n t e n a n c e ) 1 5 1 对企业自动化的设备而 言,对其工作状况进行远程监测和控制,不仅可以方便设备管理者随时了解设备的 工作状态,设备出现异常时主动报警,便于及时维修,而且还可以拓宽设备的服务 范围,提高工作性能,延长使用寿命,达到实时数据的采集,快速进程( 线程) 调度, 数据实时分析和处理,报警监视,良好的容错性的目的;同时底层设备和网络能够 给上层的管理者提供的控制信息和实时运行数据,用于管理和决策。这些耳标的实 现除了对控制网络的开放性和分布性提出了一定的要求外,还对各种控制节点和控 4 华中科技大学硕士学位论文 制设备提出了更高的要求。 嵌入式系统的微处理器可采用高性能、商可靠性、低功耗微处理器芯片,使其 对实时控制具有较强的响应能力;同时它的良好的扩展性能够支持多种应用接口和 通信方式。操作系统可采用成熟的嵌入式实时操作系统,实现多任务并发,对重要 性各不相同的任务进行统筹兼顾的合理调度,实时中断响应,达到实时控制的目的。 因此包含高性能微处理器和成熟的嵌入式实时操作系统的嵌入式系统无疑可以满足 以上各个方面的要求。 目前被称为开放式、数字化、多节点通讯的底层控制网络的现场总线技术被逐 渐应用到工业控制中去了,基于现场总线实现实时多任务操作系统方案时,需要连 接智能化、通讯功能更强、处理和采集数据更强的控制节点。采用特定的微处理器 运行实时操作系统的嵌入式系统,可以在实时数据采集、数据处理和数据传输等各 个方面满足工业控制的要求。 1 4 课题的背景及研究的意义 本文的课题基于两个工程项目进行研究:一是武汉某电力公司对实时操作系统 的需求;二是基于工业监控系统及移动化要求实现一个便携式巡检终端。武汉某电 力公司是提供电力设备的中小型公司,根据电力系统控制的要求,需要在现场的控 制设备中内嵌实时操作系统,以达到实时控制的目的。便携式巡检终端是一个完整 的嵌入式系统的实现方案,它需要从硬件平台、操作系统、图形界面、通信软件、 应用软件等各个层次及与控制系统有关的各个方面上来考虑其实现问题。 实时操作系统的实现及嵌入式系统整体方案的提出和实现都是嵌入式系统应用 于工业控制领域较前沿的课题,因为它们涉及到微处理器、操作系统、网络通信、 工业控制领域的专业知识等各方面的内容,深入的研究并且加以实现将有助于提高 我们知识的广度和深度,同时对于开发其它类似的工业控制产品和实现相关的技术 具有一定的指导意义。 5 华中科技大学硕士学位论文 2 嵌入式操作系统的实时性分析 2 1分时操作系统和实时操作系统 分时操作系统【1 6 l 大部分都支持多用户和多进程,负责管理众多的进程并为它们 分配系统资源。分时操作系统的基本设计原则是:尽量缩短系统的平均响应时间并 提高系统的吞吐率,在单位时间内为尽可能多的用户请求提供服务。由此可以看出, 分时操作系统注重平均表现性能,不注重个体表现性能。如对于整个系统来说注 重所有任务的平均响应时间而不关心单个任务的响应时间,对于某个单个任务来说, 注重每次执行的平均响应时间而不关心某次特定执行的响应时间。分时操作系统中 采用的很多策略和技巧都体现出了这种设计原则,如虚存管理机制中由于采用了 l r u ( 最近最少使用算法) 等页替换算法,使得大部分的访存需求能够快速地通过 物理内存完成,只有很小一部分的访存需求需要通过调页完成。从总体上来看,使 用虚薛技术后,虽然平均访存时间与不采用虚存技术相比没有很大的提高,但是获 得了虚空间可以远大于物理内存容量等好处,因此虚存技术在通用操作系统中得到 了十分广泛的应用。 而对于实时操作系统f l “,它除了要满足应用的功能需求以外,更重要的是还要 满足应用提出的实时性要求,而组成一个应用的众多实时任务对于实时性的要求是 各不相同的,此外实时任务之间可能还会有一些复杂的关联和同步关系,如执行顺 序限制、共享资源的互斥访问要求等,这就为系统实时性的保证带来了很大的困难。 因此,实时操作系统所遵循的最重要的设计原则是:采用各种算法和策略,始终保 证系统行为的可预测性( p r e d i c t a b i l i t y ) 。可预测性是指在系统运行的任何时刻,在任 何情况下,实时操作系统的资源调配策略都能为争夺资源( 包括c p u 、内存等) 的多个 实时任务合理地分配资源,使每个实时任务的实时性要求都能得到满足。与分时操 作系统不同,实时操作系统注重的不是系统的平均表现,而是要求每个实时任务在 最坏情况下都要满足其实时性要求,也就是说,实时操作系统注重的是个体表现, 更准确地讲是个体最坏情况表现。举例来说,如果实时操作系统采用标准的虚存技 术,则个实时任务执行的最坏情况是每次访存都需要调页,如此累计起来的该任 6 华中科技大学硕士学位论文 务在最坏情况下的运行时间是不可预测的,因此该任务的实时性无法得到保证。从而 可以看出在通用操作系统中广泛采用的虚存技术在实时操作系统中不宜直接采用。 2 2 嵌入式操作系统的实时性分析 工业控制中的一个关键的问题是控制的实时性。所谓实时性是指能够在限定时 间内执行完规定的功能,并对外部的异步事件做出反应的能力。实时系统要求所有 具有实时性要求的任务在规定的时间内完成,例如现场的数据采集,电力监控与管 理,航天器的飞行控制等,嵌入式系统在软件的控制下通过硬件高速地获取数据, 并进行处理,产生相应的反应。设计实时系统有两个相对的目标:一是保证严格的 关键时间截止值;二是充分有效地利用各种资源,并能较好地容错。实时性的强弱 以完成规定功能和作出响应时间的长短来衡量。 实时对于计算机系统而言意味着不但要求逻辑结果正确,而且有时间的要求, 即这个结果必须产生于截止期限之前。对于实时而言,时间期限的要求是必须得到 满足的,但是区分具体应用场合,这种要求的严格程度又有所不同。如果这种要求 是绝对的,任何一次不满足就能造成灾难性后果,那就称之为强实时;否则,偶尔 的不满足并不足以造成严重后果,是可以接受的,则称为弱实时【1 7 1 。 提高硬件性能可以在一定程度上提高计算机系统的实时性,但是当硬件条件确 定之后,一个实时系统的性能主要是由操作系统来决定。关于操作系统的实时性, 可以从以下几个原则来考虑:操作系统必须支持多线程和抢占式多任务:支持线程 的优先级调度;支持线程的可预测同步机制;线程的优先级可以继承;操作系统的 运行状态( 如中断延迟、任务切换以及驱动程序延迟等) 可知并可以预测。这意味 着在满负载的情况下,系统的最大响应时间可以获得【1 8 】。 2 3 嵌入式l i n u x 本身的特性及其实时性分析 2 3 1 l i n u x 本身的特点和在实时应用方面的不足 l i n u x 已逐渐成为世界上使用最广泛的操作系统之一,从网络服务器、桌面p c 到各种嵌入式设备。由于良好的可移植性,它同时具有若干种硬件平台上的运行版 本,目前的内核支持x 8 6 ,s t r o n ga n n ,p o w e r p c ,a l p h a 等处理器体系结构,然而 7 华中科技大学硕士学位论文 在实时方面还不能够很好满足有实时需求的系统。l i n u x 本身对实时的支持情况如 下:p o s i x 实时扩展部分逐渐被添加进来,引入了实时进程的概念,允许将一个进 程的属性确定为实时进程。l i n u x 区分实时进程和普通进程,采用不同的调度策略。 对实时进程,l i n u x 提供两种简单的调度策略。即先来先服务调度( s c h e df i f o ) 和时间片轮转调度( s c i - 1 e dr r ) 。s c h e d _ f i f o 适合于时间性要求比较强、但是每 次运 亍所需的时间比较短的进程,大多数实时应用其有这样的特点;s c h e dr r 适 合每次运行时间比较长的进程。在s c h e d _ r r 调度中,任务一旦时间片用完就被移 动到优先级队列的队尾,并允许同一优先级的其它任务运行。如果同一优先级没有 其它任务,该任务将继续运行下一个时间片。s c h e d f o 是运行直至阻塞的策略, s c h e df i f o 任务按优先级调度,一旦开始就一直运行到结束或者阻塞在某种资源 上,:不像s c h e d任务那样共享处理器。对普通进程,采用类的动态_rrl i n u xu n i x 优先级调度即s c h e d 策略,以高的吞吐量和公平性为追求目标,基本没有_other 考虑实时应用所应满足的时间约束,很多方面无法满足实时系统的要求【1 9 1 。 有以下一些因素制约了l i n u x 在实时方面的应用【1 8 j1 2 0 1 : l 、l i n u x 的核心不可抢先 l i n u x 下分用户态和核心态两种模式,当进程运行在用户态时,可被优先级更高 的进程抢占。但当它进入核心态时( 比如通过系统调用) ,则其它用户态进程优先级再 高( 包括实时进程) 也不能抢占它。由于l i n u x 操作系统在内核级是不可抢占的,对于 非实时系统可以带来更多方便,但对于实时系统则造成任务切换延迟的不确定性。 2 、进程同步与互斥问题 l i n u x 采用了信号灯的方法来保证进程的同步与互斥,由于频繁的信号加锁及解 锁操作会有较长间隔,影响系统的整体性能,因此系统的最坏情况下的性能较差, 往往无法满足许多硬实时应用的要求。 3 、关中断的问题【1 9 1 在l i n u x 的中断管理中,将中断处理分为两个部分,分别称为“顶半处理”和 “底半处理”,在“顶半处理”中,必须关中断运行,进行非常少、非常快的处理, 其他的处理交由“底半处理”处理。在“底半处理”中,执行剩余的多数工作,并 且是f f 中断运行,所以运行时,可以接受新的中断。在l i n u x 系统中,因为有许多 8 华中科技大学硕士学位论文 中断的“底半处理”,这些“底半处理”形成一个任务队列,由l i n u x 调度管理。 在这样的中断机制下,因为“底半处理”队列的调度,所以会引起中断处理的延时。 此外,l i n u x 中的中断可以被系统屏蔽,所以即使是优先级很高的硬件中断也会因为 被系统屏蔽而引起中断响应的丢失或者延时。 同时在系统调用中,为了保护临界区资源,l i n u x 会长时间关掉中断,有些系统 调用的时间还很长,这样会加大中断延迟时间,阻塞高优先级的中断立即被处理, 在实时应用中,这是一个十分严重的问题。 5 、内存上锁的问题 l i n u x 采用了虚拟内存管理技术,进程运行所需的内存常常会被换入换出磁盘, 非常耗时,实时应用有时需要把关键进程锁在内存中,不被换出,而标准的l i n u x 无法满足这种要求。 6 、其他问题 左l i n u x 中,还有另外许多原因可导致实时进程阻塞,所以无法确保实时进程 的响应时间:短时间内频繁的中断发生也可导致中断延迟不可控制;优先级反转的 现象使高优先级的实时进程可被低优先级的普通进程阻塞;缺少细粒度和多模式的 定时器,l i n u x 的周期模式定时器频率仅为l o o i - i z ,远不能满足多种实时应用的需要。 因此l i n u x 本身在实时支持方面已做的努力可以在粗粒度的软实时方面有一定的 应用范围,然而在l i n u x 操作系统中,内核不可抢占、进程的调度算法( 基于最大吞吐 量准则) 、设备驱动、中断屏蔽以及虚拟内存的使用等因素,都会导致系统在时间上的 不可预测性,决定了l i n u x 操作系统不能处理硬实时任务、远不能满足硬实时应用。 2 4 目前基于l i n u x 的一些实时操作系统的实现及其特性 近年人们对l i n u x 内核的实时改造提出了一些方案和设想,它们采用了不同的 思路和技术方案,各有优劣。 l 、r t lj d u x 1 7 1 1 2 1 1 2 2 1 r t l i n u x 将l i n u x 内核设计为可被抢占的,实现硬实时,主要方法是实现一个 实时内核负责处理硬件中断,分割l i n u x 系统与硬件中断之间的直接联系。实时任 务可在该内核上直接运行。把l i f l u x 内核本身作为优先级最低的任务运行。该实时 一_-_-_-_-_-_-一 9 华中科技大学硕士学位论文 内核有自己的基于优先级的调度算法,l i n u x 内核随时可以被优先级更高的实时任务 抢占。实时任务与l i n u x 进程之间通过特定的通信机制( 如f i f 0 管道) 进行通信。运 行在l i n u x 内核之上的进程则可以完成一些非实时功能。当r t l i n u x 实时内核接收 到与实时处理有关的硬件中断时,立即启动执行相应的实时中断服务程序;而接收 到与实时处理无关的中断时,先保存相应的信息,等到r t l i n u x 内核空闲时通过软 中断传递给l i n u x 内核去处理,这样就使得r t - l i n u x 内核不受各种软、硬件中断的 影响,不会造成时间上的不可预测性。同时又区别于其他的实时处理方案,它并未 对操作系统的内核作结构性的修改,因此并不会妨碍l i n u x 操作系统的进一步发展 和变化。同时它提供了细粒度的时钟中断机制和实时调度算法。 2 、r t a i 2 a r t a i ( r e a lt i m ea p p l i c a t i o ni n t e r f a c e ) 的方法与r t - l i n u x 类似,明显的不同之处 在于它定义了一组r t h a i ( r e a l t i m eh a r d w a r ea b s t r a c t i o nl a y e r ) 。r t h a i 将r t a i 需要 在l i n u x 中修改的部分定义成一组程序界面,r t a l 只使用这组界面和l i n u x 沟通。 这样可以把对内核源码的改动降低到可以控制的程度,其优点是可以避免r t l i n u x 对内核源码改动过大的问题,减少移植新版l i n u x 的工作量。 由于r t a i 无法直接使用l i n u x 的系统调用,解决的方法是使用r t - f i f o 将 一个r t a i 实时内核模块和真正的l i n u x 进程连接在一起,由这个进程做代理人的 工作为其进行l i n u x 系统调用,图2 1 说明了这种实时内核方案的主要技术特点。 图2 1 基于r t a i 的实时操作系统的原理图 l o 华中科技大学硕士学位论文 3 、r e d _ 一l i n u x 旧 与上述的可抢占内核不同,r e d l i n u x 通过直接修改l i n u x 内核源码。将内核中 较长的例程剖分为较小的代码块。即在代码中增加抢占点( p r e e m p t i o np o i n t ) ,导 致内核在抢占点可以被抢占,通过这种方式可以减小内核抢占延迟。另外,r e d l i n u x 的调度架构使得r e d - l i n u x 可以符合多种不同复杂度系统的调度需求。基本上,它 分成调度器( d i s p a t c h e r ) 和分配器( a l l o c a t o r ) 两部分,分配器在用户态执行而调度 器在内核态执行。分配器可以是中间件的一部分,负责将应用程序的资源请求转换 成内核可以理解的形式。调度器作为一个内核模块存在,可被动态加载,由它来最 终决定进程的执行顺序。r e d l i n u x 由于内核不可抢占而只能作为一种软实时方案。 4 、k u r t 1 7 1 k u r t ( k a n s a su n i v e r s i t yr e a lt i m eo s ) 对l i n u x 核心做了如下两点改动: ( 1 ) 修改了时钟中断机制,在以x 8 6 为处理器的p c 上,系统时钟可以提供的最 高频率超过了1 m h z ,但l i n u x 通过对它的编程,将时钟频率设定为i o o h z ,即时钟 中断间隔为l o m s 。对于实时操作系统而言,这种时钟粒度太粗,无法满足实时响应 的需求。如何解决这个问题呢? 最容易想到的莫过于提高时钟频率了。然而简单地 提高时钟频率意味着时钟中断的相应处理过程将占用更多的处理器时间,从而使得 整个系统的有效利用率急剧下降,所以这不是一个好办法。k u r t 的办法非常巧妙, 它改变了时钟中断的固定频率模式,通过重新设定使得时钟得以us 为单位在任何 需要的时候产生中断。这样,既保证了响应时间,又避免了不必要的开销。 ( 2 ) 增加了新的实时调度模块。k u r t 核心可以有3 种调度状态:正常态、实时态 及混合态。当处于正常态时,k u r t 核心的进程调度机制与常规l i n u x 核心无异;实 时态时则只有k u r t 实时进程可以被调度;混合态是二者的折衷:当没有实时任务可 以被调度时将允许一般进程被调度。表面看来混合态似乎也能保证实时任务被优先 调度,但是由于此时核心不可切换的性质依然没有改变,所有一个运行中的一般任 务- - d _ 进入核心,则很可能妨碍实时任务的及时调度,所以混合态对于系统的实时 性引入了很大的风险。 k u r t 获得了较强的实时性能,但是,k u r t 并没有对核心做过多的改动,l i n u x 的核心仍然是非抢占式的,所以这个操作系统实质上依然是弱实时操作系统。 华中科技大学硕士学位论文 3 实时嵌入式l i n u x 操作系统的实现 基于标准l i n u x 的特点,可以针对以下几个方面对l i n u x 进行实盱陛扩展,以 满足实时的需要。 l 、调度策略和优先级队列 对于实时操作系统来说,多任务和任务抢占是基本的功能【2 4 】。使普通进程的优 先级比系统进程优先级低,而系统进程的优先级又比实时进程的优先级低,而实时 进程的调度方式改为用按优先级高低排序来调度,优先级最高的实时进程先抢占 c p u ,普通进程的调度方式则保持不变。队列管理上可采用多级优先级设置队列机制, 根据上述的优先级设置多个进程队列。内核调度进程时,总是从高优先级的队列中 选取进程,从而避免了单一队列由于f i f 0 规则带来的通信速度慢、缓冲溢出等问题。 2 、中断处理 实时操作系统应尽可能少地屏蔽中断以提高中断响应时间的可预测性。 3 、内存管理 为解决虚存管理给系统带来的不可预测性,实时操作系统可以采用固定内存划 分的方式,为每个实时任务划分固定的内存区域,这样可避免内存换入换出磁盘的 问题。在原有虚存管理机制的基础上增加页面锁功能,用户可将关键页面锁定在内 存中,从而不会被s w a p 程序将该页面交换出内存。这种方式的优点是既得到了虚存 管理机制为软件开发带来的好处,又提高了系统的可预测性【2 5 1 。 4 、使系统具有可重入性 盔通用操作系统中,核心态系统调用往往是不可重入的,当低优先级任务调用 核心级系统调用时,在该时间段内到达的高优先级任务必须等到低优先级的系统调 用完成才能获得c p u ,这就降低了系统的可预测性。因此,实时操作系统中的核心态 系统调用应该设计为可重入的。 3 1实现基于r 1 - a i 实时操作系统的课题背景及需求 武汉某电力公司希望有一套提供源码的实时操作系统,并在此基础上开发自己 的应用程序,用于电力设备方面的实时控制。他们对r t o s 的实现及其实验的测试 华中科技大学硕士学位论文 平台提出了如下的要求: l 、系统的硬件平台的构成及功能见图3 1 图3 1 系统的硬件平台构成 c p u 通过人机交互接口来获取实验参数、测试功能、测试条件等内容。界面显 示由l c d 显示屏来完成。通过键盘和鼠标完成参数的设置、测试功能的设置、界面 的切换等操作。 2 、系统软件平台的构成及其功能见图3 2 1人机交互程序 l图形引擎实时应用程序 l r t o s 1 j 文件系统li 设备驱动ii 图形驱动f i p c t 0 4 驱动 f iiii l硬件 图3 2 基于r t o s 的软件平台的构成 华中科技大学硕士学位论文 3 、对r t o s 的要求 ( 1 ) 可以灵活裁剪:在不需要特殊代码的情况下,对r t o s 进行裁剪,以便将r t o s 应用到对系统资源要求有限的嵌入式系统中。 f 2 1 可移植性强:嵌入式r t o s 能够支持多种c p u ,要求在r t o s 上开发的应用 程序、驱动程序、协议栈以及操作系统模块,可以在不同的c p u 之间移植,不作大 的改动。 ( 3 ) 具有高性能的内存保护机制,使得系统的安全性得到保障。 ( 4 ) r t o s 提供的实时性能必须是硬实时的。根据硬件回路的实时中断的要求, r t o s 在2 0 0 m 的m m x 嵌入式x 8 6 系统中的中断延时不超过1 0 9 s ,上下文切换时间 不超过1 0 z s 。 4 、对开发环境的要求 ( 1 ) 要求有可视化的界面开发工具,以提高界面开发的效率。 ( 2 ) 对于实时的应用程序的开发,开发工具应提供良好的编译环境和调试工具, 以提高实时程序的开发效率。 5 、对人机界面的要求 ( 1 ) 要求界面具有w i n d o w s 的风格 ( 2 ) 在实时程序运行时,系统能即时响应鼠标和键盘,画面切换流畅。 3 2 基于r t a i 开放源码的l i n u x 实时操作系统的原理 r t a i 的实现方案类型于r t l i n u x ,是双内核系统。即利用l i n u x 内核,同时 增加一个实时内核,两个内核共同工作。获得其他类型实时系统所不能达到的优势。 实时内核和分时通用内核( l i n u x 内核) 分别用来运行实时任务和非实时任务。这种设 计方法的优势就在于,实时应用可以利用非实时操作系统内核的一些特点来开发。 例如在我们开发的实时波形输出系统中,利用实时内核运行个实时任务通过并口 实时地发送数据,同时可以利用l i n u x 内核上运行的图形
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 课堂评价体系在中职英语口语教学中的构建
- 《上图书馆》课件
- 武汉市物业服务合同(标准版)
- 留疆工作申请报告(3篇)
- 房屋物理分割合同(标准版)
- 丽声瑞格课件
- 乡镇食药安全培训信息课件
- 2025年中国具身智能产业发展规划与场景应用洞察
- 2025年浙江省教育系统后备干部考试参考试题(含答案)
- 2025年妇幼考试及试题及答案
- 2025至2030中国矿山机械行业发展趋势分析与未来投资战略咨询研究报告
- 2025年乡镇文旅部门工作人员招聘考试必-备知识点与模拟题集
- 2025年法学硕士专业知识考试试卷及答案解析
- GB 26488-2025镁合金压铸安全生产规范
- 森林消防队森林火灾扑救知识培训考试题库题库(附含答案)
- 焦虑症的课件
- 湖南美术出版社二年级上册美术教学计划
- 2025年西藏自治区事业单位招聘考试综合类专业能力测试试卷(新闻类)押题卷
- VOCs治理设备培训
- 2025年招聘面试技巧指南面试官角度下的面试题预测与应对策略
- 答案时代:AI顾问式电商崛起
评论
0/150
提交评论