Abstract
This paper discusses the design and implementation of a customizable distributed object-based runtime system. Our main goal in the system's design was to provide a distributed object-based system supporting execution of various (concurrent) object-oriented languages, and that can be easily enriched with mechanisms for object management so as to fit the applications' needs. Enrichment of the runtime system with a particular mechanism is illustrated through the integration of a facility that is aimed at enhancing the applications' performance. This goal is achieved by means of a load balancing strategy that implements initial-placement of method executions and migration of data objects according to both the processors' load and the objects' features.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
M. Accetta, R. Baron, W. Bolosky, D. Golub, R. Rashid, A. Tevanian, and M. Young. Mach: A new kernel foundation for Unix development. In Proceedings of the Usenix 1986 summer Conference, pages 93–112, 1986.
P. America. Pool-T: a parallel object-oriented language. In Object-Oriented Concurrent Programming, pages 199–220. MIT Press, 1987.
P. America. A Behavioural Approach to Subtyping in Object-Oriented Programming Languages. Technical report, Philips Research Laboratory, Eindhoven, The Netherland, 1989.
T. E. Anderson. The Case for Application-Specific Operating Systems. Technical Report UCB/CSD 93/738, Computer Science Division, University of California Berkeley, Berkeley, California, USA, 1992.
J. S. Auerbach, A. S. Gopal, M. T. Kennedy, and J. R. Russel. Concert/C: Supporting distributed programming with language extensions and portable multiprotocol runtime. In Proceedings of the Fourteenth International Conference on Distributed Computing Systems, pages 152–159, 1994.
J. P. Banâtre and M. Banâtre, editors. Les systèmes distribués: l'expérience du système Gothic. InterEditions, 1991.
J.P. Banâtre, M. Banâtre, and G. Muller. Ensuring data security and integrity with a fast stable storage. In Proceedings of the fourth International Conference on Data Engineering, pages 285–293, 1988.
M. Banâtre, Y. Belhamissi, V. Issarny, I. Puaut, and J. P. Routeau. Arche: A framework for parallel object-oriented programming above a distributed architecture. In Proceedings of the Fourteenth International Conference on Distributed Computing Systems, pages 510–517, 1994.
M. Banâtre, Y. Belhamissi, V. Issarny, I. Puaut, and J. P. Routeau. Adaptive placement of method executions within a customizable distributed object-based system: Design, implementation and performance. In Proceedings of the Fifteenth International Conference on Distributed Computing Systems, pages 279–287, 1995.
A. Barak and A. Shiloh. A distributed load balancing facility for a multicomputer. Software Practice and Experience, 15(9):901–913, 1985.
Y. Belhamissi. Placement des calculs et des données dans un système distribué à objets. Thèse de doctorat, Université de Rennes I, Rennes, France, 1994.
M. Benveniste and V. Issarny. Concurrent Programming Notations in the Object-Oriented Language Arche. Research Report 1822, INRIA, Rennes, France, 1992.
B.N. Bershad, S. Savage, P. Pardyak, E. Gunder, M. Fiuczynski, D. Becker, S. Eggers, and C. Chambers. Extensibility, safety, and performance in the Spin operating system. In Proceedings of the Fifteenth ACM Symposium on Operating Systems Principles, pages 267–284, 1995.
A. Birrel, G. Nelson, S. Owicki, and E. Wobber. Network objects. In Proceedings of the Fourteenth ACM Symposium on Operating Systems Principles, pages 217–230, 1993.
C. Bryce, V. Issarny, G. Muller, and I. Puaut. Towards safe and efficient customization in distributed systems. In Proceedings of the Sixth SIGOPS European Workshop: Matching Operating Systems to Application Needs, Schloss Dagstuhl, Germany, 1994.
C. Bryce and G. Muller. Matching micro-kernels to modern applications using fine-grained memory protection. In Proceedings of the Seventh IEEE Symposium on Parallel and Distributed Processing, 1995.
R. H. Campbell, N. Islam, R. Johnson, P. Kougiouris, and P. Madany. Choices: Framework and refinement. In Proceedings of the 1991 International Workshop on Object Orientation in Operating Systems, pages 9–15, 1991.
P. Y. Chevalier, A. Freyssinet, D. Hagimont, S. Krakowiak, S. Lacourte, J. Mossière, and X. Rousset de Pina. Persistent shared object support in the Guide system: Evaluation and related work. In Proceedings of the Ninth ACM Conference on Object-Oriented Programming Systems, Languages and Applications, pages 129–144, 1994.
R. S. Chin and S. S. Chanson. Distributed object-based programming systems. ACM Computing Surveys, 23(1):91–124, 1991.
S. Crane. The Rex Lightweight Process Library. Technical report, Imperial College, London, UK, 1994.
P. Dasgupta, R. C. Chen, S. Menon, M. P. Pearson, R. Ananthanrayanan, R. J. LeBlanc, M. Ahamad, U. Ramachandra, W. F. Appelbe, J. M. Bernabéu-Auban, P. W. Hutto, M. Y. A. Khalidi, and C. J. Wilkenoh. The design and implementation of the Clouds distributed operating system. Computing Systems, 4(3):243–275, 1990.
D. R. Engler, M. Franz Kaashoek, and J. O'Toole. Exokernel: An operating system architecture for application-level resource management. In Proceedings of the Fifteenth ACM Symposium on Operating Systems Principles, pages 251–266, 1995.
P. C. Fishburn. A survey of multi-attributes/multi-criteria evaluation theories. In Lecture Notes in Computer Science 155, pages 181–224. Springer-Verlag, 1978.
G. A. Geist and V. S. Sunderam. Network-based concurrent computing on the PVM system. Concurrency: Practice and Experience, 4(4):293–311, 1992.
M. G. Gouda and T. Herman. Adaptive programming. IEEE Transactions on Software Engineering, 17(9):911–921, 1991.
G. Hamilton, M. L. Powell, and J. G. Mitchell. Subcontract: A flexible base for distributed programming. In Proceedings of the Fourteenth ACM Symposium on Operating Systems Principles, pages 69–79, 1993.
C. J. Hou, K. G. Shin, and T. K. Tsukada. Transparent load sharing in distributed systems: Decentralized design alternatives based on the condor package. In Proceedings of the Thirteenth Symposium on Reliable Distributed Systems, pages 202–211, 1994.
Y. M. Huang and C. V. Ravishankar. Designing an agent synthesis system for cross-Rpc communication. IEEE Transactions on Software Engineering, 20(3):188–198, 1994.
V. Issarny, G. Muller, and I. Puaut. Efficient treatment of failures in RPC systems. In Proceedings of the Thirteenth Symposium on Reliable Distributed Systems, pages 170–180, 1994.
D. Kafura, M. Mukherji, and D. W. Washabaugh. Concurrent and distributed garbage collection of active objects. IEEE Transactions on Parallel and Distributed Systems, 1995.
S. Krakowiak, M. Meysembourg, H. Nguyen van, M. Riveil, and C. Roisin. Design and implementation of an object-oriented strongly typed language for distributed applications. Journal of Object-Oriented Programming, 3:11–22, 1990.
R. Lea, C. Jacquemot, and E. Pillevesse. Cool: System support for distributed object-oriented programming. Communications of the ACM, 36(9), 1993.
R. Lea, Y. Yokote, and J. Itoh. Adaptive operating system design using reflection. In Proceedings of the French-Japanese Workshop on Object-Based Parallel and Distributed Computation, 1995.
B. Liskov. Distributed programming in Argus. Communications of the ACM, 31(3):300–312, 1988.
B. Liskov and J. Wing. A new definition of the subtype relation. In Proceedings of ECOOP'93, pages 118–141, 1993.
Odjik. The DOOM system and its applications: A survey of Esprit 415 subproject A, Philips research laboratory. In Proceedings of PARLE — Parallel Architectures and Languages Europe, pages 461–479, 1987.
C. Pu, T. Autrey, A. Black, C. Consel, C. Cowan, J. Inouye, L. Kethana, J. Walpole, and K. Zhang. Optimistic incremental specialization: Streamlining a commercial operating system. In Proceedings of the Fifteenth ACM Symposium on Operating Systems Principles, 1995. 314–329.
I. Puaut. A distributed garbage collector for active objects. In Proceedings of the Ninth ACM Conference on Object-Oriented Programming Systems, Languages and Applications, 1994.
R. K. Raj, E. Tempero, H. M. Levy, A. P. Black, N. C. Hutchinson, and E. Jul. Emerald: A general purpose programming language. Software Practice and Experience, 21(1):91–118, 1991.
M. Rozier, V. Abrossimov, F. Armand, I. Boule, M. Gien, M. Guillemont, F. Herrmann, P. Léonard, S. Langlois, and W. Neuhauser. The Chorus distributed operating system. Computing Systems, 1(4):305–370, 1988.
A. S. Tanenbaum, R. Van Renesse, H. Van Staveren, G. J. Sharp, S. J. Jansen, and G. Van Rossum. Experiences with the Amoeba distributed operating system. Communications of the ACM, 33:46–63, 1990.
Y. Yokote. The Apertos reflective operating system: The concept and its implementation. In Proceedings of the 1992 ACM Conference on Object-Oriented Programming Systems, Languages, and Applications, 1992.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1996 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Banâtre, M., Belhamissi, Y., Issarny, V., Puaut, I., Routeau, JP. (1996). Isatis: A customizable distributed object-based runtime system. In: Briot, JP., Geib, JM., Yonezawa, A. (eds) Object-Based Parallel and Distributed Computation. OBPDC 1995. Lecture Notes in Computer Science, vol 1107. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-61487-7_30
Download citation
DOI: https://doi.org/10.1007/3-540-61487-7_30
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-61487-6
Online ISBN: 978-3-540-68672-9
eBook Packages: Springer Book Archive