Skip to main content

Preemption in concurrent systems

  • Invited Talk
  • Conference paper
  • First Online:
Foundations of Software Technology and Theoretical Computer Science (FSTTCS 1993)

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

Abstract

Process preemption deals with contolling the life and death of concurrent processes. Well-defined preemption mechanisms are essential in control-dominated reactive and real-time programming, and accurate handling of preemption requires a time-dependent model. We first informally discuss what preemption is about and argue for the need of preemption primitives that are fully orthogonal with sequencing and concurrency ones. Then, we formally present the preemption operators of the Esterel zero-delay process calculus, which is a theoretical version of the Esterel synchronous programming language.

Work supported by the CONFER Esprit Basic Research Action and by IFCPAR, Indo-French Center for the Promotion of Advanced Research, New Delhi, India.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. G. Berry. Real-time programming: General purpose or special-purpose languages. In G. Ritter, editor, Information Processing 89, pages 11–17. Elsevier Science Publishers B.V. (North Holland), 1989.

    Google Scholar 

  2. G. Berry. Programming a digital watch in Esterel v3-2. Rapport de recherche 08/91, Centre de Mathématiques Appliquées, Ecole des Mines de Paris, Sophia-Antipolis, 1991.

    Google Scholar 

  3. G. Berry. Esterel on hardware. Philosophical Transactions Royal Society of London A, 339:87–104, 1992.

    Google Scholar 

  4. G. Berry. A hardware implementation of pure Esterel. Sadhana, Academy Proceedings in Engineering Sciences, Indian Academy of Sciences, 17(1):95–130, 1992. Rapport Centre de Mathématiques Appliquées de l'Ecole des Mines de Paris, numéro 06/91.

    Google Scholar 

  5. G. Berry. The semantics of pure esterel. In Proc Marktoberdorf Intl. Summer School on Program Design Calculi, LNCS, to appear. Springer-Verlag, 1993.

    Google Scholar 

  6. G. Berry and A. Benveniste. The synchronous approach to reactive and real-time systems. Another Look at Real Time Programming, Proceedings of the IEEE, 79:1270–1282, 1991.

    Google Scholar 

  7. G. Berry and G. Gonthier. Incremental development of an hdlc entity in Esterel. Comp. Networks and ISDN Systems, 22:35–49, 1991.

    Google Scholar 

  8. G. Berry and G. Gonthier. The Esterel synchronous programming language: Design, semantics, implementation. Science Of Computer Programming, 19(2):87–152, 1992.

    Google Scholar 

  9. G. Boudol. Notes on algebraic calculi of processes. In K. Apt, editor, Logic and Models of Concurrent Systems. NATO ASI Series F13, 1985.

    Google Scholar 

  10. F. Boussinot. Une sémantique du langage Esterel. Research Report 577, INRIA, 1986.

    Google Scholar 

  11. F. Boussinot. Programming a reflex game in Esterel v3-2. Rapport de recherche 07/91, Centre de Mathématiques Appliquées, Ecole des Mines de Paris, Sophia-Antipolis, 1991.

    Google Scholar 

  12. F. Boussinot. Reactive c: an extension of c to program reactive systems. Software Practice and Experience, 21(4):401–428, 1991.

    Google Scholar 

  13. F. Boussinot and R. de Simone. The Esterel language. Another Look at Real Time Programming, Proceedings of the IEEE, 79:1293–1304, 1991.

    Google Scholar 

  14. E. Brinksma. Information Processing Systems — Open Systems Interconnection — A Formal Description Technique base upon the Temporal Ordering of Observable Behavior. International Standard ISO8807, 1988.

    Google Scholar 

  15. E. M. Clarke, D.E. Long, and K. L. McMillan. A language for compositional specification and verification of finite state hardware controllers. Another Look at Real Time Programming, Proceedings of the IEEE, Special Issue, Sept. 1991.

    Google Scholar 

  16. D. Clément and J. Incerpi. Programming the behavior of graphical objects using Esterel. In TAPSOFT '89, Springer-Verlag LNCS 352, 1989.

    Google Scholar 

  17. G. Cousineau. An algebraic definition for control structures. Theoretical Computer Science, 12:175–192, 1980.

    Google Scholar 

  18. G. Gonthier. Sémantique et modèles d'exécution des langages réactifs synchrones; application à Esterel. Thèse d'informatique, Université d'Orsay, 1988.

    Google Scholar 

  19. P. Le Guernic, M. Le Borgne, T. Gauthier, and C. Le Maire. Programming real time applications with signal. Another Look at Real Time Programming, Proceedings of the IEEE, Special Issue, Sept. 1991.

    Google Scholar 

  20. N. Halbwachs, P. Caspi, and D. Pilaud. The synchronous dataflow program ming language lustre. Another Look at Real Time Programming, Proceedings of the IEEE, Special Issue, Sept. 1991.

    Google Scholar 

  21. D. Harel. Statecharts: a visual approach to complex systems. Science of Computer Programming, 8:231–274, 1987.

    Google Scholar 

  22. C. A. R. Hoare. Communicating Sequential Processes. Prentice Hall, 1985.

    Google Scholar 

  23. Sharad Malik. Analysis of cyclic combinational circuits. In Proc. Int. Workshop On Logic Synthesis, Lake Tahoe, 1993.

    Google Scholar 

  24. R. Milner. Communication and Concurrency. Series in Computer Science. Prentice Hall, 1989.

    Google Scholar 

  25. G. Murakami and Ravi Sethi. Terminal call processing in Esterel. In Proc. IFIP 92 World Computer Congress, Madrid, Spain, 1992.

    Google Scholar 

  26. J. Perraud, O. Roux, and Marc Huou. Operational semantics of a kernel of the language electre. Theoretical Computer Science, 97(1), 1992.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Rudrapatna K. Shyamasundar

Rights and permissions

Reprints and permissions

Copyright information

© 1993 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Berry, G. (1993). Preemption in concurrent systems. In: Shyamasundar, R.K. (eds) Foundations of Software Technology and Theoretical Computer Science. FSTTCS 1993. Lecture Notes in Computer Science, vol 761. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-57529-4_44

Download citation

  • DOI: https://doi.org/10.1007/3-540-57529-4_44

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-540-48211-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics