Clix — A Hybrid Programming Environment for Distributed Objects and Distributed Shared Memory

  • Frank Mueller
  • Jörg Nolte
  • Alexander Schlaefer
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1800)


Parallel programming with distributed object technology becomes increasingly popular but shared-memory programming is still a common way of utilizing parallel machines. In fact, both models can coexist fairly well and software DSM systems can be constructed easily using distributed object systems. In this paper, we describe the construction of a hybrid programming platform based on the Arts distributed object system. We describe how an object-oriented design approach provides a compact and flexible description of the system components. A sample implementation demonstrates that three classes of less than 100 lines of code each suffice to implement sequential consistency


Memory Object Home Node Page Fault Dual Class Remote Object 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    A. Grimshaw. Easy-to-use parallel processing with Mentat. IEEE Computer, 26(5), May 1993.Google Scholar
  2. 2.
    H. Assenmacher, T. Breitbach, P. Buhler, V. Hubsch, and R. Schwarz. PANDA-supporting distributed programming in C++. In O. Nierstrasz, editor, Object-Oriented Programming, number 707 in LNCS, pages 361–383. Springer, 1993.Google Scholar
  3. 3.
    B. Bershad, M. Zekauskas, and W. Sawdon. The midway distributed shared memory system. In GOMPGON Conference Proceedings, pages 528–537, 1993.Google Scholar
  4. 4.
    Francois Bordin, Peter Beckman, Dennis Gannon, Srinivas Narayana, and Shelby X. Yang. Distributed pC++: Basic Ideas for an Object Parallel Language. Scientific Programming, 2(3), Fall 1993.Google Scholar
  5. 5.
    L. Büttner, J. Nolte, and W. Schröder-Preikschat. ARTS of PEACE — A High-Performance Middleware Layer for Parallel Distributed Computing. Special Issue of the Journal of Parallel and Distributed Computing on Software Support for Distributed Computing, 1999.Google Scholar
  6. 6.
    J. B. Carter. Design of the Munin Distributed Shared Memory System. J. Parallel Distrib. Comput., 29(2):219–227, September 1995.CrossRefGoogle Scholar
  7. 7.
    K. M. Chandy and C. Kesselman. CC++: A Declarative Concurrent Object-Oriented Programming Notation. In Research Directions in Concurrent Object-Oriented Programming. MIT Press, 1993.Google Scholar
  8. 8.
    Liviu Iftode, Jaswinder Pal Singh, and Kai Li. Scope consistency: a bridge between release consistency and entry consistency. In Symposium on Parallel Algorithms and Architectures, pages 277–287, June 1996.Google Scholar
  9. 9.
    Pete Keleher, Alan L. Cox, Sandhya Dwarkadas, and Willy Zwaenepoel. An evaluation of software-based release consistent protocols. J. Parallel Distrib. Comput., 29:126–141, September 1995.CrossRefGoogle Scholar
  10. 10.
    K. Li and P. Hudak. Memory coherence in shared virtual memory systems. ACM Trans. Comput. Systems, 7(4):321–359, November 1989.CrossRefGoogle Scholar
  11. 11.
    W. Schröder-Preikschat. The Logical Design of Parallel Operating Systems. Prentice Hall International, 1994. ISBN 0-13-183369-3.Google Scholar
  12. 12.
    V. Singhal, S. V. Kakkad, and P. R. Wilson. Texas: An Efficient Portable Persistent Store. In Proceedings of the 5th International Workshop on Persistent Object Systems, San Miniato, Italy, September 1992.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2000

Authors and Affiliations

  • Frank Mueller
    • 1
  • Jörg Nolte
    • 2
  • Alexander Schlaefer
    • 3
  1. 1.Institut f. InformatikHumboldt University BerlinBerlinGermany
  2. 2.GMD FIRSTBerlinGermany
  3. 3.CSEUniversity of WashingtonSeattleUSA

Personalised recommendations