基于UML和形式化方法的面向方面实时系统模型_刘瑞成_毕业论文.doc

上传人:李主任 文档编号:3264626 上传时间:2019-08-07 格式:DOC 页数:101 大小:2.25MB
返回 下载 相关 举报
基于UML和形式化方法的面向方面实时系统模型_刘瑞成_毕业论文.doc_第1页
第1页 / 共101页
基于UML和形式化方法的面向方面实时系统模型_刘瑞成_毕业论文.doc_第2页
第2页 / 共101页
基于UML和形式化方法的面向方面实时系统模型_刘瑞成_毕业论文.doc_第3页
第3页 / 共101页
基于UML和形式化方法的面向方面实时系统模型_刘瑞成_毕业论文.doc_第4页
第4页 / 共101页
基于UML和形式化方法的面向方面实时系统模型_刘瑞成_毕业论文.doc_第5页
第5页 / 共101页
点击查看更多>>
资源描述

《基于UML和形式化方法的面向方面实时系统模型_刘瑞成_毕业论文.doc》由会员分享,可在线阅读,更多相关《基于UML和形式化方法的面向方面实时系统模型_刘瑞成_毕业论文.doc(101页珍藏版)》请在三一文库上搜索。

1、广东工业大学工学硕士学位论文基于UML和形式化方法的面向方面实时系统模型刘瑞成二零零六年五月八日分类号: 学校代码:111911UDC: 密级: 学 号:2240305243广东工业大学学位论文基于UML和形式化方法的面向方面实时系统模型刘瑞成指 导 教 师: 张立臣 教授 广东工业大学计算机学院学 科 门 类: 工学 专 业 名 称: 计算机软件与理论 申请学位级别: 硕 士 论文提交日期: 2006 年 5 月 论文答辩日期: 2006 年 5 月 学位授予单位: 广东工业大学 A Dissertation Submitted to Guangdong University of Tech

2、nology for the Degree of MasterAspect-Oriented Model for Real-Time systems Based on UML and Formal MethodsMaster Candidate: Liu RuichengSupervisor: Prof. Zhang LichenMay 2006Computer FacultyGuangdong University of TechnologyGuangzhou, Guangdong, P.R.China, 510090摘要摘要关注分离在软件工程上是一种广泛应用的原理,认为难于理解的复杂问题应

3、该被划分为一系列容易理解的简单问题,并且能够容易解决和集成到原处,从而解决原来复杂的问题。由于问题被分解为人容易理解的小单元,而且适合于各种需求的变化,因此这种方式开发软件能够给程序带来更好的可理解性、维护性、适应性和重用性。实时系统已经广泛应用于各个领域,但是实时系统具有很多非功能需求(例如实时性),且这些非功能需求往往横切整个系统模块,引起代码混乱和代码分散等问题,导致系统难于设计、重用和维护,严重影响系统的性能。面向方面编程作为一种基于关注分离的新软件开发范例,能够通过引入实现横切关注点的方面来获得更高的功能性和非功能性关注点的分离,而且系统不同的方面能够进行单独的设计,并织入系统。它不

4、仅能够解决面向对象编程在设计横切关注点时陷入的“应该设计不足还是宁可过分设计”的两难境地,还能够很好的解决上述遇到的问题。目前面向方面编程的实现语言已经不少,例如AspectJ等,但仍然没有适用面向方面程序设计的建模语言。因此,我们利用UML和形式化方法来表达面向方面程序,并建立相应的面向方面软件设计模型来设计实时系统。本文分析介绍了实时系统、面向方面软件设计以及UML等技术;总结了UML建模实时系统现有的方法;论述了扩展UML建立的时间模型;提出一种新的基于UML的面向方面软件设计模型(AOSDM-UML),通过扩展UML表达AOP的相关概念,在UML的元模型层次上设计AOSD的模型框架,从

5、结构模型、行为模型和方面织入等几部分建立面向方面的设计模型,并结合实例说明整个建模过程,即利用UML的类图实现方面的结构模型、方面与核心组件以及方面之间的静态关系,协作图表达方面与核心组件之间的动态行为,最后通过状态图细化系统的动态行为,实现在状态图中表达方面与核心组件以及方面之间的织入关系。接着进一步结合形式化语言RTL对AOSDM-UML进行实时扩展,并通过电梯例子来说明实时系统的建模过程。为了从形式化方法的角度来设计实时系统,本文根据AOP技术把系统不同的方面利用不同的形式化语言来表示,用LOTOS描述实时系统的功能性方面,而实时方面用随机实时时序逻辑SQTL表达,并通过定义迁移系统LT

6、S和事件调度器利用时间自动机来实现方面的织入。根据分布式实时系统的特性,还进一步提出把时间方面划分为确定的、不确定的和模糊的时间子方面,并且把不同的时间子方面分别利用随机实时时序逻辑(SQTL)和模糊时间Petri网(FTN)来设计,然后各个时间子方面都转化为时间自动机组合到系统中,实现系统的实时特性。关键词:面向方面编程;面向方面软件开发;实时系统;UML;形式化方法87Abstract Separation of Concerns is a common, widely used principle in software engineering. It suggests that a c

7、omplex problem that is hard to understand be divided into a series of smaller problems that are less complex and easier to comprehend. These smaller problems may than be solved one at a time and finally may be put back together again to solve the big problem. Developing software this way leads to a

8、greater comprehensibility, maintainability, adaptability, and reusability of programs since problems are cut down to units whose size is perceptible by human minds and that may be generalized to suit various needs. Real-Time systems have been applied in every area widely, but they have many non-func

9、tional requirements, such as the real-time requirement, which cross cut the whole system modules. That may cause the code tangle and scatter, make the systems hard to design, reuse and maintain, and affect performance of systems badly. AOP is a new software development paradigm, which could attain a

10、 higher level of separation of concerns in both functional and non-functional matters by introducing aspect, for the implementation of crosscutting concerns. Different aspects can be designed separately, and woven into system. This way can not only solve the architects under/overdesign dilemma of cr

11、osscutting in OOP, but also solve the problems stated above.There are many implementations of aspect-oriented programs recently, such as AspectJ, but no modeling language is available for the design of AOP. So we express the AOP using UML and formal methods, and establish the Aspect-Oriented Softwar

12、e Design Model correspondingly to model real-time systems.Firstly, we introduce the technologies of real-time systems, aspect-oriented software design, and UML, summarize the expression of real-time in UML, and discuss the time model of UML.Secondly, we propose a new aspect-oriented software design

13、model called AOSD-UML which expresses the AOP by extending UML, designs profile of AOSD in the meta-model of UML, and model the aspect-oriented systems from several parts such as structure, behavior and aspect weaving and so on. For demonstration purposes, a simple sample application is modeled in t

14、his work with the help of AOSD-UML. Class diagrams model the structure model of aspects, static relationship between aspects and core component, and relationship among aspects. Collaboration diagrams design dynamic behaviors of aspects and core component, while statecharts refine those behaviors and

15、 realize the aspects weaving. In order to model real-time systems, we extend the real time into AOSDM-UML with integrating real-time logic, and an elevator example illustrates the model. Finally, in order to model real-time systems with formal methods, we design the different aspects of the system b

16、y different formal languages according to the aspect-oriented technology. The functional aspects can be described by LOTOS, while the non-functional aspects by SQTL. A labeled transition system and event scheduler can be defined to weave the aspects with timed automata. According to characteristic o

17、f distributed real-time systems, we separate the time aspect into three sub-aspects in advance, which are deterministic time sub-aspect, undeterministic time sub-aspect and fuzzy time sub-aspect. Those sub-aspects are designed by SQTL and FTN etc. After all the sub-aspects are implemented, they are

18、translated into timed automata and woven into the system, and realize the real-time feature.Keywords: AOP; AOSD; real-time systems; UML; formal methods目录目录摘要IAbstractI目录IIIContentsVI第一章 绪论11.1 选题的背景及意义11.2 对国内外研究现状的分析31.3 论文的主要工作及组织方式41.3.1 论文的主要内容41.3.2 论文的组织方式4第二章 相关技术62.1 实时系统(要)62.1.1 实时系统的定义及时间

19、约束62.1.2 实时系统的特征及要求82.1.3 实时系统的开发过程92.1.4 实时系统的建模方法102.1.5 实时系统的应用122.2 UML相关概述(不)132.2.1 UML简介132.2.2 UML扩展机制142.2.3 UML的实时扩展142.3 实时逻辑(RTL)概述172.4 AOP概述182.4.1 问题的提出182.4.2 AOP术语及实现原理182.4.3 AOP的横切模型232.4.4 AOP框架26第三章 时间模型303.1 基本时间模型313.2 定时机制模型333.3 时间事件模型353.3.1 时间动作363.3.2 时间事件373.3.3 时间激励373.

20、4 时间服务模型37第四章 基于UML的面向方面软件设计模型394.1 面向方面系统建模的UML框架394.2 扩展UML表达面向方面概念404.3 结构模型434.4 行为模型464.5 方面织入48第五章 实时AOSDM-UML及实例建模535.1 AOSDM-UML的时间扩展535.2 电梯控制系统例子535.2.1 结构关系545.2.2 行为关系555.2.3 织入时间方面57第六章 基于AOP的实时系统形式化建模及实例596.1 LOTOS和随机实时时序逻辑(SQTL)596.1.1 LOTOS596.1.2 随机实时时序逻辑606.2 LOTOS和SQTL转换为自动机626.3

21、方面的形式化织入机制636.4 实例建模65第七章 实时方面的形式化建模(要)687.1 模糊时间Petri网687.2 分布式实时系统的时间方面697.2.1 确定的时间子方面697.2.2 不确定的时间子方面697.2.3 模糊时间子方面707.3 组合时间方面707.3.1 模糊时间Petri网转换为时间自动机717.3.2 时间自动机的织入727.4 实例分析73总结与展望76参考文献79攻读硕士学位期间发表的论文86独创性声明87致谢88ContentsContentsAbstractIContentsVIChapter1 Introduction11.1 Research Back

22、ground and Significance11.2 Related Work31.3 Contents and Structure of the Thesis41.3.1 Research Contents41.3.2 Organization of the Thesis4Chapter2 Correlative Technology62.1 Real-time Systems62.1.1 Real-time Systems and Timing Constranits62.1.2 Characteristic and Requirement82.1.3 Developing Proces

23、s92.1.4 Modeling of Real-time Systems102.1.5 Application of Real-time Systems122.2 UML Introduction132.2.1 UML Introduction132.2.2 Extension Mechanisms142.2.3 Modeling Real-Time Characteristics in UML142.3 Real-Time Logic172.4 AOP Introduction182.4.1 Shortage of OOP182.4.2 Terms and Principle of AOP

24、182.4.3 Cross-cutting Model of AOP232.4.4 AOP Framework26Chapter3 Timing Model303.1 Basic Time Model313.2 Timing Mechanisms Model333.3 Timed Events Model353.3.1 Timed Action363.3.2 Timed Event373.3.3 Timed Stimulus373.4 Timing Services Modeling37Chapter4 AOSD Model Base on UML394.1 AOP Model on UML

25、Profile394.2 AO Extensions of UML404.3 Structural Model434.4 Behavioral Model464.5 Weaving Aspects48Chapter5 Real-Time AOSDM-UML and Example535.1 Real-Time Extensions of AOSDM-UML535.2 Example of Elevator535.2.1 Structure Modeling545.2.2 Behavior Modeling555.2.3 Weaving Timing Aspect57Chapter6 Forma

26、l Model of Real-Time Systems Based on AOP596.1 LOTOS and Stochastic and Real-Time Temporal Logic596.1.1 LOTOS596.1.2 Stochastic and Real-Time Temporal Logic606.2 Translating LOTOS and SQTL to Timed Automata626.3 Formal Weaving Mechanisms of Aspects636.4 Example65Chapter7 Formal Model of Real-Time As

27、pect687.1 Fuzzy-Timing Petri Nets687.2 Timing Aspects of Distributed Real-Time Systems697.2.1 Deterministic Timing Sub-aspect697.2.2 Undeterministic Timing Sub-aspect697.2.3 Fuzzy Timing Sub-aspect707.3 Composing Time Aspects707.3.1 Translating FTN to Timed Automata717.3.2 Weaving Aspects with Timed

28、 Automata727.4 Illustration73Summary and Future Work76Bibliography79Publications86Prometheam Statement87Acknowledgments88第一章 绪论第一章 绪论1.1 选题的背景及意义计算机解决现实世界问题是通过对问题域进行分析建立相应模型,并利用编程语言提供的语法机制进行编码解决问题。其过程如下所示1,2:现实世界问题域建立模型编程实现计算机世界执行求解问题域模型的建立是关键的一个环节,它直接决定了问题是否正确的被解决。面向对象 (Object-Oriented, OO)3设计方法利用“

29、对象”的概念模型建立一个针对于问题域的模型,而人类趋向于用“对象”的观点或“方法”来认识问题,分析问题以及解决问题,因此,用基于“对象”的概念模型来建立问题域模型自然成为系统分析员与用户交流的有效工具。近年来,面向对象方法受到广泛的应用和发展。但是从软件工程的整个软件开发周期来看,面向对象还有一些不足之处1,4:(1) 设计阶段:由于以类为单位组织模块,因此它不能全面反映系统需求;(2) 编码阶段:OOP将所有数据和方法都封装到相应的类中,这有利于增强数据的安全性和模块化,但也有一些数据和方法是特定于具体应用的,因此这种封装同时也减少了代码和模块重用的可能性;(3) 维护阶段:由于类中夹杂了其

30、它各种特定于应用的代码,使得类的功能变得模糊,维护人员也难以理解。此外,由于完成某个特定需求(如日志、安全)的代码分散在各个类中,当这些代码需要改变时,很难把它们全部找出,这就给程序的健壮性带来了隐患。因此,需要研究一种新的软件开发方法,来解决上述问题。这种方法就是面向方面软件开发(Aspect-oriented Software Development ,AOSD)5方法,它将传统按功能或对象划分程序模块的方法转化为按系统关注点来划分程序模块。面向方面编程(Aspect-Oriented Programming, AOP)6曾被MIT技术评论杂志评为21世纪十种对经济和人类生活工作方式最具影

31、响力的技术之一1,7。面向方面编程是一种基于关注分离的新技术,系统不同的关注能够分离并单独的设计,可以解决面向对象编程难于解决的复杂问题。例如在以往的过程化程序设计和面向对象编程技术中,某些程序设计代码分散在系统各个模块中,从而导致系统难以开发和维护,面向方面编程技术就能很好的解决这个问题,并提高了模块的重用性。面向方面软件设计把系统建模分成两部分:核心组件(基本元素)和方面。面向方面建模技术允许系统开发者在系统设计时,从核心功能性需求中分离出不同的关注,例如实时性、安全性、错误和异常处理、日志、同步控制、调度、性能优化、通信管理、资源共享、分布式管理等8。同时通过支持方面的组合和绑定来实现系

32、统的集成。关注分离可帮助改进系统的设计,开发者只需要实现单独的方面而不必考虑其它方面和系统的核心组件。实时性是实时系统的最重要特性,可以利用AOP技术把实时系统的实时性作为开发系统的一个独立的方面,并建立相应的时间模型来实现时间方面,从而方便实时系统的设计和开发,确保系统的实时性。但是AOP技术目前还不成熟,还没有形成统一的标准建模方法。现有的方法都比较零散,主要针对软件设计的某个阶段,特别是编码阶段来讨论,没有把AOP技术应用到软件设计的整个过程,发挥AOP技术的优势;而且每种方法之间又可能产生不兼容,产生混乱的局面。因此,非常需要探索一种比较完善的面向方面的软件建模方法,这也是本课题研究的

33、目的。UML是面向对象的工业化标准建模语言,目前已经广泛的被运用于各个应用领域的建模,具有丰富的模型分析和设计技术,能够利用不同的视图来构造系统的结构和行为模型,在整个软件生产过程中都能很好地对软件系统进行建模。UML本身就是一种可扩展的建模语言,从而满足不同领域的建模需要。因此,利用UML来建立基于面向方面的实时系统模型,更容易接近于应用和为人们所掌握,也更能体现AOP和OOP技术的结合。形式化方法是建立在严格数学基础上、具有精确的数学语义的开发方法。从广义角度,形式化方法是软件开发过程中分析、设计及实现的一种系统工程方法。狭义地,形式化方法是软件规格和验证的方法。实时系统非常复杂,对正确性

34、、安全性、健壮性具有很高的要求,在开发过程应尽量使规约具有精确性和无二义性,形式化方法以其数学上的精确性、固有的推理证明机制和精化机制成为实时系统开发中的一种重要的方法。由于形式化方法的数学基础是相通的,可以将具有不同特点的、适用于不同方面的形式化方法结合,构成有利于解决领域问题的合成形式化方法,这与面向方面技术中的不同方面可以用不同方法描述的思想相一致。因此,可以把面向方面开发方法与形式化方法相结合,进行实时系统的建模,从不同的角度分析问题,将复杂问题简化为多个简单方面的组合,从而进一步保证实时系统的QoS需求。1.2 对国内外研究现状的分析AOP 的概念是 Gregor Kiczales

35、在 Xerox Parc 团队于 20 世纪 90 年代后期首先提出的。从那时起,在各个编程领域已经涌现出许多 AOP 框架,例如aspectj9、aspectC+10和Hyper/J11等。目前,大多数面向方面软件设计主要是研究与UML的相结合,即对UML进行扩展来进行面向方面建模的研究。有些是对特定方面语言AspectJ的UML扩展12-16,有些通过扩展UML符号来表达面向方面的概念,把方面表达为类元并实现构造型表达横切关注、绑定、连接点等概念17,18,或者从结构方面19,20和行为方面来建模方面2123等等。这些方法都没有涉及软件设计的整个过程,不能满足AOSD各个阶段的需求。因此,

36、有必要构建一个具有较完整体系的方面模型,表达AOSD的语义,并实现从多方面多角度来描述AOSD。这种模型与UML一样具有一系列的扩展机制适应不同的面向方面系统建模,并与UML语义相一致,即能表达AOSD又不会改变UML元模型。文献24,25虽然提出了一种用于面向方面建模的UML框架,但不完善。而且上述研究基本上都不是基于实时系统的研究,没有突出实时性,不能直接进行实时系统的设计。目前利用形式化方法来设计AOP的研究主要有基于基于进程代数26、GAMMA语言27,28、时序逻辑29,30和两种形式化语言的结合31-35等形式化方法。文献26根据AOP特性建立相应的进程代数语言,并实现对应的织入算

37、法。文献27,28通过对GAMMA语言进行实时扩展来定义时间方面。文献29,30以基于动作时序逻辑TLA的DisCo为基础从三个部分来开发系统,即规范、证明和验证,并把DisCo实例规范转换为时间自动机,实现利用有效工具进行实时规范的验证。文献31-35主要基于面向方面思想结合LOTOS和时序逻辑来设计分布式多媒体系统。根据分布式实时系统的特点,可以利用LOTOS的并发特性来描述系统的行为方面,而时序逻辑来表达实时方面,体现面向方面思想的优越性和灵活性。上述建模实时系统的形式化方法都是把时间作为一个整体的方面来分析,而实时系统通常是比较复杂,特别是分布式实时系统,一个系统的时间可能包括精确时间

38、、概率时间和模糊时间等。因此,还可以把时间方面进一步分为精确时间子方面、概率时间子方面和模糊时间子方面,使时间方面能更准确的表达系统的实时需求。1.3 论文的主要工作及组织方式1.3.1 论文的主要内容本文研究的主要内容有:对UML进行面向方面的扩展;从系统框架、结构模型、行为模型和方面织入几部分来建立面向方面软件设计模型AOSDM-UML;结合形式化语言RTL来扩展AOSDM-UML模型进行实时系统建模;基于面向方面利用形式化语言LOTOS和随机实时时序逻辑SQTL对实时系统进行形式化建模,并进一步细化时间方面,把时间方面分为确定时间子方面、不确定时间子方面以及模糊时间子方面,不同个子方面通

39、过不同的形式化语言实现,并转换为时间自动机结合到系统中。1.3.2 论文的组织方式本文的结构组织方式如下:第一章介绍本文选题的背景及意义和国内外研究的现状。第二章主要介绍本文涉及到的相关技术简介,首先从实时系统的定义、特征及要求、开发过程、建模方法和应用几个方面介绍实时系统;其次对UML的扩展机制和现有的实时扩展方法进行总结;然后是对时间约束语言RTL进行简要的概述;最后介绍AOP的概念、实现原理、横切模型以及现有的AOP框架。第三章主要论述UML的时间模型,从基本时间模型、定时机制模型、时间事件模型和时间服务模型几个方面讨论时间的建模方法。第四章主要介绍如何利用UML来建立面向方面软件设计模

40、型。首先讨论面向方面系统建模的UML框架,然后对UML进行扩展来表达面向方面的概念;其次根据系统的静态和动态特性建立相应的结构及行为模型;最后讨论AOP的方面织入技术。第五章是以AOSDM-UML模型为基础来建模实时系统。首先是对AOSDM-UML模型进行实时扩展,并结合实时逻辑语言(RTL)来描述时间约束;然后通过一个例子来描述实时AOSDM-UML模型的建模过程。第六章主要从形式化方法的角度来设计实时系统。根据AOP技术能够把系统不同的方面使用不同的语言表示的特点,利用LOTOS描述实时系统的功能性方面,而实时方面用随机实时时序逻辑SQTL表达,并通过定义迁移系统LTS和事件调度器转换为时

41、间自动机来实现两种形式化语言的组合,实现方面的织入。最后通过一个例子来分析设计过程。第七章讨论如何利用AOP技术和形式化方法来细化时间方面。根据分布式实时系统的特点可以把系统的时间方面进行划分为确定的、不确定的以及模糊的时间等多个子方面,不同的时间子方面使用不同的形式化语言设计,然后通过把各个子方面转换为时间自动机结合到系统中,实现各个时间子方面的组合。本章利用SQTL设计确定的时间子方面和不确定的时间子方面,FTN来建模模糊的时间子方面。第二章 相关技术第二章 相关技术2.1 实时系统实时系统不同于分时系统,在分时系统中用户是通过计算机终端使用计算机系统,允许多个用户同时与计算机系统进行一系

42、列的交互,但每个用户都感到自己拥有计算机系统的全部资源。而实时系统是计算机系统接收到外部信号后必须能及时的进行处理,以及在严格规定的时间内完成,并能给出正确的处理结果的系统。2.1.1 实时系统的定义及时间约束实时系统有许多不同的定义,却没有一个公认的定义。John A. stankovic36 认为实时系统具有一下的性质:即如果系统的逻辑正确性和时间正确性不被满足的话,将会导致灾难性的后果,也就是说实时系统的正确性不仅依赖计算结果的正确性,而且依赖计算结果产生的时间。Wolfgang A. Halang 认为实时系统区别于其它系统就在于它包括了时间范围。Zephor把实时系统描述为:硬实时系

43、统是一个在时间要求得不到满足的情况下会发生失败的系统,不能响应将会引起灾难性后果,其响应时间必须是可以预知的,并且独立于操作系统的其他活动;软实时系统可以容忍操作系统服务(例如:中断、计时器和调度)在交付时的大范围的时间变动,它只要求对事件的响应足够快,并且每次的响应时间具有足够的一致性来满足具体应用的需要即可。Donald Gillies 提出的更加为大家接受的定义是:一个实时系统是指计算的正确性不仅取决于程序的逻辑正确性,也取决于结果产生的时间,如果系统的时间约束条件得不到满足,将会发生系统出错37。牛津计算字典的解释是这样的:实时系统是这样的一些系统,在这些系统中,产生输出结果的时间是至

44、关重要的。这是因为输入时间往往对应着物理世界中的某种运动,输出则必须针对同一运动。因此,从输入到输出的延迟必须小于一个可以接受的界限。这些定义都有一个共同的特点就是都承认实时系统的响应时间(输入到输出的时间)是极其重要的。因此,我们在此可以认为实时系统是指时效性对于保证正确性及其重要的系统,系统的正确性不仅依赖于计算结果的正确性,而且依赖于计算结果产生的时间是否满足给定的约束。在极端的情况下,这种约束被指定为时限,即一个时间值(从一个起始激励开始指定),在这个时间之前结果动作必须完成。实时系统常用的三种实时约束为:硬(hard)、软(soft)和严格(firm)38-40:(1) 硬实时约束:

45、滞后的响应是不正确的且说明系统出错,如果所产生的结果不符合时间约束,那么,由此带来的错误将是严重的和不可恢复的。超时响应可能会带来灾难性的后果。如核反应堆控制系统。(2) 软实时约束:用平均响应时间来说明时间要求。即如果一个计算滞后,一般并不产生显著的影响,但如果持续计算滞后则导致系统出错。如通信系统VOIP。虽然结果的产生不符合时间约束,但由此带来的错误是可以被接受和恢复的。(3) 严格实时约束:是硬和软时间限制的结合。允许偶尔错过截止时间,但超时的计算结果必须丢弃。实时约束规范需要通过增加注释和逻辑表达式,使用时序逻辑或在时序上构造形式化规范语言来对编程语言的扩展。时间可以是稠密的(den

46、se)或者离散的(discrete),因此,需要有不同的方法来合成和检验实时系统。一般地,检验一个系统是否满足实时性能目标主要可以从以下三步41:(1) 保证每一个应用的定时约束同实时系统的高层需求不矛盾,并保证各个独立组件的定时约束彼此一致。(2) 如果各个组件所要求的资源都具备的话,要保证所有组件单独执行是都能满足他们的定时约束。(3) 当把所有的应用放在一起竞争系统所有可用资源,并按照现时操作系统和网络所用的算法一起调度时,要保证这些应用总能满足定时约束。总之,在实时系统中,时间是一种重要的资源,对外部事件的响应和任务执行都必须在限定的时间内完成。在分布式系统中,还必须在限定时间内完成消息的发送和接收。实时系统输出结果的正确性不仅取决于计算所形成的逻辑结果,还要取决于结果产生的时间。2.1.2 实时系统的特征及要求实时系统不但具有一般系统的特性,而且还具有自身特征:(1) 嵌入式:实时系统经常是嵌入式系统,一般嵌入式系统都必须满足一定的实时要求。(2) 与外部环境交互:实时系统必须能够接收外部环境的信号输入,然后在特定的时间范围内完成事件的处理,并给出正确的处理结果到外部环境。(3) 时间约束:实时系统必须在给定的时间范围内对输入事件做出响应,进行处理,不满足时间约束的处理被认为是错误的,可能会导致灾难性的后果。例如在飞机调度系统中,超时响应可能会导致两架飞机在半空

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

当前位置:首页 > 研究报告 > 信息产业


经营许可证编号:宁ICP备18001539号-1