收藏 分享(赏)

多任务嵌入式实时控制系统软件的研究.doc

上传人:dreamzhangning 文档编号:2291182 上传时间:2018-09-09 格式:DOC 页数:97 大小:8.81MB
下载 相关 举报
多任务嵌入式实时控制系统软件的研究.doc_第1页
第1页 / 共97页
多任务嵌入式实时控制系统软件的研究.doc_第2页
第2页 / 共97页
多任务嵌入式实时控制系统软件的研究.doc_第3页
第3页 / 共97页
多任务嵌入式实时控制系统软件的研究.doc_第4页
第4页 / 共97页
多任务嵌入式实时控制系统软件的研究.doc_第5页
第5页 / 共97页
点击查看更多>>
资源描述

1、分类号 密级 UDC 学 位 论 文多任务嵌入式实时控制系统软件的研究作 者 姓 名 : 朱文强指 导 教 师 : 李小平 教授东北大学流程工业综合自动化国家重点实验室申请学 位级别: 硕士 学 科 类 别 :工学学科专业名称: 控 制 理 论 与 控 制 工 程论文提交日期: 2012 年 06 月 论文答辩日期: 2012 年 06 月学位授予日期: 答 辩 委 员 会 主 席 : 唐立新评 阅 人 : 李界家、张磊 东 北 大 学2012 年 06 月A Thesis in Control Theory and Control EngineeringResearch of Multita

2、sking Embedded Real-Time Control System SoftwareBy Zhu WenqiangSupervisor: Professor Li XiaopingNortheastern UniversityJune 2012- I -独创性声明本人声明,所呈交的学位论文是在导师的指导下完成的。论文中取得的研究成果除加以标注和致谢的地方外,不包含其他人己经发表或撰写过的研究成果,也不包括本人为获得其他学位而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示谢意。学位论文作者签名:日 期: 学位论文版权使用授权书本学位论文作者和指

3、导教师完全了解东北大学有关保留、使用学位论文的规定:即学校有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允许论文被查阅和借阅。本人同意东北大学可以将学位论文的全部或部分内容编入有关数据库进行检索、交流。作者和导师同意网上交流的时间为作者获得学位后:半年 一年 一年半 两年 学位论文作者签名: 导师签名:签字日期: 签字日期:东北大学硕士学位论文 摘要- II -多任务嵌入式实时控制系统软件的研究摘 要随着数字信息技术和网络技术的高速发展,嵌入式系统己经广泛地渗透到科学研究、工程设计和军事技术等各类产业中。传统的嵌入式系统大多为了实现某个控制功能,使用简单的控制对外界的请求进行处理。随着

4、系统复杂性的增加及使用范围的扩大,越来越多的嵌入式系统要求实现大量相关的非实时任务、软实时任务和硬实时任务的处理,然而传统的单线程嵌入式系统或多任务分时嵌入式系统难以满足实时多任务这种应用需求。为了适应发展需求,将嵌入式系统与多任务实时系统进行联合应用研究,可以进一步拓宽嵌入式系统的应用领域。本文以此为背景,采用基于模型的设计思想,设计开发出无缝连接Matlab/Simulink 的多任务嵌入式实时控制系统软件。该系统软件不仅具备嵌入式、多任务、实时性、二次开发简单快捷等特点,而且具有良好的安全性、稳定性、可维护性和可扩展性。该系统软件的研究、设计及其实现将会为嵌入式系统的进一步发展和应用提供

5、新的解决方案。本文的主要工作包括以下几个方面:1. 分析国内外实时控制器和实时操作系统的研究和发展现状,总结现有控制器和实时系统的优缺点,并在此基础上设计多任务嵌入式实时控制系统软件。多任务嵌入式实时控制系统软件的设计分别为系统软件总体架构设计以及各个功能模块的具体设计。各功能模块的设计是实时内核的设计、实时设备驱动的设计和实时监控程序的设计。2. 多任务嵌入式实时控制系统软件的实现,包括实时内核的实现、实时设备驱动的实现和实时监控程序的实现。在实时内核实现环节中,对 Linux 内核实时性和其改进方案进行分析研究后,选定基于双内核思想的 RTAI-Linux 作为最终的实时内核方案;在实时设

6、备驱动实现环节中,分析了 LXRT 机制后,在此基础上设计完成了实时设备驱动的实现策略;在实时监控程序的实现环节中,分析了实时进程间通信 RPC 和MBX 机制后,利用此机制分别完成对实时监控程序中控制功能模块、参数显示与修改功能模块、实时数据曲线显示功能模块的设计和开发。3. 多任务嵌入式实时控制系统软件的测试及在双容水箱设备上的应用验证。首先对实时内核、实时设备驱动和实时监控程序分别开发测试用例,对各个单元功能的有效性和实时性进行测试与分析;其次在双容水箱装置中进行应用验证,完成对整个系统软件的功能和性能的测试。实验结果表明,本文开发的多任务嵌入式实时控制系统东北大学硕士学位论文 摘要-

7、III -软件不仅各单元功能有效可行,而且在系统多任务下也能满足对控制程序响应的快速性、时间的精确性和控制的可预测性的要求。关键词:实时系统;RTAI; LXRT;实时监控东北大学硕士学位论文 Abstract- IV -Research of Multitasking Embedded Real-Time Control System SoftwareAbstractWith the rapid development of the digital information technology and network technology, embedded system has been

8、widely used in various areas such as scientific research, engineering design, military technology, and so on. The traditional embedded system is designed to achieve a certain control function using simple control strategy. Following the increasing complexity and the extensive application of embedded

9、 system, more and more embedded system are required to realize the process of a variety of tasks including non-real-time tasks, soft real-time tasks and hard real-time tasks. However, it is difficult to meet real-time multitasking application request for the traditional single-threaded embedded syst

10、em and multitasking time-sharing embedded system. In order to meet the needs of embedded system development, there is no doubt that the research on combined application of the embedded system and real-time multitasking system will further broaden the application field of the embedded system.Taking t

11、his as background, a multitasking embedded real-time control system software is designed and developed to realize the seamless connection of Matlab/Simulink, based on the model based design method. It not only has embedded, multitasking, real-time, simple and quick second development characteristics

12、, but also has high safety, reliability, maintainability and expansibility. There is no doubt that it will promote the future application and development of the embedded system to study, design and implement the system software. The main contributions of the dissertation are summarized as follows:1.

13、 Based on the analysis of research and development situation of real-time controllers and the real-time system at home and abroad, the dissertation summarize the advantages and disadvantages of the existing controller and present the design of the general structure of the multitasking embedded real-

14、time control system software. To be specific, it consist of the design of the real-time kernel, real-time device driver and real-time monitoring program.2. The development and realization of the multitasking embedded real-time control system software are introduced in the paper in details. Specifica

15、lly, it is comprised of the implementation of real-time kernel, real-time device driver and real-time monitor program. 东北大学硕士学位论文 Abstract- V -Respect to the real-time kernel, RTAI-Linux based on the double kernels mechanism is selected as the final real-time kernel after the research on the shortag

16、e and improvement scheme of Linux real-time performance. Besides, based on the analysis of LXRT mechanism, the implementation strategy of the real-time device driver is designed and presented. Finally, the real-time monitor program is developed detailedly on the basis of analyzing and using the RPC

17、and MBX strategy. To meet the functional requirements, three functional modules are designed and developed which are respectively the control function module, the parameter display and modification function module and real-time data curve display function module.3. This paper completes the test of t

18、he multitasking embedded real-time control system software and its application validation to the double tank. Testing cases are developed first for real-time kernel, real-time device driver and real-time monitor program, respectively. And then, test results are obtained and show that each function u

19、nit works well and has good real-time performance. At last, the system software is applied to the double tank to validate the function and performance of the whole system software. Experimental results show that the multitasking embedded real-time control system software not only works well for each

20、 function unit, but only satisfies the request that real-time control system for speedy response, accurate time and divinable control in the environment of multiple tasks.Keywords:Real-Time System; RTAI; LXRT; Real-Time Monitoring东北大学硕士学位论文 目 录- VI -目 录独创性声明 .I摘 要 IIAbstract.IV第 1 章 绪论 .11.1 选题背景及意义

21、11.2 实时控制系统的发展现状21.2.1 实时控制器的发展现状.21.2.2 实时操作系统的发展现状.61.3 本文主要研究工作8第 2 章 多任务嵌入式实时控制系统软件的设计 .112.1 引言112.2 实时控制系统软件的总体架构设计112.2.1 快速原型实时控制系统总体架构设计.112.2.2 实时控制系统软件的总体设计.132.3 实时内核的设计142.3.1 标准 Linux 内核实时性能分析 .142.3.2 增强标准 Linux 实时性能的关键技术分析 .172.3.3 基于 Linux 的实时内核的设计 .202.4 实时设备驱动的设计212.4.1 标准 Linux 设

22、备驱动分析 .212.4.2 基于 LXRT 机制的实时设备驱动的设计 252.5 实时监控程序的设计272.5.1 实时监控程序的功能需求分析.272.5.2 实时监控程序开发语言的选择.282.5.3 实时监控程序的设计.292.6 本章小结34第 3 章 多任务嵌入式实时控制系统软件的实现 .353.1 引言353.2 基于 RTAI 的 Linux 实时内核的实现 .35东北大学硕士学位论文 目 录- VII -3.2.1 实时内核的实现原理分析.353.2.2 实时内核的具体实现.403.3 基于 LXRT 机制的实时设备驱动的实现 .423.3.1 LXRT 机制的研究 423.3

23、.2 基于 LXRT 机制的实时设备驱动的实现 453.4 基于 RPC 和 MBX 机制的实时监控程序的实现 .493.4.1 RPC 机制的研究 .493.4.2 MBX 机制的研究 .523.4.3 人机界面的开发实现.543.4.4 控制功能模块的开发实现.553.4.5 参数显示与在线修改功能模块的开发实现.553.4.6 实时数据曲线显示功能模块的开发实现.573.5 本章小结59第 4 章 系统软件的测试及在双容水箱装置中的应用验证 .614.1 引言614.2 实时控制系统软件的测试614.2.1 实时内核的测试.614.2.2 实时设备驱动的测试.624.2.3 实时监控程序

24、的测试.654.3 实时控制系统软件在双容水箱装置中的应用验证674.3.1 双容水箱系统中 PC104 实时设备驱动的开发 674.3.2 单容水箱 PID 液位平衡控制算法分析 704.3.3 单容水箱 PID 液位平衡控制实验测试 714.4 本章小结73第 5 章 总结与展望 .755.1 工作总结755.2 研究工作展望76参考文献 .77致 谢 .81硕士期间主要工作 .83东北大学硕士学位论文 第 1 章 绪 论- 1 -第 1 章 绪论1.1 选题背景及意义在当前后 PC(Post-PC)时代,数字信息技术和网络技术高速发展,嵌入式系统广泛地应用到科学研究、军事技术、工程设计和

25、商业文化等人们的日常生活的方方面面中。随着国内外嵌入式产品的进一步开发和推广,嵌入式技术和人们生活的结合将越来越紧密。嵌入式系统的概念出现在 1970 年左右,此时嵌入式系统大多不采用操作系统,只为了实现某个控制功能,使用一个简单的循环控制对外界的控制请求进行处理 1。随着系统复杂性的增加和利用范围的扩大,新的功能需求越来越多,每添加一项,都可能需要从头开始设计。没有操作系统的支持,开发难度越来越大,给其带来了极大的挑战。从 80 年代开始,各种各样的嵌入式操作系统开始出现,并呈现百家争鸣的局面。将嵌入式系统与实时系统应用紧密结合,已经成为近年来各大企业和高校研究的热点之一。所谓的实时系统就是

26、实时系统是“一个能够在事先指定确定的时间内完成系统功能和对外部或内部、同步或异步事件做出响应的系统” 。对于实时系统而言,一个任务计算的正确性不仅依赖于程序自身逻辑上的正确性,而且依赖于程序运行计算结果产生的时间的准确性,如果一个系统的时间约束条件不能很好的满足,将会导致系统崩溃及其他一些不可预测的严重后果 2。实时控制任务与常见的只要求逻辑正确性的计算任务之间的最大不同之处就是要满足处理与时间的关系,它经常要处理很多并发事件的输入数据流,这些事件的到来次序和几率通常是不可预测的,而且还要求系统必须在事先设定好的时限内做出相应的响应。因此,与我们常见的分时系统相比,实时系统的设计时面临着许多不

27、同的甚至更复杂的考虑因素。近年来,嵌入式实时系统的应用出现了更加强劲的势头。传统的嵌入式系统己经很难满足现代工业、军事及航空航天等各类产业的控制要求,多数控制任务要求采用多任务实时计算,这些需求推动了多任务嵌入式实时系统的研究和发展。开发适合于多用应用系统要求的多任务嵌入式实时系统软件,成为该系统研究领域中的的一个重点。在这方面,通常有三种开发模式:一种是自行开发实时系统软件;另一种是直接应用商业开发的实时系统软件;最后一种是对通用的控制系统软件进行实时性的改造再开发。第一种方案开发难度太大,难以操作,第二种方案功能简单,价格过于昂贵,它们完全不利于该系统软件大规模的开发、推广和使用;唯独第三

28、种方案简便易操作,东北大学硕士学位论文 第 1 章 绪 论- 2 -便于开发一个标准的、开发的、有广泛支持的、高效又廉价的嵌入式实时系统软件。Linux 操作系统由于具有开源、硬件支持广泛、内核工作稳定高效、开发工具链优秀齐备等优点,使得它无论是在嵌入式领域还是实时化领域都倍受关注。但是 Linux是一个分时操作系统,使用分时调度策略,在任务调度方面采用的是公平原则,这样就限制了 Linux 的实时化应用,必须对其进行实时性改进,以满足实时性的要求。因此,国内外很多机构都是以标准 Linux 内核作为基础开始展开的实时系统软件的研究。近年来,国内外对实时控制系统软件的研究发展迅速,尤其是基于模

29、型的设计技术在控制领域的应用开创了产品开发和理论验证的新模式。基于模型的设计的研究与发展将理论验证的时间大大缩短,同时降低了生产成本,提高了生产效率。目前,国外实时控制系统平台的发展领先于国内水平,但价格昂贵,使得一些有意使用的企业和高校难以使用,一定程度上阻碍了国内实时系统的研究和企业生产效率的提高。在这种形势下,东北大学自动化研究中心的嵌入式控制系统实验室开始致力于以快速原型技术为核心的新一代嵌入式控制系统平台的研究与开发。经过几年的努力和积累,该实验室已经自主开发出多套不同层次和种类的嵌入式控制系统平台,代表国内快速原型控制系统平台的高端发展水平。其中快速原型实时控制器是实验平台的核心和

30、关键。该实验室通用控制平台主要分为高端和低端两个种类,分别是基于单板机的 XPC快速原型控制平台和基于 DSP 的快速原型控制平台。前者有强大的处理能力,支持网络通信,但是一方面对于控制器而言,系统软件基于 DOS 内核,不支持多任务,功能单一,大大限制了其对音频、视觉等特性功能的扩展,另一方面对于控制算法开发机而言,开发平台封闭,扩展性和跨平台性差,大大限制了其应用范围。后者虽有体积小、低功耗等优点但功能单一且处理能力有限,同时也不支持网络通信,给控制程序的开发调试和功能扩展带来诸多不便。本文开发的基于 RTAI-Linux 的多任务嵌入式实时控制系统软件不仅继承了上述控制平台的诸多优点,还

31、解决了其发展过程中存在的问题和不足。同时,还增加了许多新的优点:支持多任务的 Linux 操作系统使得控制平台具有更多的智能性和灵活性,例如可以方便的添加音频、视频等功能模块,便于满足各种被控对象多样的应用需求;其增加本机监控的功能不仅方便现有系统软件平台的调试,还为以后实验室各种工业现场控制平台的研究与开发奠定基础。1.2 实时控制系统的发展现状1.2.1 实时控制器的发展现状随着控制技术的高速发展,实时控制器也获得了很大的进步。目前实时控制器主东北大学硕士学位论文 第 1 章 绪 论- 3 -要分为两大类:一类是传统实时控制器,另一类是基于快速原型技术的实时控制器。其中后者就是推动控制系统

32、软件平台发展迅速的主要动力之一。(1) 传统实时控制器面对不同的被控对象,控制器产品的使用也有所差异。下面对传统实时控制器产品的分类进行大体的概括和描述。以单片机或微处理器作为目标控制器的实时控制器。这类控制器结构比较简单,处理精度和速度较低,成本也不高,主要应用于一些只需要低速处理或对系统性能要求不高的场合 3。软件方面,开发中使用汇编语言或者 C 语言对控制方法和策略等进行编程,进而完成对实验对象的控制。基于 PC 总线的以 DSP 和 FPGA 作为目标控制器的实时控制器。这类控制器以FPGA 等芯片作为实时控制器的目标控制器,以 PC 机作为信息处理平台 3,其中,控制器以“插卡”的形

33、式嵌入到 PC 机中,即“PC 机 +控制器的模式”。如图 1.1 所示。图 1.1 板卡控制器Fig.1.1 The controller board此类实时控制器将 PC 机的信息处理能力和底层板卡的控制性能高效结合在一起,具有信息处理能力强,控制精度高等特点。同时控制器充分利用了 DSP 的高速数据处理能力和 FPGA 的超强逻辑处理能力,便于设计开发出功能完善、性能优越的专用控制器。软件方面,使用 C、C+等高级语言进行编程实现控制方法,完成对硬件系统或被控对象的控制操作。以嵌入式微处理器为核心的实时控制器。它以嵌入式主板为实时控制器的目标控制器,其中以 PC 机作为程序编写和算法调试

34、平台,同时控制器和 PC 机之间进行网络通信和数据交互。如图 1.2 所示。东北大学硕士学位论文 第 1 章 绪 论- 4 -图 1.2 嵌入式控制器Fig.1.2 Embedded controller此类控制器是采用“主机-目标机的模式”开发,目标机是嵌入式实时 CPU,运行实时控制程序,主机通过网络对嵌入式控制器进行实时控制,完成对相关参数的显示与调节和信号的显示。该控制器与嵌入式技术紧密结合,采用性能优越、稳定性高的嵌入式实时处理器,保障了控制系统的高性能,同时控制器支持网络交互,可以方便的搭建远程控制系统平台。软件方面,使用 C、C+等高级语言完成控制系统开发,然而复杂控制算法和底层

35、驱动需要编写大量代码,才可完成实时控制系统构建。第一类实时控制器受到性能限制,在市场上所占份额较少,主要应用在一些要求完成简单控制的场合。第二类控制器为目前国内实时控制器产品的主流。但是该类产品板卡结构的控制器采用金手指连接,单边固定,扩展性差;同时在多数环境恶劣的工业现场,不宜长期工作;此外 PC 主机资源浪费,控制程序设计开发者仅使用 PC 作为开发平台,丰富的 PC 资源不但导致闲置和浪费,还导致维护工作繁琐难以操作。通过对传统实时控制器的分析可以看出,控制设计开发过程中首先使用数学工具对被控对象进行建模,然后设计实时控制器,最后使用基于代码的编程思想,使用C、C+、Visual C+等

36、编程语言,编写大量繁琐的代码进行设计开发,这通常需要设计人员对硬件系统和软件编程非常熟悉。传统控制系统多为线性系统,其控制算法简单易开发,用代码编写实现相对容易,而现实中系统多为非线性系统,控制算法非常复杂,若使用编程语言来直接开发,对开发者的编程能力要求比较高,而且程序复杂调试阶段也比较困难,开发过程中实时数据不能动态直观的显示,给程序开发调试带来了很大的挑战,大大降低了开发效率。同时不同厂商提供的控制产品由于使用不同的软件开发环境,控制系统标准无法统一,造成软硬件无法匹配,导致设备得不到综合利用 3-4。通过以上分析可知,需要采用新技术、新思想来提高控制系统平台的开发效率,为控制开发设计者

37、提供一个方便高效的系统平台,减少开发者编写繁琐代码,加快系统调试过程。随着快速原型技术的发展,基于模型的设计思想和代码自动生成技术可以用来方便的完成控制程序的开发与测试,如 Matlab/Simulink,并能提高系统的复用东北大学硕士学位论文 第 1 章 绪 论- 5 -性和扩展性,从而很好的解决上面存在的问题 4-5。本文就是结合基于模型的设计思想对控制系统软件进行了研究与设计。(2) 基于快速原型技术的实时控制器随着快速原型技术的快速发展,国外公司提供了多种快速原型技术平台,并提供了相应的软件工具和硬件解决方案:如 VisSim(Visual Solutions Inc.)、MATRIX

38、x(National Instruments)、RIDE(Hyperception Inc.)和 Matlab/Simulink(The MathWorks Inc.)等软件可以使用模块化的程序语言来设计控制系统 6。图 1.3 解释了快速原型的设计思想。快速原型的关键技术是代码自动生成,图形化编程思想是实现控制程序设计,通过代码自动生成技术把图形化设计编译成可执行程序,从而避免了手写代码繁琐的编写,从而避免了控制程序开发者进行耗时的底层代码编写,使其更多的关注控制系统的设计、执行和评估。由图 1.3 中可知,基于快速原型思想的控制器根据应用对象的不同可以分为三类:第一类是基于 TargetL

39、ink 的快速原型实时控制器;第二类是基于 PC 机的快速原型实时控制器;第三类是基于主机-目标机的快速原型实时控制器。图 1.3 基于快速原型技术的控制器结构图Fig. 1.3 The architecture of rapid prototype基于 TargetLink 的快速原型实时控制器TI 的 DSP 产品在这方面应用最为广泛,其基本流程是:在 Simulink 中首先建立算法模型 model.mdl,然后调用 RTW 工具生成模型 model.mdl 对应的中间描述文件model.rtw,目标语言编译器(Target Language Compiler)调用相应的库函数和系统文件

40、把model.rtw 生成 .c 和.h 源文件;同时 RTW 工具根据模板联编文件(.tmf) 生成相应的东北大学硕士学位论文 第 1 章 绪 论- 6 -Make 文件(.mk) ,以此来调用 CCS 编译器,把模型生成的 .c、.h 文件生成 CCS 的可执行程序,并编译下载到 DSP 中运行 7-9。这种控制器由于搭建简单,花费低,对快速搭建控制系统非常方便,便于对控制理论的快速学习。但这类系统都需要通过使用相应的第三方编译环境来生成可执行代码才能在硬件系统中运行 8-10,这样就增加目标系统开发的难度,在开发程序时必须注意特定开发环境下的语言规范,如 CCS 要求的编程格式。同时,该

41、系统的整体控制精度不高,不能满足一些复杂控制算法的高精度控制需求。基于 PC 机的快速原型实时控制器设计开发者可以通过图形化设计思想来创建实时程序并控制该程序的执行,生成C 代码,经过编译、链接后,生成可执行程序,通过 PC 机的 I/O 接口将其下载到硬件中去。在整个操作流程中,可以同时运行其他 Windows 程序。这类系统(如 Quanser实时系统)直接使用 PC 机进行数据处理,MathWorks 提供了 Windows 下高度优化的实时内核 11-12,这种内核运行在 Windows 运行在最高优先级(Ring 0),支持单任务和多任务,可以达到很高的快速性和实时性,同时运行其他应

42、用程序,充分利用 PC 机的丰富资源。关于操作系统实时性的不同,还能在 Linux、VxWorks 等操作系统下实现,以应用于不同的实时性要求。由于控制系统大都在 PC 机运行,其对于固定设备的应用方便可靠,但是在移动式或嵌入式应用中,这类系统受到很大的限制,如体积、成本等因素。而且该系统现在支持的板卡有限,这类控制器的开发对系统依赖性极大,并且开发耗费成本也比较高,目前大都直接采用其支持的硬件资源,不利于系统的自主开发和功能扩展。基于主机-目标机的快速原型实时控制器该类控制器采用主机-目标机的工作方式,主机运行图形化设计软件以构建系统的模型,代码自动生成后,通过 RS-232 串口或者网络通

43、信方式等下载到嵌入式控制器中运行,实现对被控对象的实时控制。同时,上层主机可以实时监测系统的运行情况。MathWorks 公司对这方面做了大量的工作,提供了很好的支持,形成了一种比较成熟的 xPC Target 嵌入式目标机机制,针对许多公司的计算机板卡做了驱动模块的封装和集成。基于 xPC Target 快速原型的思想开发嵌入式快速原型控制器对物理实验系统验证是非常方便 13-14,易用的,有利于控制理论研究者开发算法的快速实现,改善当前控制理论的现状。主机和目标机的连接非常的简单,仅仅使用一根网线就可以实现代码下载、实时控制和数据显示等操作 15-17。但是此系统现在支持的控制器有限,进而

44、导致系统开发依赖性极大,开发成本也比较高,所以目前大都直接采用现有支持东北大学硕士学位论文 第 1 章 绪 论- 7 -的硬件,给系统的功能扩展和自主开发增加了难度。但是本文基于此思想开发的多任务嵌入式实时控制系统软件,将使这种控制器大大的摆脱对硬件和系统平台的限制,不仅可以为实验室控制程序开发人员提供一个灵活方便的物理验证系统,也可直接应用到企业产品研发的控制系统中,将会有很大的发展前景。1.2.2 实时操作系统的发展现状诞生于二十世纪中叶的实时系统(Real Time System)与当时军事上的需求紧密关联。而后,随着数字信息技术、通讯技术和消费电子技术的快速发展与普及,实时系统以其响应

45、快、专用性强、可靠性高和人工干预少等特点,被广泛应用于过程控制实验、信息通讯、网络传输、工业控制及军事等领域,已渐渐成为人们日常生活和生产中不可或缺的一部分 18。从 1981 年 Ready System 开发了世界上第 1 个商业嵌入式实时内核( VRTX32)开始,到今天已经有四十多年的发展历史。20 世纪 80 年代的实时内核还仅支持一些 16位的微处理器( 如 68k、8086 等)。同时,该时期的 RTOS 还只有内核,以销售二进制代码为主。当时的产品除 VRTX 外,还有 IPI 公司的 MTOS 和 80 年代末 ISI 公司的PSOS,产品主要用于军事和电信设备等领域。20

46、世纪 90 年代后,现代操作系统的设计思想(如微内核设计技术和模块化设计思想)开始应用于 RTOS 领域。老牌的RTOS 厂家如 Ready System(在 1995 年与 Microtec Research 合并),推出 VRTX32 新一代实时内核,同时新一代的 RTOS 厂家 Windriver 推出了 Vxwork 实时内核。另外,在这个时期的各家公司,通过自己收购、授权或使用免费工具链的方式,组成一套完整的开发环境,力求摆脱依赖第三方工具的制约与限制。20 世纪 90 年代中期,互联网之风在北美日渐流行。终端产品制造商和网络设备制造商及各家商业公司都要求RTOS 有网络通信和图形界

47、面的功能。为了提高大量现存的软件代码的复用性,他们希望 RTOS 厂家提供对标准的 API 的支持,如 POSIX,Win32 等,并希望 RTOS 的开发环境与他们已经熟悉的 UNIX,Windows 一致。这个时期代表性的产品有Vxwokers,QNX,Lynx, Windows CE 等,但价格比较昂贵,对中小系统来说成本影响很大。因此,对各大产商而言,开发具有自主知识产权的 RTOS 就显得尤为重要。1991 年,Linux 的出现为开发 RTOS 带来了福音。Linux 是类 Unix 操作系统大家族中的一员,最初的 Linux 版本是在 1991 年由 Linux Torvalds

48、 开发出来 19。从 90 年代末,这位相对较新的成员变得非常流行,并且跻身于那些有名的商用操作系统之列。重要因为它与商用操作系统相比具有如下优势 20-21:(1)开源,软件资源丰富:Linux 是开放源代码的免费操作系统,它提供给了用户东北大学硕士学位论文 第 1 章 绪 论- 8 -最大限度的自由度。(2)硬件支持广泛:Linux 能够支持 x86、ARM、ALPHA、PowerPC、MIPS 等多种体系结构,目前已经成功移植到十多种硬件平台,几乎可运行在所有流行的控制芯片上。(3)内核工作高效稳定:Linux 内核工作的高效稳定性己经在各个领域得到了大量的事实验证。(4)开发工具优秀:

49、嵌入式 Linux 为程序开发人员提供了一套完整的工具链。使用GNU 的 gcc 作为编译器,使用 gdb、xgdb 作调试工具,能够很方便地完成从操作系统用户态到内核态各个级别应用软件的调试。(5)网络通信和文件管理完善:Linux 自诞生之日起就与 Internet 密不可分,支持所有的 Internet 网络协议,并且很容易移植到嵌入式系统之中。但是,标准 Linux 系统作为分时操作系统中的一员,在负责管理众多的进程并为它们分配系统资源的同时,遵循分时操作系统的基本设计原则:尽量缩短系统的平均响应时间并提高系统的吞吐率,在单位时间内为尽可能多的用户请求提供服务。由此可以看出,分时操作系统注重平均表现性能,不注重个体表现性能。如对于整个系统来说注重所有任务的平均响应时间而不关心单个任务的响应时间,对于某个单个任务来说,注重每次执行的平均响应时间而不关心某一次特定执行的响应时间。换句话说,它自身的实时性能完全达不到硬实时应用的标准要求。随着 Linux 的迅速发展,Linux 自身的实时性不断增强,但实时性并没有得到实质性的改善。但是由于 Linux 除了具有上面提到的众多优点之外

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报