dSL: An Environment with Automatic Code Distribution for Industrial Control Systems

  • Bram De Wachter
  • Thierry Massart
  • Cédric Meuter
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3144)


We present and motivate the definition and use of the language and environment dSL, an imperative and event driven language designed to program distributed industrial control systems. dSL provides transparent code distribution using simple mechanisms. Its use allows the industrial control system’s designer to concentrate on the sequences of control required; the dSL compiler-distributer taking into account the distribution aspects. We show the advantages of our approach compared to others proposed using e.g. shared memory or synchronous languages like Esterel, Lustre or Signal.


Industrial process control transparent code distribution execution migration 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Aubry, P.: Mises en oeuvre distribues de programmes synchrones (thèse). Phd thesis, IFSIC, Rennes, France (October 1997)Google Scholar
  2. 2.
    Algorithms and min-max theorems for certain multiway cuts. In: Balas, E., Cornuéjols, G., Kannan, R. (eds.) Proc. of the 2nd Integer Programming and Combinatorial Optimization Conference, Carnegie Mellon University, May 1992, pp. 334–345 (1992)Google Scholar
  3. 3.
    Benveniste, A., Berry, G.: The synchronous approach to reactive and real-time systems. Proceedings of the IEEE 79, 1270–1282 (1991)CrossRefGoogle Scholar
  4. 4.
    Berry, G., Gonthier, G.: The esterel synchronous programming language: Design, semantics, implementation. Science of Computer Programming 19(2), 87–152 (1992)zbMATHCrossRefGoogle Scholar
  5. 5.
    Caspi, P., Pilaud, D., Halbwachs, N., Plaice, J.: Lustre: A declarative language for programming synchronous systems. In: Conf Rec 14th Ann ACM Symp. on Princ. Prog. Langs. (1987)Google Scholar
  6. 6.
    Castellani, I., Mukund, M., Thiagarajan, P.S.: Synthesizing Distributed Transition Systems from Global Specification. In: Foundations of Software Technology and Theoretical Computer Science, pp. 219–231 (1999)Google Scholar
  7. 7.
    DeWachter, B.: Code Distribution in the dsl Environment for the Synthesis of Industrial Process Control. Technical report, U.L.B., January 15 (2003)Google Scholar
  8. 8.
    DeWachter, B., Massart, T., Meuter, C.: An experiment on synthesis and verification of an industrial process control in the dsl environment. In: Proceedings of the 3rd Automated Verification of Critical Systems (AVoCS 2003), Technical Report DSSE-TR-2003-2, DSSE, Southampton (GB), April 2-3 (2003)Google Scholar
  9. 9.
    Dimitrov, B., Rego, V.: Arachne: A portable threads system supporting migrant threads on heterogeneous network farms. IEEE Transactions on Parallel and Distributed Systems 9(5), 459 (1998)CrossRefGoogle Scholar
  10. 10.
    Rasit Eskicioglu, M.: Design issues of process migration facilities in distributed systems. IEEE Computer Society Technical Committe on Operating Systems and Application Environments Newsletter 4, 3–13 (1990)Google Scholar
  11. 11.
    Girault, A.: Sur la Répartition de Programmes Synchrones. Phd thesis, INPG, Grenoble, France (January 1994)Google Scholar
  12. 12.
    Hennessy, J., Heinrich, M., Gupta, A.: Cache-coherent distributed shared memory: Perspectives on its development and future challenges. Proc. of the IEEE, Special Issue on Distributed Shared Memory 87(3), 418–429 (1999)Google Scholar
  13. 13.
    Jiang, H., Chaudhary, V.: Compile/run-time support for thread migration. In: Proceedings of the 16th International Parallel and Distributed Processing Symposium, Fort Lauderdale, Florida (April 2002)Google Scholar
  14. 14.
    Jiang, H., Chaudhary, V.: On improving thread migration: Safety and performance. In: Sahni, S.K., Prasanna, V.K., Shukla, U. (eds.) HiPC 2002. LNCS, vol. 2552, pp. 474–484. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  15. 15.
    LeGuernic, P., Gautier, T., LeBorgne, M., LeMaire, C.: Programming real time applications with signal. Proceedings of the IEEE 79(9), 1321–1336 (1991)CrossRefGoogle Scholar
  16. 16.
    Massart, T.: A calculus to define correct transformations of LOTOS specifications. In: Proceedings of the FORTE 1991 conference, pp. 281–296 (1992)Google Scholar
  17. 17.
    Milner, R.: Communication and Concurrency. PHI Series in Computer Science. Prentice-Hall, Englewood Cliffs (1989)zbMATHGoogle Scholar
  18. 18.
    Morin, C., Puaut, I.: A survey of recoverable distributed shared memory systems. IEEE Trans. on Parallel and Distributed Systems 8(9), 959–969 (1997)CrossRefGoogle Scholar
  19. 19.
    Nizeberg, B., Lo, V.: Distributed shared memory: A survey of issues and algorithms. IEEE Computer 24(8), 52–60 (1991)Google Scholar
  20. 20.
    Stefănescu, A., Esparza, J., Muscholl, A.: Syntesis of Distributed Algorithm. In: Amadio, R.M., Lugiez, D. (eds.) CONCUR 2003. LNCS, vol. 2761, pp. 27–41. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  21. 21.
    De Wachter, B., Massart, T., Meuter, C.: dsl: An environment with automatic code distribution for industrial control systems. Technical Report 512, ULB, Submitted to OPODIS 2003, 7th International Conference on Principles of Distributed Systems (2004)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2004

Authors and Affiliations

  • Bram De Wachter
    • 1
  • Thierry Massart
    • 1
  • Cédric Meuter
    • 1
  1. 1.Département d’InformatiqueUniversity of Brussels (ULB)Bruxelles

Personalised recommendations