Principles of Real-Time Programming

  • Conference paper
  • First Online:
Embedded Software (EMSOFT 2002)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2491))

Included in the following conference series:

Abstract

Real-time programming is a software engineering discipline that has been around ever since the dawn of digital computing. The dream of real-time programmers is to unlock the virtually unlimited potential of software for embedded computer systems - digital computers that are supposed to behave like analog devices. The perfect embedded computer system is invisibly hybrid, it works according to the largely unidentified laws of embedded software but acts according to the laws of physics. The critical interface between embedded software and physics is real-time and yet, while physical processes evolve in real-time, software processes do not. Only the embedded computer system as a whole - embedded software and hardware - determines a complex notion of so-called soft-time to which the software processes adhere: map** soft-time to real-time is the art of real-time programming. We discuss various realtime programming models that support the development of real-time programs based on different abstractions of soft-time. We informally introduce a real-time process model to study (1) the compositionality of the real-time programming models and (2) the semantics of real-time programs developed in these models.

Supported in part by the DARPA SEC grant F33615-C-98-3614 and the MARCO GSRC grant 98-DT-660.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Subscribe and save

Springer+ Basic
EUR 32.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or Ebook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free ship** worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. G. Berry. The foundations of Esterel. In C. Stirling G. Plotkin and M. Tofte, editors, Proof, Language and Interaction: Essays in Honour of Robin Milner. MIT Press, 2000.

    Google Scholar 

  2. G. Berry, S. Ramesh, and R. K. Shyamasundar. Communicating reactive processes. In Conference Record of the Twentieth Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pages 85–98, 1993.

    Google Scholar 

  3. G. Buttazzo. Hard Real-Time Computing Systems: Predictable Scheduling Algorithms and Applications. Kluwer, 1997.

    Google Scholar 

  4. N. Halbwachs. Synchronous Programming of Reactive Systems. Kluwer, 1993.

    Google Scholar 

  5. N. Halbwachs, P. Caspi, P. Raymond, and D. Pilaud. The synchronous dataflow programming language Lustre. Proc. of the IEEE, 79(9), 1991.

    Google Scholar 

  6. T.A. Henzinger, B. Horowitz, and C.M. Kirsch. Giotto: A time-triggered language for embedded programming. In Proc. First International Workshop on Embedded Software (EMSOFT), LNCS 2211, pages 166–184. Springer Verlag, 2001.

    Google Scholar 

  7. T.A. Henzinger and C.M. Kirsch. The Embedded Machine: predictable, portable real-time code. In Proc. ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), pages 315–326, 2002.

    Google Scholar 

  8. T.A. Henzinger, C.M. Kirsch, R. Majumdar, and S. Matic. Time safety checking for embedded programs. In Proc. Second International Workshop on Embedded Software (EMSOFT), LNCS. Springer Verlag, 2002.

    Google Scholar 

  9. C.M. Kirsch, M.A.A. Sanvido, T.A. Henzinger, and W. Pree. A Giotto-based helicopter control system. In Proc. Second International Workshop on Embedded Software (EMSOFT), LNCS. Springer Verlag, 2002.

    Google Scholar 

  10. E.A. Lee. Embedded software. In M. Zelkowitz, editor, Advances in Computers, volume 56. Academic Press, 2002.

    Google Scholar 

  11. C. Liu and J. Layland. Scheduling algorithms for multiprogramming in a hard-real-time environment. Journal of the ACM, 20(1), 1973.

    Google Scholar 

  12. S. Malik and Y.-T. Li. Performance Analysis of Real-Time Embedded Software. Kluwer, 1999.

    Google Scholar 

  13. D. Pilaud and N. Halbwachs. From a synchronous declarative language to a temporal logic dealing with multiform time. In Proc. of the Symposium on Formal Techniques in Real-Time and Fault-Tolerant Systems, LNCS 331, pages 99–110. Springer Verlag, 1988.

    Google Scholar 

  14. J. Sifakis. Modeling real-time systems-challenges and work directions. In Proc. First International Workshop on Embedded Software (EMSOFT), LNCS 2211, pages 373–389. Springer Verlag, 2001.

    Google Scholar 

  15. N. Wirth. Toward a discipline of real-time programming. Communications of the ACM, 20(8):577–583, 1977.

    Article  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2002 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Kirsch, C.M. (2002). Principles of Real-Time Programming. In: Sangiovanni-Vincentelli, A., Sifakis, J. (eds) Embedded Software. EMSOFT 2002. Lecture Notes in Computer Science, vol 2491. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45828-X_6

Download citation

  • DOI: https://doi.org/10.1007/3-540-45828-X_6

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-44307-0

  • Online ISBN: 978-3-540-45828-9

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics

Navigation