实时设计语言RT-CDL的操作语义

L. Y. Liu, R. Shyamasundar
{"title":"实时设计语言RT-CDL的操作语义","authors":"L. Y. Liu, R. Shyamasundar","doi":"10.1145/75199.75212","DOIUrl":null,"url":null,"abstract":"Any methodology for the design of a complex system needs a basis for specification and verification. This is particularly so for realtime systems since safety and reliability ate extremely important for these systems. As a first step, we provide au operational semantics for the language RT-CDL (Real Time Common Design Language) employing Plotkin’s labeled transition systems using the maximal paraheliim model of Salwicki and Miildner. The language is based on the event-action model and is capable of (i) expressing various timing constraints, (ii) responding to various teal-time exceptions, and (iii) specifying, reasoning, verifying about programs in a compositional manner. We show how to model the behavior of non-buffered broadcasts, durational events, priority, interrupts, and preemptive commands through the semantics. Our approach is compositional and thus provides a firm basis for compositional specification and verification of pmgrams. 1. Motivation and Related Work One of the primary objectives of Ada has been the programmability of real-time embedded systems. However, the definition of Ada [3] allows a high-priority task to wait for a low-priority task for an unpredictable delay. Furthetmore. Ada lacks the power of hamessing the parallelism inherent in mal-time systems. For instance, in Ada, we caunot even interleave some of the operations that am possible in the monitor-based languages--which is a disadvantage at many times. The rendezvous mechanism places a lot of restriction with reference to realizing multiform clocks and harnessing parallelism. Another notable point is that even though the traditional description tools of industrial process control systems arc intrinsically parallel, it is paradoxical that the computerization of these systems results in the progressive replacement of these parallel tools by programming languages involving a great amount of sequential&y. There has been quite a substantial effort in looking for specification/programming languages for real-time distributed systems. However, if we look at requirements for real-time languages [41, we can come to the conclusion that most of these Permission to CODV without fee ah or Dart of this material is eranted provided that the &pies are not made or &stributed for direct com;hercial advantaee. the ACM couvricht notice and the title of the Dubhcation and its date>ppear, and no&% given that copying is by p&uission of the Association for Computing Machinery. To copy otherwise, or to republish, requires a fee and/oi specific permi&on. 01989 ACM 0-89791~305-1/89/0500/0075$00.75 languages fall short of expectations. For example, many languages do not provide any explicit means of correctly specifying timing constraints, or are limited to either delay or timeout statement [lo]. This limitation not only reduces the expressive power of languages (and hence cannot be used in certain applications such as switching and digital systems) but also makes it difficult to reason about the timing constraints of a given program text. RT-Euclid [8] is essentially a monitor-based language with features for expressing timebounded loops; however, achieving data integrity through mutualexclusion, again, is not desirable even in non-real-time languages WI. Let us take a look at some of the major efforts towards a desirable specification/programming language for real-time systems. A first systematic study of considering the reasons for the lack of suitable specification/programming languages tt~ulted in the language Esterel [2]. Esterel was designed for programming responsive systems assuming a snong synchrony hypothesis (i.e., control transfer and transmission of events am instantaneous) and thus overcame several of the deficiencies. In Estetel, there is no internal notion of time; the argument is that the local clock can be simulated through an external clock signal. Although such an assumption leads to efficient and nice stmctures, the assumption is questionable from a realistic point of view and may result in tbe causality problem (something like a short circuit cf. [ 11). One important feature of reactive systems is that they are primarily eventbased rather than transformational (state-based). With this view point, the efforts by Hatcl, Pnueli et al. started looking for pragmatic formalism (perhaps mixed specification and ptxgramming) that would aid in the design of reactive systems. Their study resulted in the formalisms referred to as Statecharts ([5,6]). This formalism is based on state diagrams (thus providing graphic design aid) overcoming some of the drawbacks of state diagrams such as flatness, sequential&y, etc. Statechatts cater for hierarchical specification and multi-level concurrency via the broadcast communication mechanism. Although the language has great exprcssive power, the semantic of some features, e.g., micro-steps, is not very well understood [7]. Furthermore, Statecharts lack data abstraction in the current form. Also, even though the current technology looks for systems which am not necessarily text-based (perhaps one could consider graphic objects as primitive objects), we feel that a graphic based system may provide only an aid rather than a complete basis in the development of large systems.","PeriodicalId":435917,"journal":{"name":"International Workshop on Software Specification and Design","volume":"46 2 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1989-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"9","resultStr":"{\"title\":\"An operational semantics of real time design language RT-CDL\",\"authors\":\"L. Y. Liu, R. Shyamasundar\",\"doi\":\"10.1145/75199.75212\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Any methodology for the design of a complex system needs a basis for specification and verification. This is particularly so for realtime systems since safety and reliability ate extremely important for these systems. As a first step, we provide au operational semantics for the language RT-CDL (Real Time Common Design Language) employing Plotkin’s labeled transition systems using the maximal paraheliim model of Salwicki and Miildner. The language is based on the event-action model and is capable of (i) expressing various timing constraints, (ii) responding to various teal-time exceptions, and (iii) specifying, reasoning, verifying about programs in a compositional manner. We show how to model the behavior of non-buffered broadcasts, durational events, priority, interrupts, and preemptive commands through the semantics. Our approach is compositional and thus provides a firm basis for compositional specification and verification of pmgrams. 1. Motivation and Related Work One of the primary objectives of Ada has been the programmability of real-time embedded systems. However, the definition of Ada [3] allows a high-priority task to wait for a low-priority task for an unpredictable delay. Furthetmore. Ada lacks the power of hamessing the parallelism inherent in mal-time systems. For instance, in Ada, we caunot even interleave some of the operations that am possible in the monitor-based languages--which is a disadvantage at many times. The rendezvous mechanism places a lot of restriction with reference to realizing multiform clocks and harnessing parallelism. Another notable point is that even though the traditional description tools of industrial process control systems arc intrinsically parallel, it is paradoxical that the computerization of these systems results in the progressive replacement of these parallel tools by programming languages involving a great amount of sequential&y. There has been quite a substantial effort in looking for specification/programming languages for real-time distributed systems. However, if we look at requirements for real-time languages [41, we can come to the conclusion that most of these Permission to CODV without fee ah or Dart of this material is eranted provided that the &pies are not made or &stributed for direct com;hercial advantaee. the ACM couvricht notice and the title of the Dubhcation and its date>ppear, and no&% given that copying is by p&uission of the Association for Computing Machinery. To copy otherwise, or to republish, requires a fee and/oi specific permi&on. 01989 ACM 0-89791~305-1/89/0500/0075$00.75 languages fall short of expectations. For example, many languages do not provide any explicit means of correctly specifying timing constraints, or are limited to either delay or timeout statement [lo]. This limitation not only reduces the expressive power of languages (and hence cannot be used in certain applications such as switching and digital systems) but also makes it difficult to reason about the timing constraints of a given program text. RT-Euclid [8] is essentially a monitor-based language with features for expressing timebounded loops; however, achieving data integrity through mutualexclusion, again, is not desirable even in non-real-time languages WI. Let us take a look at some of the major efforts towards a desirable specification/programming language for real-time systems. A first systematic study of considering the reasons for the lack of suitable specification/programming languages tt~ulted in the language Esterel [2]. Esterel was designed for programming responsive systems assuming a snong synchrony hypothesis (i.e., control transfer and transmission of events am instantaneous) and thus overcame several of the deficiencies. In Estetel, there is no internal notion of time; the argument is that the local clock can be simulated through an external clock signal. Although such an assumption leads to efficient and nice stmctures, the assumption is questionable from a realistic point of view and may result in tbe causality problem (something like a short circuit cf. [ 11). One important feature of reactive systems is that they are primarily eventbased rather than transformational (state-based). With this view point, the efforts by Hatcl, Pnueli et al. started looking for pragmatic formalism (perhaps mixed specification and ptxgramming) that would aid in the design of reactive systems. Their study resulted in the formalisms referred to as Statecharts ([5,6]). This formalism is based on state diagrams (thus providing graphic design aid) overcoming some of the drawbacks of state diagrams such as flatness, sequential&y, etc. Statechatts cater for hierarchical specification and multi-level concurrency via the broadcast communication mechanism. Although the language has great exprcssive power, the semantic of some features, e.g., micro-steps, is not very well understood [7]. Furthermore, Statecharts lack data abstraction in the current form. Also, even though the current technology looks for systems which am not necessarily text-based (perhaps one could consider graphic objects as primitive objects), we feel that a graphic based system may provide only an aid rather than a complete basis in the development of large systems.\",\"PeriodicalId\":435917,\"journal\":{\"name\":\"International Workshop on Software Specification and Design\",\"volume\":\"46 2 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"1989-04-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"9\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"International Workshop on Software Specification and Design\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1145/75199.75212\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"International Workshop on Software Specification and Design","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/75199.75212","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 9

摘要

任何设计复杂系统的方法都需要一个规范和验证的基础。对于实时系统尤其如此,因为安全性和可靠性对这些系统极其重要。作为第一步,我们为RT-CDL(实时通用设计语言)语言提供了非操作语义,使用Plotkin的标记转换系统,使用Salwicki和mildner的最大para - helim模型。该语言基于事件-动作模型,能够(i)表达各种时间约束,(ii)响应各种实时异常,以及(iii)以组合方式指定,推理和验证程序。我们将展示如何通过语义对非缓冲广播、持续事件、优先级、中断和抢占命令的行为建模。我们的方法是组合的,因此为组合规范和程序验证提供了坚实的基础。1. Ada的主要目标之一是实时嵌入式系统的可编程性。然而,Ada的定义[3]允许高优先级的任务等待低优先级的任务,以获得不可预测的延迟。Furthetmore。Ada缺乏干扰非正常时间系统固有的并行性的能力。例如,在Ada中,我们甚至不能交叉执行一些在基于监视器的语言中可能执行的操作——这在很多时候是一个缺点。集合机制在实现多形式时钟和利用并行性方面存在很多限制。另一个值得注意的一点是,尽管工业过程控制系统的传统描述工具本质上是并行的,但这些系统的计算机化导致这些并行工具被涉及大量顺序的编程语言逐步取代,这是矛盾的。在为实时分布式系统寻找规范/编程语言方面已经付出了相当大的努力。然而,如果我们看一下对实时语言的要求[41],我们可以得出这样的结论:只要不是为了直接的商业利益而制作或分发这些材料,大多数免费的CODV许可都是允许的。美国计算机协会的版权通知、出版的标题和出版的日期都出现了,而且没有&%,因为复制是由美国计算机协会授权的。以其他方式复制或重新发布,需要付费和/或特定许可。01989 ACM 0-89791~305-1/89/0500/0075$00.75语言达不到预期。例如,许多语言没有提供任何正确指定时间约束的显式方法,或者仅限于延迟或超时语句[lo]。这种限制不仅降低了语言的表达能力(因此不能在某些应用程序中使用,例如开关和数字系统),而且还使对给定程序文本的时间约束进行推理变得困难。RT-Euclid[8]本质上是一种基于监视器的语言,具有表达有界循环的特征;然而,即使在非实时语言WI中,通过互斥来实现数据完整性也是不可取的。让我们看一下为实时系统提供理想的规范/编程语言所做的一些主要努力。对于缺乏合适的规范/编程语言的原因的第一次系统研究始于语言Esterel[2]。Esterel设计用于编程响应性系统,假设非同步假设(即,事件的控制转移和传输是瞬时的),因此克服了几个缺陷。在埃斯特尔,没有内在的时间概念;其论点是,本地时钟可以通过外部时钟信号进行模拟。虽然这样的假设导致了高效和良好的结构,但从现实的角度来看,这个假设是值得怀疑的,并且可能导致因果关系问题(类似于短路,参见[11])。响应式系统的一个重要特征是,它们主要是基于事件的,而不是基于转换的(基于状态的)。从这个角度来看,Hatcl、Pnueli等人开始寻找实用的形式主义(可能是混合规范和ptxgramming),这将有助于设计响应式系统。他们的研究产生了被称为Statecharts的形式([5,6])。这种形式基于状态图(从而提供图形设计辅助),克服了状态图的一些缺点,如平面性、顺序性等。Statechatts通过广播通信机制满足分层规范和多级并发性。虽然语言具有很强的表达能力,但一些特征的语义,如微步,并不是很好地理解[7]。此外,Statecharts缺乏当前形式的数据抽象。 此外,尽管当前的技术寻找的系统不一定是基于文本的(也许可以将图形对象视为原始对象),但我们认为基于图形的系统在大型系统的开发中可能只提供了一个辅助而不是一个完整的基础。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
An operational semantics of real time design language RT-CDL
Any methodology for the design of a complex system needs a basis for specification and verification. This is particularly so for realtime systems since safety and reliability ate extremely important for these systems. As a first step, we provide au operational semantics for the language RT-CDL (Real Time Common Design Language) employing Plotkin’s labeled transition systems using the maximal paraheliim model of Salwicki and Miildner. The language is based on the event-action model and is capable of (i) expressing various timing constraints, (ii) responding to various teal-time exceptions, and (iii) specifying, reasoning, verifying about programs in a compositional manner. We show how to model the behavior of non-buffered broadcasts, durational events, priority, interrupts, and preemptive commands through the semantics. Our approach is compositional and thus provides a firm basis for compositional specification and verification of pmgrams. 1. Motivation and Related Work One of the primary objectives of Ada has been the programmability of real-time embedded systems. However, the definition of Ada [3] allows a high-priority task to wait for a low-priority task for an unpredictable delay. Furthetmore. Ada lacks the power of hamessing the parallelism inherent in mal-time systems. For instance, in Ada, we caunot even interleave some of the operations that am possible in the monitor-based languages--which is a disadvantage at many times. The rendezvous mechanism places a lot of restriction with reference to realizing multiform clocks and harnessing parallelism. Another notable point is that even though the traditional description tools of industrial process control systems arc intrinsically parallel, it is paradoxical that the computerization of these systems results in the progressive replacement of these parallel tools by programming languages involving a great amount of sequential&y. There has been quite a substantial effort in looking for specification/programming languages for real-time distributed systems. However, if we look at requirements for real-time languages [41, we can come to the conclusion that most of these Permission to CODV without fee ah or Dart of this material is eranted provided that the &pies are not made or &stributed for direct com;hercial advantaee. the ACM couvricht notice and the title of the Dubhcation and its date>ppear, and no&% given that copying is by p&uission of the Association for Computing Machinery. To copy otherwise, or to republish, requires a fee and/oi specific permi&on. 01989 ACM 0-89791~305-1/89/0500/0075$00.75 languages fall short of expectations. For example, many languages do not provide any explicit means of correctly specifying timing constraints, or are limited to either delay or timeout statement [lo]. This limitation not only reduces the expressive power of languages (and hence cannot be used in certain applications such as switching and digital systems) but also makes it difficult to reason about the timing constraints of a given program text. RT-Euclid [8] is essentially a monitor-based language with features for expressing timebounded loops; however, achieving data integrity through mutualexclusion, again, is not desirable even in non-real-time languages WI. Let us take a look at some of the major efforts towards a desirable specification/programming language for real-time systems. A first systematic study of considering the reasons for the lack of suitable specification/programming languages tt~ulted in the language Esterel [2]. Esterel was designed for programming responsive systems assuming a snong synchrony hypothesis (i.e., control transfer and transmission of events am instantaneous) and thus overcame several of the deficiencies. In Estetel, there is no internal notion of time; the argument is that the local clock can be simulated through an external clock signal. Although such an assumption leads to efficient and nice stmctures, the assumption is questionable from a realistic point of view and may result in tbe causality problem (something like a short circuit cf. [ 11). One important feature of reactive systems is that they are primarily eventbased rather than transformational (state-based). With this view point, the efforts by Hatcl, Pnueli et al. started looking for pragmatic formalism (perhaps mixed specification and ptxgramming) that would aid in the design of reactive systems. Their study resulted in the formalisms referred to as Statecharts ([5,6]). This formalism is based on state diagrams (thus providing graphic design aid) overcoming some of the drawbacks of state diagrams such as flatness, sequential&y, etc. Statechatts cater for hierarchical specification and multi-level concurrency via the broadcast communication mechanism. Although the language has great exprcssive power, the semantic of some features, e.g., micro-steps, is not very well understood [7]. Furthermore, Statecharts lack data abstraction in the current form. Also, even though the current technology looks for systems which am not necessarily text-based (perhaps one could consider graphic objects as primitive objects), we feel that a graphic based system may provide only an aid rather than a complete basis in the development of large systems.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信