Abstract
We present a notation and a methodology for specifying the functional and timing behavior of real-time applications for a heterogeneous machine. In our methodology we build upon well-defined, though isolated, pieces of previous work: Larch and Real Time Logic. In our notation, we strive to keep separate the functional specification from the timing specification so that a task's functionality can be understood independently of its timing behavior. We show that while there is a clean separation of concerns between these two specifications, the semantics of both pieces as well as their combination are simple.
This research is carried out jointly by the Software Engineering Institute, a Federally Funded Research and Development Center, sponsored by the Department of Defense, and by the Department of Computer Science, sponsored by the Defense Advanced Research Projects Agency (DOD), ARPA Order No. 4976, monitored by the Air Force Avionics Laboratory Under Contract F33615-84-K-1520. Additional support for J.M. Wing was provided in part by the National Science Foundation under grant DMC-8519254.
The views and conclusions contained in this document are those of the authors and should not be interpreted as representing official policies, either expressed or implied, of the Software Engineering Institute, Carnegie-Mellon University, the National Science Foundation, the Department of Defense or the US Government.
Preview
Unable to display preview. Download preview PDF.
References
W.B. Ackerman. Data Flow Languages. IEEE-CS Computer 15(2), February, 1982.
E.A. Ashcroft and W.W. Wadge. LUCID: The Data Flow Programming Language. Academic Press, 1985.
M.R. Barbacci and J.M. Wing. Durra: A Task-level Description Language. Technical Report CMU/SEI-86-TR-3, Software Engineering Institute, Carnegie Mellon University, 1986.
J-L. Bergerand, P. Caspi, N. Halbwachs, D. Pilaud, and E. Pilaud. Outline of a Real Time Data Flow Language. In Procedings of the IEEE-CS Real Time Systems Symposium, pages 33–42. IEEE Computer Society Press, December, 1985.
G. Birkhoff and J.D. Lipson. Heterogeneous Algebras. Journal of Combinatorial Theory 8:115–133, 1970.
R.M. Burstall, and J.A. Goguen. Putting Theories Together to Make Specifications. In Fifth International Joint Conference on Artificial Intelligence, pages 1045–1058. August, 1977. Invited paper.
R.H. Campbell and A.N. Habermann. The Specification of Process Synchronization by Path Expressions. Lecture Notes in Computer Science. Springer-Verlag, 1974, pages 89–102.
P. Caspi, D. Pilaud, N. Halbwachs, and J.A. Plaice. LUSTRE: A Declarative Language for Programming Synchronous Systems. In Procedings of the 14th Annual ACM Symposium on Principles of Programming Languages, pages 178–188. ACM, January, 1987.
J.E. Coolahan and N. Roussopulos. A Timed Petri Net Methodology for Specifying Real-Time System Requirements. In International Workshop on Timed Petri Nets, pages 24–31. IEEE Computer Society Press, Torino, Italy, July, 1985.
Dasarthy. Timing Constraints of Real-Time Systems: Constructs for Expressing Them, Methods of Validating Them. IEEE Transactions on Software Engineering 11(1):80–86, January, 1985.
H. Ehrig and B. Mahr. Fundamentals of Algebraic Specification 1. Springer-Verlag, 1985.
J.A. Goguen, J.W. Thatcher, E.G. Wagner, and J.B. Wright. Abstract Data Types as Initial Algebras and Correctness of Data Representations. In Proceedings from the Conference of Computer Graphics, Pattern Recognition and Data Structures, pages 89–93. ACM, May, 1975.
D.I. Good, R.M. Cohen, C.G. Hoch, L.W. Hunter, and D.F. Hare. Report on the Language Gypsy, Version 2.0. Technical Report ICSCA-CMP-10, Certifiable Minicomputer Project, The University of Texas at Austin, September, 1978.
J.V. Guttag. The Specification and Application to Programming of Abstract Data Types. PhD thesis, University of Toronto, Toronto, Canada, September, 1975.
J.V. Guttag, J.J. Horning, and J.M. Wing. Larch in Five Easy Pieces. Technical Report 5, DEC Systems Research Center, July, 1985.
J.V. Guttag, J.J. Horning, and J.M. Wing. The Larch Family of Specification Languages. IEEE Software 2(5):24–36, September, 1985.
C.A.R. Hoare. An axiomatic basis for computer programming. Communications of the ACM 12(10):576–583, October, 1969.
C.A.R. Hoare. Proof of Correctness of Data Representations. Acta Informatica 1(1):271–281, 1972.
F. Jahanian and A.K. Mok. Safety Analysis of Timing Properties in Real-Time Systems. IEEE Transactions on Software Engineering 12(9):890–904, September, 1986.
I. Lee, and V. Gehlot. Language Constructs for Distributed Real-Time Programming. In Proceedings of the Real-Time Systems Symposium, pages 57–66. San Diego, December, 1985.
P. Lescanne. Computer Experiments with the REVE Term Rewriting System Generator. In Proceedings of Tenth Symposium on Principles of Programming Languages, pages 99–108. ACM, Austin, Texas, January, 1983.
D.R. Musser. Abstract Data Type Specification in the Affirm System. IEEE Transactions on Software Engineering 6(1):24–32, January, 1980.
C. Ramchandani. Analysis of Asynchronous Concurrent Systems by Petri Nets. Technical Report TR-120, MIT Project MAC, 1974.
L. Robinson, and O. Roubine. SPECIAL — A Specification and Assertion Language. Technical Report CSL-46, Stanford Research Institute, Menlo Park, Ca., January, 1977.
J. Scheid and S. Anderson. The Ina Jo Specification Language Reference Manual. Technical Report TM-(L)-6021/001/00, System Development Corporation, Santa Monica, CA, March, 1985.
J. Sifakis. Use of Petri Nets for Performance Evaluation. In Proceedings of the IFIP Third International Workshop on Modeling and Performance Evaluation of Computer Systems, pages 75–93. North-Holland Publishing Co., Amsterdam, The Netherlands, 1977.
C.U. Smith. Robust Models for the Performance Evaluation of Hardware/Software Designs. In International Workshop on Timed Petri Nets, pages 172–180. IEEE Computer Society Press, Torino, Italy, July, 1985.
C.Y. Wong, T.S. Dillon, and K.E. Forward. Timed Places Petri Nets With Stochastic Representation of Place Time. In International Workshop on Timed Petri Nets, pages 96–103. IEEE Computer Society Press, Torino, Italy, July, 1985.
W.M. Zuberek. Performance Evaluation Using Extended Timed Petri-nets. In International Workshop on Timed Petri Nets, pages 272–278. IEEE Computer Society Press, Torino, Italy, July, 1985.
A. Zwarico and I. Lee. Proving a Network of Real-time Processes Correct. In Proceedings of Real-Time Systems Symposium, pages 169–177. San Diego, December, 1985.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1987 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Barbacci, M.R., Wing, J.M. (1987). Specifying functional and timing behavior for real-time applications. In: de Bakker, J.W., Nijman, A.J., Treleaven, P.C. (eds) PARLE Parallel Architectures and Languages Europe. PARLE 1987. Lecture Notes in Computer Science, vol 259. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-17945-3_7
Download citation
DOI: https://doi.org/10.1007/3-540-17945-3_7
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-17945-0
Online ISBN: 978-3-540-47181-3
eBook Packages: Springer Book Archive