Abstract
PEARL is a widely-used, standardised, industrial process-control programming language. The programs, that are written in PEARL, are typically expected to operate in a predictable, timely, reliable manner. Developing such programs is no easy task. Yet, with the invent of the experimental programming language Real-Time Euclid and its schedulability analyser, a tool that is used to predict whether real-time software will adhere to its critical timing constraints, it has been demonstrated that this task may be made considerably easier.
In this paper, we describe how PEARL may be modified to be better suitable for real-time application writing, and to accommodate schedulability analysis. We aim to contribute to the current revision of PEARL, and define a new standard we refer to as High-Integrity (HI) PEARL. Building on the powerful foundation of the existing PEARL definition, and further enhanced with the mechanisms introduced by Real-Time Euclid, HI-PEARL should be the top choice of the real-time programmer of the 90’s and the decades to follow.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
DIN 44 300, Informationsverarbeitung, Beuth-Verlag, Berlin, 1985.
IBM Corporation, Specifications for the IBM Mathematical FORmula TRANslating System, FORTRAN, New York, November 1954.
U.S. Department of Defence, COBOL, Initial Specifications for a Common Business Oriented Language, 1960.
The Programming Language Ada Reference Manual, American National Standards Institute, Inc., ANSI/MIL-STD-1815A-1983. Lecture Notes in Computer Science 155, Springer-Verlag, Berlin-Heidelberg-New York-Tokyo, 1983.
C. D. Williams, “The Data Acquisition, Data Reduction and Control System (DARCS) for the NRCC 2×3m Windtunnel,” Proceedings of the IEEE 1984 Real-Time Systems Symposium, December 1984, pp. 89–94.
P. W. Kelton, “Distributed Computing for Astronomical Data Acquisition at McDonald Observatory,” Proceedings of the IEEE 1984 Real-Time Systems Symposium, December 1984, pp. 83–88.
G. Kaplan, “The X-29: Is it coming or going?,” IEEE Spectrum, June 1985, pp. 54–60.
G. D. Carlow, “Architecture of the Space Shuttle Primary Avionics Software System,” Communications of the ACM, Vol. 27, No. 9, September 1984, pp. 926–936.
B. M. Aucoin, R. P. Heller, “Overcurrent and High Impedance Fault Relaying using a Microcomputer,” Proceedings of the 7th Texas Conference on Computing Systems, November 1978, pp. 2.5–2.9.
E. T. Fathi, N. R. Fines, “Real-Time Data Acquisition, Processing and Distribution for Radar Applications,” Proceedings of the IEEE 1984 Real-Time Systems Symposium, December 1984, pp. 95–101.
V. P. Nelson, H. L. Fellows, Jr., “A Microcomputer-Based Controller for an Amusement Park Ride,” IEEE Micro, August 1981, pp. 13–22.
W. A. Halang, A. D. Stoyenko, “Comparative Evaluation of High-Level Real-Time Programming Languages,” to appear in International Journal of Real-Time Systems, 1990.
A. D. Stoyenko, E. Kligerman, “Real-Time Euclid: A Language for Reliable Real-Time Systems,” IEEE Transactions on Software Engineering, Volume 12, Number 9, September 1986. Also in Hard-Real-Time Systems, edited by J. Stankovic and K. Ramamritham, IEEE Press, Maryland, 1988.
A. D. Stoyenko, A Real-Time Language With A Schedulability Analyzer, Ph.D. Thesis, University of Toronto, 1987. Also available as Computer Systems Research Institute, University of Toronto, Technical Report CSRI-206.
A. D. Stoyenko, “A Schedulability Analyzer for Real-Time Euclid,” IEEE 1987 Real-Time Systems Symposium, San Jose, California.
A. D. Stoyenko, V. C. Hamacher, R. C. Holt, “Schedulability Analysis of Hard-Real-Time Programs,” second revision, submitted in 1987 to IEEE Transactions on Software Engineering.
J. W. S. Liu, S. Natarjan, “Expressing and Maintaining Timing Constraints in FLEX,” Proceedings of the IEEE 1988 Real-Time Systems Symposium, December 1988.
M. Donner, D. Jameson, “Language and Operating Systems Features for Real-Time Programming,” Computing Systems, Winter 1988.
Y. Ishikawa, H. Tokuda, C. W. Mercer, Object-Oriented Real-Time Language Design: Constructs for Timing Constraints, Department of Computer Science, Carnegie Mellon University, Technical Report CMU-CS-90–111, March 1990.
A. Shaw, Reasoning About Time in Higher-Level Language Software, Department of Computer Science, University of Washington, Technical Report 87–08-05, August 1987.
R. L. Glass, “Real-Time: The “Lost World” of Software Debugging and Testing,” Communications of the ACM, Vol. 23, No. 5, pp. 264–271, May 1980.
DIN 66 253, Programming Language PEARL (Programmiersprache PEARL), Teil 1 Basic PEARL, 1981; Teil 2 Full PEARL, Beuth-Verlag, Berlin, 1982.
G. Berry, “Real Time Programming: Special Purpose or General Purpose Languages,” Proceedings of the 11th IFIP World Computer Congress, San Francisco, 1989.
DIN 66 253, Programmiersprache PEARL — Mehrrechner-PEARL, Teil 3, Beuth-Verlag, Berlin, 1989.
N. Wirth, “The Programming Language Pascal,” Acta Informatica 1, 1971, pp. 35–63.
R. C. Holt et al., “Euclid: A language for producing quality software,” Proceedings of the National Computer Conference, Chicago, May 1981.
J. R. Cordy, R. C. Holt, Specification of Concurrent Euclid, Technical Report CSRG-133, Computer Systems Research Group, University of Toronto, August 1981.
C. A. R. Hoare, “Monitors: An Operating System Structuring Concept,” Communications of the ACM, Vol. 17, No. 10, October 1974, pp. 549–557.
W. A. Halang, “A Proposal for Extensions of PEARL to Facilitate the Formulation of Hard Real-Time Applications,” Informatik-Fachberichte 86, pp. 573–582, Springer-Verlag, Berlin-Heidelberg-New York-Tokyo, 1984.
W. A. Halang, R. Henn, “Additional PEARL Language Structures for the Implementation of Reliable and Inherently Safe Real-Time Systems,” Proceedings of the 15th IFAC/IFIP Workshop on Real Time Programming, pp. 35–42, Pergamon Press, Oxford, 1988.
W. Ehrenberger, “Softwarezuverlässigkeit und Programmiersprache,” PEARL-Rundschau, Vol. 3, No. 2, 1982, pp. 49–55.
A. D. Stoyenko, W. A. Halang, “A Proposal for High-Integrity (HI) PEARL: An Industrial Standard Language for High-Integrity Applications,” working paper, 1990.
A. D. Stoyenko, W. A. Halang, “Analysing PEARL Programs for Timely Executability and Schedulability” (“Analyse zeitgerechter Zuteilbarkeit und Ausführbarkeit von PEARL-Programmen”), to appear in Proceedings of Fachtagung Prozessrechensysteme’91, Berlin, Germany, February 1991.
D. W. Leinbaugh, “Guaranteed Response Times in a Hard-Real-Time Environment,” IEEE Transactions on Software Engineering, Vol. SE-6, No. 1, January 1980, pp. 85–91.
D. W. Leinbaugh, M.-R. Yamini, “Guaranteed Response Times in a Distributed Hard-Real-Time Environment,” Proceedings of the IEEE 1982 Real-Time Systems Symposium, December 1982, pp. 157–169.
C. L. Liu, J. W. Layland, “Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment,” JACM, Vol. 20, No. 1, January 1973, pp. 46–61.
A. K. Mok, “The Design of Real-Time Programming Systems Based on Process Models,” Proceedings of the IEEE 1984 Real-Time Systems Symposium, December 1984, pp. 5–17.
A. K. Mok, M. L. Dertouzos, “Multiprocessor Scheduling in a Hard-Real-Time Environment,” Proceedings of the 7th Texas Conference on Computing Systems, November 1978, pp. 5.1–5.12.
K. Ramamritham, J. A. Stankovic, “Dynamic Task Scheduling in Distributed Hard Real-Time Systems,” Proceedings of the IEEE 4th International Conference on Distributed Computing Systems, May 1984, pp. 96–107.
K. Ramamritham, J. A. Stankovic, S. Cheng, “Evaluation of a Flexible Task Scheduling Algorithm for Distributed Hard Real-Time Systems,” IEEE Transactions on Computers, Vol. C-34, No. 12, December 1985, pp. 1130–1143.
P. G. Sorenson, A Methodology for Real-Time System Development, Ph.D. Thesis, Department of Computer Science, University of Toronto, 1974.
P. G. Sorenson, V. C. Hamacher, “A Real-Time System Design Methodology,” INFOR, Vol. 13, No. 1, February 1975, pp. 1–18.
A. D. Stoyenko, Real-Time Systems: Scheduling and Structure, M.Sc. Thesis, Department of Computer Science, University of Toronto, 1984.
T. J. Teixeira, “Static Priority Interrupt Scheduling,” Proceedings of the 7th Texas Conference on Computing Systems, November 1978, pp. 5.13–5.18.
W, Zhao, K. Ramamritham, “Distributed Scheduling Using Bidding and Focused Addressing,” Proceedings of the IEEE 1985 Real-Time Systems Symposium, December 1985, pp. 103–111.
A. D. Stoyenko, The State of the Art in Hard-Real-Time Modeling and Languages, Ph.D. Qualifying Paper, Department of Computer Science, University of Toronto, May 1986.
M. R. Garey, D. S. Johnson, “Complexity Results for Multiprocessor Scheduling under Resource Constraints,” SIAM Journal on Computing, Vol. 4, No. 4, December 1975, pp. 397–411.
J. D. Ullman, “Polynomial complete scheduling problems,” Proceedings of the 4th Symposium on OS Principles, 1973, pp. 96–101.
S. A. Thurlow, Simulation of a Real Time Control System Using the Real-Time Euclid Programming Language, Student Project Report, Department of Computer Science, University of Toronto, April 1987.
G. Parnis, Simulation of Packet Level Handshaking in X.25 Using the Real-Time Euclid Programming Language, Student Project Report, Department of Computer Science, University of Toronto, April 1987.
A. D. Stoyenko, T. Marlowe, “Analysis of Real-Time Programs Using Hierarchical Clustering,” working paper, 1990.
W. A. Halang, S.-K. Jung, “A Concept of a Computer System for the Execution of Safety Critical Licensable Software Programmed in a High Level Language,” to appear in Proceedings of the IFAC SAFECOMP’90 Conference, London, U.K., October – November 1990.
W. A. Halang, A. D. Stoyenko, Constructing Predictable Real Time Systems, Kluwer Academic Publishers, Boston-Dordrecht-London, 1991.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1990 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Stoyenko, A.D. (1990). Real-Time Euclid: Concepts Useful for the Further Development of PEARL. In: Gerth, W., Baacke, P. (eds) PEARL 90 — Workshop über Realzeitsysteme. Informatik-Fachberichte, vol 262. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-46725-7_1
Download citation
DOI: https://doi.org/10.1007/978-3-642-46725-7_1
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-53464-8
Online ISBN: 978-3-642-46725-7
eBook Packages: Springer Book Archive