Development of Distributed Programming Developing Tool-Kit Based on Object Group Model

Size: px
Start display at page:

Download "Development of Distributed Programming Developing Tool-Kit Based on Object Group Model"

Transcription

1 Development of Distributed Programming Developing Tool-Kit Based on Object Group Model Jeong-Taek Lim, Su-Chong Joo School of Electrical, Electronic and Information Engineering, Wonkwang University, Korea {jtlim, Chang-Sun Shin School of Information and Communication Engineering, Sunchon National University, Korea Abstract In this paper, we defined the concept of the grouped distributed objects[10-14], as a logical unit of distributed application service, and developed a distributed programming developing tool-kit based on object group model(ogm-dpd Tool-Kit). This Tool- Kit can provide not only dynamic binding strategy among distributed objects and distributed services using the Distributed Object Group Framework (DOGF) we constructed before, but also implementation of distributed applications easily. Based on the DOGF, this OGM-DPD Tool-Kit provides the functionalities of the register/withdraw management, the access security management for individual distributed object, and the object name/property management as group units in the point of view of distributed object management. In the point of view of distributed service, our Tool-Kit includes the DOGF that can support naming service, dynamic binding service, replication service, and load balance service for distributed application services. In this paper, we in details specified the object group model and the architecture of the DOGF supporting this Tool-Kit. Finally, we implemented a simple distributed application using this Tool-Kit, and showed the execution of this application to verify the executabilities of the distributed object group management and the distributed services described above. 1. Introduction Recently, while Intra/Inter-networking distributed environments have been constructing, the existing applications have been converting the distributed applications for sharing various distributed resources among them. For this reason, distributed system environments are required the complicated interactions among them for improving availability of distributed resources. Hence, we need to solve the complicated interactions through effective management of distributed resources, like object group management, and provide simple binding and real-time strategies for increasing the availability of resources located on distributed systems[1,2,3,4,5]. The solutions of these requirements have been researched on area of the distributed middleware and platform. Especially, many researchers are interested in the group management of distributed objects for supporting a logical single view system environment and reducing interactions among them. As some of the representative researches related to the object group concepts, the Common Object Request Broker Architecture(CORBA)[6,7] and the Telecommunications Information Networking Architecture(TINA)[8,9] suggested the management model of distributed objects. These models included the concept of object group to manage distributed objects efficiently. But these studies have only considered the group service by modifying the part of CORBA-ORB, and have not been including the group management scheme and the dynamic binding strategy of single or replicated objects with the same service property in the side of the management of object groups. Hence, after considering with their specifications and our object group strategies, we developed Distributed Object Group Framework(DOGF) [10,11]. And based on the DOGF, we develop the tool-kit for implementing distributed programs having nothing to use with any middleware and any programming language. This Tool-Kit can manage the objects and object groups and apply the various distributed services by defining system resources, such as service objects, adaptively configuring the distributed application.

2 The remainders of this paper are organized as follows. In Section 2, we describe the definition of object group and the architecture of the DOGF, which are previous works to develop the OGM-DPD Tool- Kit. And in Section 3, we implement this Tool-Kit including the distributed services and the functions provided by the DOGF. In Section 4 finally, using this Tool-Kit developed, we show the execution of distributed application to verify the executablities of distributed object groups management and distributed services. Section 5 summaries our conclusion remarks and future works. 2. Our previous works 2.1. Definition of object groups Distributed applications may consist of one or more client/server objects as non-replicated objects or replicated objects located sporadically on distributed systems, and these distributed objects can be shared by several distributed applications. In this paper, we define that the object group is a set of distributed objects needed to execute a distributed application. The big distributed applications may be configured by one or more object groups. The object group can be managed by a logical single view system for sharing resources with a group or between groups, though these objects in a group are located in distributed systems physically. In the logical single view system, that is, all of objects in the object group must be transparently managed and appropriately serviced for executing a distributed application. Figure 1 is showing a logical domain with one of more object groups corresponding to a distributed application. Figure 1. Object groups corresponding to distributed applications 2.2. Distributed Framework Based on Object Group Model We have been studying the object-oriented technologies managing of the object group that can improve the executabilities of the distributed application by providing distributed transparency to clients[10,11,12,13.14]. As to components of the distributed framework based on object group model, after this we called the Distributed Object Group Framework(DOGF), for supporting object group management, our DOGF contains the objects, the Group Manager(GM) object, the Security object, the Information Repository object, and the Dynamic Binder object. For real-time services, the Real-Time Manager(RTM) objects and Scheduler objects exist in our framework. The objects, as service objects, may exist as the type of replicated objects with the same service property. Figure 2 shows the architecture of the distributed framework based on object group model. Figure 2. Architecture of distributed framework based on object group model

3 The DOGF is located on the upper layer of the Commercial-Off-The-Shelf(COTS) middlewares and the operating system and communication network. Here we use the Time-triggered Message-triggered Object Supporting Middleware(TMOSM) developed by DREAM Lab. at University of California at Irvine instead of COTS middleware. The distributed applications located on the top layer can be implemented by one or more service objects, briefly called objects, with non real-time or real-time properties. With components functions and their interactions in the framework, the Group Manager object is responsible for wholly managing distributed objects including in an object group, and is a unique interface for interacting with arbitrary external clients in the same object group or others. The client requests an appropriate object for executing a distributed application via the Group Manager object. And then, the Security object checks the access rights of the requesting object by applying security policy for the service request of client object. In next phase, the Group Manager object asks the Information Repository object for obtaining the reference of the invoked object. The Information Repository object stores the objects properties to the object list. If the object exists nonreplicated, the Information Repository object returns the appropriate reference of the object to the Group Manager object. The Dynamic Binder object includes the binding priority list for each replicated object in the Information Repository object, receives the service request from the Information Repository object, and finally returns the corresponding reference to the Group Manager object after selecting the appropriate object. At this time, in accordance with the executing characteristics of a given application, we can adapt the various binding algorithms to the Dynamic Binder object for getting high performance. The Real-Time Manager object receives the deadline information from the client, calculates the service deadline by referring time constraints, and requests the real-time scheduling to the Scheduler object. And then, the Scheduler object includes the task priority list for the requested tasks that object executes, and schedules the requested tasks by using the client object s information and the deadline information. In the same manner as the Dynamic Binder object, we can adapt the various realtime algorithms to the Scheduler object by the applications characteristics. Also, the Real-Time Manager object and the Scheduler object are used selectively, according to distributed application s realtime property. In the view of distributed object groups management, through above components, the DOGF supports the group register/withdrawal management of objects corresponding to the distributed application, the access security management for object, and the object name/property management. In the view of distributed services, this DOGF provides the naming service, dynamic binding service, replicated object supporting service, and load balance service for distributed application services. In our previous paper [14], we verified the executability of the supporting services by applying the DOGF to the distributed defense system as an example of distributed applications. 3. Implementation of OGM-DPD Tool-Kit The OGM-DPD Tool-Kit includes the Distributed Object Group Framework(DOGF) mentioned in Section 2. When programming a distributed application, the DOGF in the Tool-Kit supports the group management and the distributed services by calling the simple Application Program Interfaces(APIs) so that programming developers can conveniently implement distributed applications. Figure 3 is showing the various programming environments of distributed applications using the OGM-DPD Tool-Kit. This Tool-Kit provides the developing environment of distributed application independently from any kind of application programming language and distributed middleware. The components supporting object group management and distributed service in our Tool-Kit are implemented to packaging DLL(Dynamically Linked Library). Figure 3. Developing environments of distributed program using OGM-DPD Tool-Kit 3.1. Functional interfaces of OGM-DPD Tool- Kit The Group Manager object in the DOGF is responsible for wholly managing distributed objects including in an object group as the executing unit of distributed application, and is a unique object in an object group interfacing with client object. The distributed objects configuring an application take the

4 group register/withdraw, the security check, the dynamic binding service and so forth via the functional interfaces implemented in the Group Manager object. Figure 4 shows the functional interfaces of the Group Manager object for managing group from this Tool-Kit. We used the C++ as an object oriented program language for developing the Tool-Kit s components. #include "DOGST_DLL.h" class GroupManagerObject { //register an object to the object group. char* enter_objectgroup(char *group_name, char *service_name, char *object_name, char *location_address); //withdraw an object from the object group. char* withdraw_objectgroup(char *group_name, char *service_name, char *object_name); //modify an object s info. registered in the object group. char* modify_objectgroup(char *service_name, char *group_name, char *object_name, char *location_address); //insert access right of objects for client. char* insert_access_right(char *client_name, char *group_name, char *service_name); //delete access right of client for objects. char* delete_access right(char *client_name, char *group_name, char *service_name); //request the object s reference for executing service. char* request_object_infotoiro(char *client_name, char *group_name, char *service_name); }; Figure 4. Functional interfaces of the Group Manager object The remaining components of the DOGF supporting in the OGM-DPD Tool-Kit are implemented in the same way as the implementation of the Group Manager object. The detailed functions and the structure of components are referred to [10,11,14] GUI Environments of OGM-DPD Tool-Kit While programming by using this Tool-Kit, server or client programming developers can develop the distributed application independently from their developing environments, that is, such as application program languages and distributed middlewares. For achieving the Tool-Kit s goal mentioned above, we implemented with 3 Graphical User Interface (GUI) environments as followings; GUI for object group administrator, GUI for server programming developer, and GUI for client programming developer. The first GUI wholly manages the executing environment of distributed application. The second GUI is responsible for the group register/withdraw and the access right of objects of server program. And, the third GUI, by searching distributed applications provided as object groups, supports the developing environment of the client program that requests distributed service. By using these GUIs, the distributed application developers can conveniently use the supporting functions provided from the DOGF. Server programming developers make a server program on specialized server systems, and register these server objects to the DOGF via GUIs of our Tool-Kit. Also, client programming developers search the server objects provided by the object group via this Tool- Kit s client GUI, and then they make a client program by only referring to the corresponding server objects providing by server systems. By this manner, client programming developers can reduce the distributed application s developing time by reusing the existing distributed objects already made by server programming developers. The following subsections explain the functions of each GUI environment GUI for object group administrator This GUI supports the group management of distributed objects and the dynamic binding strategies to help the execution of distributed application. Figure 5 shows the GUI for object group administrator. In, we can use selectively binding algorithms for choosing a replicated object on a group. And, is showing that we register/withdraw the objects into the given group Operator using the service name, also grant the access right of objects to clients. The configuration and status information of the object group are displayed in. Figure 5. GUI for object group administrator GUI for server programming developer The GUI for the server programming developers is responsible for granting the access rights to clients and for implementing the components to execute distributed application, as server objects. In Figure 6, from, we set the communication environment of the DOGF to registering/withdraw these objects

5 into/from the object group. In, we register the object corresponding to the distributed application into the group by the service name, also set the access right to clients for the corresponding services. The configuration and status information about the object group are displayed in. The server and the client programming developers develop their programs in each system, respectively. These programs are independent with each other. Hence, this Tool-Kit has to support interactions between them transparently without concerning the physical location of distributed objects, when an arbitrary client takes the access right of server objects from object group administrator or server programming developer. Figure 6. GUI for server programming developer GUI for client programming developer In GUI for client programming developer, it provides the distributed objects with the access right permitted to clients for developing distributed applications. By using in Figure 7, in the same as setting GUI for server programming developer, we set the communication environment with the framework for accessing the object group and the objects available by the client. After then, with pressing the Search button, the available object groups and objects accessing by the underlying client are shown in. Client programming developers can easily develop a distributed application for clients using these objects permitted by object group administrator or server programming developer. Figure 7. GUI for client programming developer 4. Development procedure of distributed program using OGM-DPD Tool-Kit In this Section, we show the convenience of distributed program development and the executability of distributed services by using the OGM-DPD Tool- Kit. Fist of all, we implemented a distributed application based on the Time-triggered Messagetriggered Object(TMO) scheme and the TMO Support Middleware(TMOSM), and examined its execution results. The TMO scheme and TMOSM are the realtime supporting object models suggested by DREAM Lab. at UCI[15]. Detailed characteristics and structure of the TMO scheme are explained in [16,17]. Because the TMO scheme, in this paper, supports the distributed real-time service itself, we did not implement the real-time servicing modules, the Real- Time Manager object and the Scheduler object in the DOGF. Here for applying the concepts of replication service to our Tool-Kit, we used the dynamic binding strategy instead of the static binding strategy supported in the TMOSM for connecting with client and server objects Experimentation of OGM-DTP Tool-Kit using a simple application This section shows a distributed application with 4 operations(add( ), subtract( ), multiple( ), divide( )) registered in the DOGF by using the OGM-DPD Tool- Kit. These operations are implemented to the TMO objects on 2 systems as follows; Add_TMO1, Add_TMO3, Subtract_TMO, and Multiple_TMO objects are located on System A, and Add_TMO2 and Divide_TMO objects are located on System B. Add_TMO1, Add_TMO2, and Add_TMO3 are replicated objects with the same service property, add( ). According to the clients request, Binding algorithm must select an optimal object being on distributed systems with the minimum overhead from replicated objects. Before implementing of an application, these objects are managed by object group administrator, as a unit of group, Operator. Client programming developers ought to take access right of these objects necessary to application from object group administrator or server programming developer. The detailed development processes of distributed application using this Tool-Kit are as follows. Each server programming developer implements the object providing the corresponding service on the server system. And then, the implemented objects have to register to the object group, Operator, and grant the access right to clients. Client programming developers

6 search the distributed services permitted as object groups on GUI for client programming developer on this Tool-Kit. Client programming developers implement a client program using only the permitted objects. The server and the client programming developers can make their programs independently via our Tool-Kit. Figure 8 shows the executing processes of the distributed application mentioned above. Figure 8. Executing processes of the TMO-based distributed application In the first step, the client requests the reference of object executing the add() service to the Group Manager object. Next, the Group Manager object checks the access right of the object that provides the corresponding service for the client request. And, if possible to access them, the Group Manager object requests the object s reference to the Information Repository object. The Information Repository object examines the replication status of objects. At this time, if the object exists non-replicated, the Information Repository object returns the object s reference immediately. If the objects are replicated objects(add_tmo1, Add_TMO2, and Add_TMO3), the Information Repository object requests the selection of object s reference for object binding to the Dynamic Binder object. After this, the Group Manager object returns the object s reference(add_tmo2) selected to the client. Finally, the client requests the service to the object by referring to the object reference received from the OGM-DPD Tool-Kit, and receives the executing results Development of client program using OGM-DPD Tool-Kit Via referring objects in a group shown on the client developer s GUI in Figure 7, the client programming developers can make a distributed application independently without considering server environment. For this, the server programming developers have to register the referred objects to the Information Repository object that is a component consisted in the DOGF. After then objects in the rectangle box of left side must to be declared in client program, like the type declaration of general programming language. In details, the Operator group and the Print group are registered in the DOGF. And the former group has the objects for executing add( ), subtract( ), multiple( ), and divide( ) services and the latter group has the objects for executing printer( ) and monitor( ) services. The remaining parts for developing a client program are equal to the existing program mechanisms. Figure 9 and Figure 10 are showing the examples of client programs implemented by the TMO-based C++ and the RMI(Remote Method Invocation)-based Java languages with the OGM-DPD Tool-Kit, respectively. Figure 9. TMO-based client program developed by C++

7 4.3. Executing results of client program Figure 10. RMI-based client program developed by Java Figure 11 shows the executing results of the client program implemented in Figure 9. The client program requests the objects for executing add( ), subtract( ), and divide( ) services in the Operator group from server systems, repeatedly. Here we assume that requesting client cannot take the access right for multiple( ) service from a server programming developer. In this figure, we showed the service results and their interactions while invoking objects in the distributed environment as shown in Figure 8. Considering that a client requests one of the replicated objects(add_tmo1, Add_TMO2, and Add_TMO3) for receiving the result of add( ) service, the OGM- DPD Tool-Kit returns the appropriate object s reference out of replicated objects to the client by operating the dynamic binding service and the client requests the service by referring the returned object s reference. Finally, the client receives the executing results from the object. We adapted the Random algorithm out of several binding algorithms to the Dynamic Binder object in the DOGF for selecting one object out of 3 replicated objects described above. From Figure 11, the first 4 requests remotely call the add( ) service and receive each executing result of its service, as a sequence of Add_TMO2, Add_TMO3, Add_ TMO1, and Add_TMO3 selected by Random algorithm. The 5 th and final 7 th requests invoke Subtract_TMO and Divide_TMO and receive each executing result of these services, respectively. Finally, the 6 th request is denied due to not taking the access right about the multiple( ) service. Figure 11. Execution results of client program 5. Conclusions and future works In this paper, we developed the distributed programming developing tool-kit based on object group model(ogm-dpd Tool-Kit) which can provide not only dynamic binding among distributed objects and distributed services using the Distributed Object Group Framework(DOGF) we constructed before, but also implement distributed applications easily. The OGM-DPD Tool-Kit includes the DOGF that can support naming service, dynamic binding service, replication service, and load balance service for distributed application services. From the experimental results of the distributed application developed by using this Tool-Kit, we

8 showed that it is possible to execute the group management of objects configuring the distributed application and the dynamic binding for the replicated objects, and to provide conveniently the easy developing environment for programming distributed applications via supporting the Tool-Kit s 3 GUI environments. In future works, we are planning to add and extend the service component interfaces that can integrate the OGM-DPD Tool-Kit with a Framework supporting the Healthcare Home Service over the ubiquitous computing environment that can totally manage the healthcare devices, healthcare appliance, biosensors, and medical information systems. Acknowledgements. The authors wish to acknowledge helpful discussions of the TMO Programming Scheme with Professor Kane Kim in DREAM Lab., University of California at Irvine. This research was supported by the Korean Ministry of Science and Technology through the Center for Healthcare Technology and Development. References [1] Bellissard, L., Boyer, F., Riveill, M., and Vion-Dury, J.- Y., System Services for Distributed Application Configuration, In Proceedings of the 4th International Conference on Configurable Distributed Systems, 1998, pp [2] M. Takemoto, Fault-Tolerant Object on Network-wide Distributed Object-Oriented Systems for Future Telecommunications Applications, In IEEE PRFTS, 1997, pp [3] P.M. Melliar-Smith, L.E. Moser, and P. Narasimhan, Consistent object replication in the Eternal System, Theory and Practice of Object System, Vol.4, No.2, 1998, pp [4] V. Kalogeraki, P.M. Melliar-Smith, and L.E. Moser, Dynamic Scheduling for Soft Real-Time Distributed Object Systems, In Proceedings of the IEEE 3rd International Symposium on Object-Oriented Real-Time Distributed Computing, 2000, pp [5] G. Cooper, L. DiPippo, L. Esibov, R. Ginis, R. Johnston, P. Kortman, P. Krupp, J. Mauer, M. Squadrito, B. Thuraisingham, S. Wohlever, and V. Wolfe, Real-Time CORBA Development at MITRE, NRaD, Tri-Pacific and URI, In Proceedings of IEEE Workshop on Middleware for Distributed Real-time Systems and Services, 1997, pp [6] Object Management Group, The Common Object Request Broker: Architecture and Specification 2.2, [7] OMG Real-time Platform SIG, Real-time CORBA a White Paper-Issue 1.0, realtime/real-time_whitepapers.html, [8] L. Kristiansen, P.Farley, R.Minetti, M. Mampaey, P.F. Hansen, and C.A. Licciardi, TINA Service Architecture and Specifications, [9] Axel Kupper, Locating TINA User Agents: Strategies of a Broker Federation and their Comparison, In Proceedings of the 6th International Conference on Intelligence in Services and Networks(IS&N), [10] C.S. Shin, M.H. Kim, Y.S. Jeong, S.K. Han, and S.C. Joo, Construction of CORBA Based Object Group Platform for Distributed Real-Time Services, In Proceedings of the 7th IEEE International Workshop on Object-oriented Real-time Dependable Systems(WORDS 02), 2002, pp [11] S.C. Joo, C.S. Shin, C.W. Jeong, and S.K. Oh, CORBA Based Real-Time Object-Group Platform in Distributed Computing Environments, Lecture Notes in Computer Science, Vol.2659, 2003, pp [12] C.S. Shin, M.H. Kim, and S.C Joo, A Construction of TMO Object Group Model for Distributed Real-Time Services, The Transaction of Korea Information Science Society, Vol.30, No.5-6, 2003, pp [13] C.S. Shin, M.S. Kang, Y.S. Jeong, S.K. Han, and S.C. Joo, TMO-Based Object Group Model for Distributed Real-Time Services, Proceedings of IASTED International Conference-Networks, Parallel and Distributed Processing, and Applications(NPDPA 2002), 2002, pp [14] Chang-Sun Shin, Chang-Won Jeong, and Su-Chong Joo, Construction of Distributed Object Group Framework and Its Execution Analysis Using Distributed Application Simulation, Lecture Notes in Computer Science, Vol.3207, 2004, pp [15] K.H. Kim, Object-Oriented Real-Time Distributed Programming and Support Middleware, In Proceedings of the 7th International Conference on Parallel and Distributed Systems, 2000, pp [16] K.H. Kim, Seok-Joong Kang, and Yuqing Li, GUI Approach to Generation of Code-Framworks of TMO, In Proceedings of the 7th IEEE International Workshop on Object-oriented Real-time Dependable Systems(WORDS), 2002, pp [17] Kim, K.H., Ishida, M., and Liu, J., An Efficient Middleware Architecture Supporting Time- triggered Message-triggered Objects and an NT-based Implementation, In Proceedings of the IEEE CS 2nd International Symposium on Object-oriented Real-time distributed Computing(ISORC'99), 1999, pp [18] S.C. Joo, C.S. Shin, and J.T. Lim, Distributed Programming Developing Tool-Kit Based on Object Group, Program License by Korea Computer Program Deliberation & Mediation Committee, 2005, Grant- No

Design and Implementation of High Performance and Availability Java RMI Server Group

Design and Implementation of High Performance and Availability Java RMI Server Group Design and Implementation of High Performance and Availability Java RMI Group 1. Introduction Tianjing Xu University of Auckland, Auckland, New Zealand txu012@ec.auckland.ac.nz Nowadays, providing high

More information

Self-Describing and Data Propagation Model for Data Distribution Service

Self-Describing and Data Propagation Model for Data Distribution Service Self-Describing and Data Propagation Model for Data Distribution Service Chungwoo Lee 1, Jaeil Hwang 1, Joonwoo Lee 1, Chulbum Ahn 1, Bowon Suh 1, Dong-Hoon Shin 1, Yunmook Nah 1 and Doo-Hyun Kim 2 1 Department

More information

Low Productivity Characterizes Real-time Programming

Low Productivity Characterizes Real-time Programming Time-triggered Message-triggered Object Programming Scheme K.H. (Kane) Kim Director of DREAM Laboratory University of California, Irvine Juan A. Colmenares DREAM Lab University of California, Irvine Presented

More information

Self-describing and Data Propagation Model for Data Distribution Service

Self-describing and Data Propagation Model for Data Distribution Service Self-describing and Data Propagation Model for Data Distribution Service Chungwoo Lee 1, Jaeil Hwang 1, Joonwoo Lee 1, Chulbum Ahn 1, Bowon Suh 1, Dong-Hoon Shin 1, Yunmook Nah 1, and Doo-Hyun Kim 2 1

More information

Today: Distributed Objects. Distributed Objects

Today: Distributed Objects. Distributed Objects Today: Distributed Objects Case study: EJBs (Enterprise Java Beans) Case study: CORBA Lecture 23, page 1 Distributed Objects Figure 10-1. Common organization of a remote object with client-side proxy.

More information

The implementation and analysis of OCI-based group communication support in CORBA

The implementation and analysis of OCI-based group communication support in CORBA Regular paper The implementation and analysis of OCI-based group communication support in CORBA Dukyun Nam, Dongman Lee, and Chansu Yu School of Engineering Information and Communications University Taejon,

More information

Distributed Systems. Bina Ramamurthy. 6/13/2005 B.Ramamurthy 1

Distributed Systems. Bina Ramamurthy. 6/13/2005 B.Ramamurthy 1 Distributed Systems Bina Ramamurthy 6/13/2005 B.Ramamurthy 1 Introduction Distributed system is the one in which hardware and software components at networked computers communicate and coordinate their

More information

Administrative Stuff. We are now in week 11 No class on Thursday About one month to go. Spend your time wisely Make any major decisions w/ Client

Administrative Stuff. We are now in week 11 No class on Thursday About one month to go. Spend your time wisely Make any major decisions w/ Client Administrative Stuff We are now in week 11 No class on Thursday About one month to go Spend your time wisely Make any major decisions w/ Client Real-Time and On-Line ON-Line Real-Time Flight avionics NOT

More information

Overview. System architectures Software layers Architectural models. Design requirements. client-server, peer processes, mobile code, agents,...

Overview. System architectures Software layers Architectural models. Design requirements. client-server, peer processes, mobile code, agents,... Architectural Models Overview System architectures Software layers Architectural models client-server, peer processes, mobile code, agents,... Design requirements user expectations of the system 3 January,

More information

REPLICATING CORBA OBJECTS: A MARRIAGE BETWEEN ACTIVE AND PASSIVE REPLICATION

REPLICATING CORBA OBJECTS: A MARRIAGE BETWEEN ACTIVE AND PASSIVE REPLICATION REPLICATING CORBA OBJECTS: A MARRIAGE BETWEEN ACTIVE AND PASSIVE REPLICATION Pascal Felber Xavier Défago Patrick Eugster André Schiper Swiss Federal Institute of Technology Operating Systems Lab. CH-1015

More information

Integrating Fragmented Objects into a CORBA Environment

Integrating Fragmented Objects into a CORBA Environment Integrating ed Objects into a CORBA Environment Hans P. Reiser 1, Franz J. Hauck 2, Rüdiger Kapitza 1, and Andreas I. Schmied 2 1 Dept. of Distributed Systems and Operating System, University of Erlangen-

More information

Object-Oriented Systems Design RMI

Object-Oriented Systems Design RMI Object-Oriented Systems Design RMI Michael Hauser November 2001 Workshop: AW3 Module: EE5029A Tutor: Mr. Müller Course: M.Sc Distributes Systems Engineering Lecturer: Mr. Prowse CONTENTS Contents 1 Aims

More information

On Bootstrapping Replicated CORBA Applications Λ

On Bootstrapping Replicated CORBA Applications Λ On Bootstrapping Replicated CORBA Applications Λ W. Zhao, L. E. Moser and P. M. Melliar-Smith Department of Electrical and Computer Engineering University of California, Santa Barbara, CA 93106 wenbing@alpha.ece.ucsb.edu,

More information

Development of Field Monitoring Server System and Its Application in Agriculture

Development of Field Monitoring Server System and Its Application in Agriculture Development of Field Monitoring Server System and Its Application in Agriculture Chang-Sun Shin 1, Meong-Hun Lee 1, Yong-Woong Lee 1, Jong-Sik Cho 1, Su-Chong Joo 2 and Hyun Yoe 1 1 School of Information

More information

Scheduling and Priority Mapping For Static Real-Time Middleware

Scheduling and Priority Mapping For Static Real-Time Middleware Scheduling and Priority Mapping For Static Real-Time Middleware LISA CINGISER DIPIPPO, VICTOR FAY WOLFE, LEVON ESIBOV, GREGORY COOPER AND RAMACHANDRA BETHMANGALKAR lastname@cs.uri.edu Department of Computer

More information

Hunting for Bindings in Distributed Object-Oriented Systems

Hunting for Bindings in Distributed Object-Oriented Systems Hunting for Bindings in Distributed Object-Oriented Systems Magdalena S lawiñska Faculty of Electronics, Telecommunications and Informatics Gdańsk University of Technology Narutowicza 11/12, 80-952 Gdańsk,

More information

CORBA and COM TIP. Two practical techniques for object composition. X LIU, School of Computing, Napier University

CORBA and COM TIP. Two practical techniques for object composition. X LIU, School of Computing, Napier University CORBA and COM TIP Two practical techniques for object composition X LIU, School of Computing, Napier University CORBA Introduction Common Object Request Broker Architecture (CORBA) is an industry-standard

More information

A Microkernel Architecture for a Highly Scalable Real-Time Middleware

A Microkernel Architecture for a Highly Scalable Real-Time Middleware A Microkernel Architecture for a Highly Scalable Real-Time Middleware U. Brinkschulte, C. Krakowski,. Riemschneider. Kreuzinger, M. Pfeffer, T. Ungerer Institute of Process Control, Institute of Computer

More information

Overview. Distributed Systems. Distributed Software Architecture Using Middleware. Components of a system are not always held on the same host

Overview. Distributed Systems. Distributed Software Architecture Using Middleware. Components of a system are not always held on the same host Distributed Software Architecture Using Middleware Mitul Patel 1 Overview Distributed Systems Middleware What is it? Why do we need it? Types of Middleware Example Summary 2 Distributed Systems Components

More information

System types. Distributed systems

System types. Distributed systems System types 1 Personal systems that are designed to run on a personal computer or workstation Distributed systems where the system software runs on a loosely integrated group of cooperating processors

More information

Estimating Fault-Detection and Fail-Over Times for Nested Real-Time CORBA Applications

Estimating Fault-Detection and Fail-Over Times for Nested Real-Time CORBA Applications Estimating Fault-Detection and Fail-Over Times for Nested Real-Time CORBA Applications Sukanya Ratanotayanon (speaker) School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 389 Tel:

More information

ASPECTIX: A QUALITY-AWARE, OBJECT-BASED MIDDLEWARE ARCHITECTURE

ASPECTIX: A QUALITY-AWARE, OBJECT-BASED MIDDLEWARE ARCHITECTURE ASPECTIX: A QUALITY-AWARE, OBJECT-BASED MIDDLEWARE ARCHITECTURE Franz J. Hauck, Ulrich Becker, Martin Geier, Erich Meier, Uwe Rastofer, Martin Steckermeier Informatik 4, University of Erlangen-Nürnberg,

More information

Towards Generic and Middleware-independent Support for Replicated, Distributed Objects

Towards Generic and Middleware-independent Support for Replicated, Distributed Objects Towards Generic and Middleware-independent Support for Replicated, Distributed s Jörg Domaschka, Hans P. Reiser, Franz J. Hauck Distributed Systems Lab, Faculty of Computer Science Ulm University Germany

More information

CORBA Services Supporting High-Level Real-Time Objects. Main Messages

CORBA Services Supporting High-Level Real-Time Objects. Main Messages CA Services Supporting High-Level Real-Time Objects K.H. (Kane) Kim (Distributed Real-time Ever Available Microcomputing Lab) khkim@uci.edu, http://dream.eng.uci.edu/ For presentation at OMG's WS-1 on

More information

Practical Methods for Adapting Services Using Enterprise Service Bus *

Practical Methods for Adapting Services Using Enterprise Service Bus * Practical Methods for Adapting s Using Enterprise Bus * Hyun Jung La, Jeong Seop Bae, Soo Ho Chang, and Soo Dong Kim Department of Computer Science Soongsil University, Seoul, Korea 511 Sangdo-Dong, Dongjak-Ku,

More information

Today: Distributed Middleware. Middleware

Today: Distributed Middleware. Middleware Today: Distributed Middleware Middleware concepts Case study: CORBA Lecture 24, page 1 Middleware Software layer between application and the OS Provides useful services to the application Abstracts out

More information

Consistency of Partitionable Object Groups in a CORBA Framework

Consistency of Partitionable Object Groups in a CORBA Framework Consistency of Partitionable Object Groups in a CORBA Framework P. Narasimhan, L. E. Moser, P. M. Melliar-Smith Department of Electrical and Computer Engineering University of California, Santa Barbara,

More information

Distributed Objects and Remote Invocation. Programming Models for Distributed Applications

Distributed Objects and Remote Invocation. Programming Models for Distributed Applications Distributed Objects and Remote Invocation Programming Models for Distributed Applications Extending Conventional Techniques The remote procedure call model is an extension of the conventional procedure

More information

Distributed Objects. Object-Oriented Application Development

Distributed Objects. Object-Oriented Application Development Distributed s -Oriented Application Development Procedural (non-object oriented) development Data: variables Behavior: procedures, subroutines, functions Languages: C, COBOL, Pascal Structured Programming

More information

Java RMI Middleware Project

Java RMI Middleware Project Java RMI Middleware Project Nathan Balon CIS 578 Advanced Operating Systems December 7, 2004 Introduction The semester project was to implement a middleware similar to Java RMI or CORBA. The purpose of

More information

An Introduction to Robot Component Model for OPRoS(Open Platform for Robotic Services)

An Introduction to Robot Component Model for OPRoS(Open Platform for Robotic Services) An Introduction to Robot Component Model for OPRoS(Open Platform for Robotic Services) Byoungyoul Song, Seungwoog Jung, Choulsoo Jang, Sunghoon Kim u-robot Reserch Division, Electronics and Telecommunications

More information

2. The Eternal Resource Management System

2. The Eternal Resource Management System Dynamic Migration Algorithms for Distributed Object Systems V. Kalogeraki, P. M. Melliar-Smith and L. E. Moser* Department of Electrical and Computer Engineering University of California, Santa Barbara,

More information

Distributed Environments. CORBA, JavaRMI and DCOM

Distributed Environments. CORBA, JavaRMI and DCOM Distributed Environments CORBA, JavaRMI and DCOM Introduction to CORBA Distributed objects A mechanism allowing programs to invoke methods on remote objects Common Object Request Broker middleware - works

More information

Lessons Learned in Building a Fault-Tolerant CORBA System

Lessons Learned in Building a Fault-Tolerant CORBA System Lessons Learned in Building a Fault-Tolerant CORBA System P. Narasimhan Institute of Software Research International, School of Computer Science Carnegie Mellon University, Pittsburgh, PA 15213-3890 L.

More information

QuickSpecs. Compaq NonStop Transaction Server for Java Solution. Models. Introduction. Creating a state-of-the-art transactional Java environment

QuickSpecs. Compaq NonStop Transaction Server for Java Solution. Models. Introduction. Creating a state-of-the-art transactional Java environment Models Bringing Compaq NonStop Himalaya server reliability and transactional power to enterprise Java environments Compaq enables companies to combine the strengths of Java technology with the reliability

More information

Announcements. me your survey: See the Announcements page. Today. Reading. Take a break around 10:15am. Ack: Some figures are from Coulouris

Announcements.  me your survey: See the Announcements page. Today. Reading. Take a break around 10:15am. Ack: Some figures are from Coulouris Announcements Email me your survey: See the Announcements page Today Conceptual overview of distributed systems System models Reading Today: Chapter 2 of Coulouris Next topic: client-side processing (HTML,

More information

Implementation of GDMO to IDL Translator and CORBA/CMIP Gateway for TMN/CORBA Integration

Implementation of GDMO to IDL Translator and CORBA/CMIP Gateway for TMN/CORBA Integration Implementation of GDMO to IDL Translator and CORBA/CMIP Gateway for TMN/CORBA Integration Seok-Heon Chae, Jong-Wook Baek, Moon-Sang Jeong, Jong -Tae Park School of Electronic and Electrical Engineering,

More information

Replica consistency of CORBA objects in partitionable distributed systems*

Replica consistency of CORBA objects in partitionable distributed systems* Distrib. Syst. Engng 4 (1997) 139 150. Printed in the UK PII: S0967-1846(97)82270-X Replica consistency of CORBA objects in partitionable distributed systems* P Narasimhan, L E Moser and P M Melliar-Smith

More information

Multi-Layered Architecture of Middleware for Ubiquitous Robot

Multi-Layered Architecture of Middleware for Ubiquitous Robot Multi-Layered Architecture of Middleware for Ubiquitous Robot In-Bae Jeong, Jong-Hwan Kim Department of Electrical Engineering and Computer Science KAIST Daejeon, Republic of Korea {ibjeong,johkim}@rit.kaist.ac.kr

More information

Chapter 2 System Models

Chapter 2 System Models CSF661 Distributed Systems 分散式系統 Chapter 2 System Models 吳俊興國立高雄大學資訊工程學系 Chapter 2 System Models 2.1 Introduction 2.2 Physical models 2.3 Architectural models 2.4 Fundamental models 2.5 Summary 2 A physical

More information

Chapter 4 Communication

Chapter 4 Communication DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN Chapter 4 Communication Layered Protocols (1) Figure 4-1. Layers, interfaces, and protocols in the OSI

More information

A Grid-Enabled Component Container for CORBA Lightweight Components

A Grid-Enabled Component Container for CORBA Lightweight Components A Grid-Enabled Component Container for CORBA Lightweight Components Diego Sevilla 1, José M. García 1, Antonio F. Gómez 2 1 Department of Computer Engineering 2 Department of Information and Communications

More information

CORBA (Common Object Request Broker Architecture)

CORBA (Common Object Request Broker Architecture) CORBA (Common Object Request Broker Architecture) René de Vries (rgv@cs.ru.nl) Based on slides by M.L. Liu 1 Overview Introduction / context Genealogical of CORBA CORBA architecture Implementations Corba

More information

Distribution Transparencies For Integrated Systems*

Distribution Transparencies For Integrated Systems* Distribution Transparencies For Integrated Systems* Janis Putman, The Corporation Ground System Architectures Workshop 2000 The Aerospace Corporation February 2000 Organization: D500 1 * The views and

More information

An ideal real-time distributed programming

An ideal real-time distributed programming COVER FEATURE APIs for Real-Time Distributed Object Programming This article focuses on application programming interfaces (APIs) that take the form of C++ and Java class libraries and support high-level,

More information

Ubiquitous Computing Summer Supporting distributed applications. Distributed Application. Operating System. Computer Computer Computer.

Ubiquitous Computing Summer Supporting distributed applications. Distributed Application. Operating System. Computer Computer Computer. Episode 11: Middleware Hannes Frey and Peter Sturm University of Trier Middleware Supporting distributed applications Distributed Application Middleware Operating System Operating System Operating System

More information

Application of a Visual Computer Simulator into Collaborative Learning

Application of a Visual Computer Simulator into Collaborative Learning Journal of Computing and Information Technology - CIT 14, 2006, 4, 267 273 doi:10.2498/cit.2006.04.01 267 Application of a Visual Computer Simulator into Collaborative Learning Yoshiro Imai 1, Keiichi

More information

Lecture 5: Object Interaction: RMI and RPC

Lecture 5: Object Interaction: RMI and RPC 06-06798 Distributed Systems Lecture 5: Object Interaction: RMI and RPC Distributed Systems 1 Recap Message passing: send, receive synchronous versus asynchronous No global Time types of failure socket

More information

Distributed Object-based Systems CORBA

Distributed Object-based Systems CORBA CprE 450/550x Distributed Systems and Middleware Distributed Object-based Systems CORBA Yong Guan 3216 Coover Tel: (515) 294-8378 Email: guan@ee.iastate.edu March 30, 2004 2 Readings for Today s Lecture!

More information

A Capabilities Based Communication Model for High-Performance Distributed Applications: The Open HPC++ Approach

A Capabilities Based Communication Model for High-Performance Distributed Applications: The Open HPC++ Approach A Capabilities Based Communication Model for High-Performance Distributed Applications: The Open HPC++ Approach Shridhar Diwan, Dennis Gannon Department of Computer Science Indiana University Bloomington,

More information

3C05 - Advanced Software Engineering Thursday, April 29, 2004

3C05 - Advanced Software Engineering Thursday, April 29, 2004 Distributed Software Architecture Using Middleware Avtar Raikmo Overview Middleware What is middleware? Why do we need middleware? Types of middleware Distributed Software Architecture Business Object

More information

Improved MAC protocol for urgent data transmission in wireless healthcare monitoring sensor networks

Improved MAC protocol for urgent data transmission in wireless healthcare monitoring sensor networks , pp.282-286 http://dx.doi.org/10.14257/astl.2015.116.57 Improved MAC protocol for urgent data transmission in wireless healthcare monitoring sensor networks Rae Hyeon Kim, Jeong Gon Kim 1 Department of

More information

Study and Implementation of Spacecraft Integration Test Platform Based on Component Technology

Study and Implementation of Spacecraft Integration Test Platform Based on Component Technology JOURNAL OF COMPUTERS, VOL. 6, NO. 5, MAY 2011 963 Study and Implementation of Spacecraft Integration Test Platform Based on Component Technology Xianjun Li State Key Laboratory of Software Development

More information

REPLICATING CORBA OBJECTS: A MARRIAGE BETWEEN ACTIVE AND PASSIVE REPLICATION*

REPLICATING CORBA OBJECTS: A MARRIAGE BETWEEN ACTIVE AND PASSIVE REPLICATION* REPLICATING CORBA OBJECTS: A MARRIAGE BETWEEN ACTIVE AND PASSIVE REPLICATION* Pascal Felber, Xavier Defago, Patrick Eugster and Andre Schiper Swiss Federal Institute of Technology Operating Systems Lab.

More information

A NEW DISTRIBUTED COMPOSITE OBJECT MODEL FOR COLLABORATIVE COMPUTING

A NEW DISTRIBUTED COMPOSITE OBJECT MODEL FOR COLLABORATIVE COMPUTING A NEW DISTRIBUTED COMPOSITE OBJECT MODEL FOR COLLABORATIVE COMPUTING Güray YILMAZ 1 and Nadia ERDOĞAN 2 1 Dept. of Computer Engineering, Air Force Academy, 34807 Yeşilyurt, İstanbul, Turkey 2 Dept. of

More information

Managing Complexity of Designing Routing Protocols Using a Middleware Approach

Managing Complexity of Designing Routing Protocols Using a Middleware Approach Managing Complexity of Designing Routing Protocols Using a Middleware Approach Cosmina Ivan 1, Vasile Dadarlat 2, and Kalman Pusztai 3 1 Department of Computer Science & Information Systems University

More information

Lecture 06: Distributed Object

Lecture 06: Distributed Object Lecture 06: Distributed Object Distributed Systems Behzad Bordbar School of Computer Science, University of Birmingham, UK Lecture 0? 1 Recap Interprocess communication Synchronous and Asynchronous communication

More information

End-to-End Latency of a Fault-Tolerant CORBA Infrastructure Λ

End-to-End Latency of a Fault-Tolerant CORBA Infrastructure Λ End-to-End Latency of a Fault-Tolerant CORBA Infrastructure Λ W. Zhao, L. E. Moser and P. M. Melliar-Smith Department of Electrical and Computer Engineering University of California, Santa Barbara, CA

More information

Tourism Guided Information System for Location-Based Services

Tourism Guided Information System for Location-Based Services Tourism Guided Information System for Location-Based Services Chang-Won Jeong 1, Yeong-Jee Chung 2, Su-Chong Joo, 2 and Joon-whoan Lee 1 1 Research Center for Advanced LBS Technology of Chonbuk National

More information

CAS 703 Software Design

CAS 703 Software Design Dr. Ridha Khedri Department of Computing and Software, McMaster University Canada L8S 4L7, Hamilton, Ontario Acknowledgments: Material based on Software by Tao et al. (Chapters 9 and 10) (SOA) 1 Interaction

More information

Middleware. Adapted from Alonso, Casati, Kuno, Machiraju Web Services Springer 2004

Middleware. Adapted from Alonso, Casati, Kuno, Machiraju Web Services Springer 2004 Middleware Adapted from Alonso, Casati, Kuno, Machiraju Web Services Springer 2004 Outline Web Services Goals Where do they come from? Understanding middleware Middleware as infrastructure Communication

More information

1 From Distributed Objects to Distributed Components

1 From Distributed Objects to Distributed Components From Distributed Objects to Distributed : the Olan Approach Luc Bellissard, Michel Riveill BP 53, F 38041 Grenoble Cedex 9, FRANCE Phone: (33) 76 61 52 78 Fax: (33) 76 61 52 52 Email: Luc.Bellissard@imag.fr

More information

DS 2009: middleware. David Evans

DS 2009: middleware. David Evans DS 2009: middleware David Evans de239@cl.cam.ac.uk What is middleware? distributed applications middleware remote calls, method invocations, messages,... OS comms. interface sockets, IP,... layer between

More information

Introduction to Web Services & SOA

Introduction to Web Services & SOA References: Web Services, A Technical Introduction, Deitel & Deitel Building Scalable and High Performance Java Web Applications, Barish Service-Oriented Programming (SOP) SOP A programming paradigm that

More information

Exploiting the Internet Inter-ORB Protocol Interface to Provide CORBA with Fault Tolerance

Exploiting the Internet Inter-ORB Protocol Interface to Provide CORBA with Fault Tolerance The following paper was originally published in the Proceedings of the Third USENIX Conference on Object-Oriented Technologies and Systems Portland, Oregon, June 1997 Exploiting the Internet Inter-ORB

More information

Lightweight Service-oriented Grid Application Toolkit *

Lightweight Service-oriented Grid Application Toolkit * JOURNAL OF INFORMATION SCIENCE AND ENGINEERING 23, 1367-1378 (2007) Lightweight Service-oriented Grid Application Toolkit * SUNGJU KWON, JAEYOUNG CHOI AND KUMWON CHO + School of Computing Soongsil University

More information

Module 1 - Distributed System Architectures & Models

Module 1 - Distributed System Architectures & Models Module 1 - Distributed System Architectures & Models System Architecture Defines the structure of the system components identified functions of each component defined interrelationships and interactions

More information

Resource and Service Trading in a Heterogeneous Large Distributed

Resource and Service Trading in a Heterogeneous Large Distributed Resource and Service Trading in a Heterogeneous Large Distributed ying@deakin.edu.au Y. Ni School of Computing and Mathematics Deakin University Geelong, Victoria 3217, Australia ang@deakin.edu.au Abstract

More information

A Soft Real-Time TMO Platform - WTMOS - and Implementation Techniques

A Soft Real-Time TMO Platform - WTMOS - and Implementation Techniques A Soft Real-Time TMO Platform - WTMOS - and Implementation Techniques J. G. Kim M. H. Kim Hankuk University of Foreign Studies Konkuk University Seoul, Korea Seoul, Korea jgkim@maincc.hufs.ac.kr mhkim@galaxy.konkuk.ac.kr

More information

Crisis and paradox in distributed-systems development

Crisis and paradox in distributed-systems development IEEE DISTRIBUTED SYSTEMS ONLINE 1541-4922 2005 Published by the IEEE Computer Society Vol. 6, No. 3; March 2005 Department Editor: Olivier Marin, http://www.cs.vu.nl/~omarin/, Laboratoire d'informatique

More information

INFACTORY : A RESTFUL API SERVER FOR EASILY CREATING INDOORGML

INFACTORY : A RESTFUL API SERVER FOR EASILY CREATING INDOORGML INFACTORY : A RESTFUL API SERVER FOR EASILY CREATING INDOORGML Hyemi Jeong, Hyung-gyu Ryoo, Ki-Joune Li Dept. of Computer Science&Engineering, Pusan National University, Kumjeong-Gu, 46241, Pusan, South

More information

Distributed Systems Theory 4. Remote Procedure Call. October 17, 2008

Distributed Systems Theory 4. Remote Procedure Call. October 17, 2008 Distributed Systems Theory 4. Remote Procedure Call October 17, 2008 Client-server model vs. RPC Client-server: building everything around I/O all communication built in send/receive distributed computing

More information

A Ubiquitous Web Services Framework for Interoperability in Pervasive Environments

A Ubiquitous Web Services Framework for Interoperability in Pervasive Environments A Ubiquitous Web Services Framework for Interoperability in Pervasive Environments Hyung-Jun Yim and Kyu-Chul Lee * Dept. of Computer Engineering, Chungnam National University 220 Gung-Dong, Yuseong-Gu,

More information

Middleware Techniques and Optimizations for Real-time, Embedded Systems. 1 Introduction: Why We Need Middleware for Real-time Embedded Systems

Middleware Techniques and Optimizations for Real-time, Embedded Systems. 1 Introduction: Why We Need Middleware for Real-time Embedded Systems Middleware Techniques and Optimizations for Real-time, Embedded Systems Douglas C. Schmidt schmidt@cs.wustl.edu Department of Computer Science Washington University, St. Louis St. Louis, MO, 63130 This

More information

Implementation of a TMO-structured real-time airplane-landing simulator on a distributed computing environment

Implementation of a TMO-structured real-time airplane-landing simulator on a distributed computing environment SOFTWARE PRACTICE AND EXPERIENCE (DOI: 10.1002/spe.620) Implementation of a TMO-structured real-time airplane-landing simulator on a distributed computing environment Min-Gu Lee 1, Sunggu Lee 1,, and K.

More information

WPAN Platform Design in Handset Integrating Cellular Network and Its Application to Mobile Games

WPAN Platform Design in Handset Integrating Cellular Network and Its Application to Mobile Games WPAN Platform Design in Handset Integrating Cellular Network and Its Application to Mobile Games In-Hwan Kim*, Hoo-Jong Kim*, and Gu-Min Jeong** *Mobile Device Development Team 1, Mobile Device & Access

More information

Efficient Adaptations of the Non-Blocking Buffer for Event Message Communication

Efficient Adaptations of the Non-Blocking Buffer for Event Message Communication Proc. ISORC2007 (10th IEEE CS Int' Symp. on Object & Component Oriented Real- Time Distributed Computing), Santorini, Greece, May 7-9, 2007, pp.29-40. Efficient Adaptations of the Non-Blocking Buffer for

More information

MODELS OF DISTRIBUTED SYSTEMS

MODELS OF DISTRIBUTED SYSTEMS Distributed Systems Fö 2/3-1 Distributed Systems Fö 2/3-2 MODELS OF DISTRIBUTED SYSTEMS Basic Elements 1. Architectural Models 2. Interaction Models Resources in a distributed system are shared between

More information

Distributed Systems. The main method of distributed object communication is with remote method invocation

Distributed Systems. The main method of distributed object communication is with remote method invocation Distributed Systems Unit III Syllabus:Distributed Objects and Remote Invocation: Introduction, Communication between Distributed Objects- Object Model, Distributed Object Modal, Design Issues for RMI,

More information

CHAPTER 2. Introduction to Middleware Technologies

CHAPTER 2. Introduction to Middleware Technologies CHAPTER 2. Introduction to Middleware Technologies What is Middleware? General Middleware Service Specific Middleware Client/Server Building blocks RPC Messaging Peer to Peer Java RMI. BHUSHAN JADHAV 1

More information

Design Framework for Self-Stabilizing Real- Time Systems Based on Real-Time Objects and Prototype Implementation with Analysis 1

Design Framework for Self-Stabilizing Real- Time Systems Based on Real-Time Objects and Prototype Implementation with Analysis 1 Design Framework for Self-Stabilizing Real- Time Systems Based on Real-Time Objects and Prototype Implementation with Analysis 1 Sushil S. Digewade and Albert M. K. Cheng Computer Science Department University

More information

Quality Objects (QuO): Adaptive Management and Control Middleware for End-to-End QoS

Quality Objects (QuO): Adaptive Management and Control Middleware for End-to-End QoS Quality Objects (QuO): Adaptive Management and Control Middleware for End-to-End QoS Craig Rodrigues, Joseph P. Loyall, Richard E. Schantz BBN Technologies/GTE Technology Organization Cambridge, Massachusetts,

More information

SPECIFYING AND MODELING MULTICAST COMMUNICATION IN CBCAST PROTOCOL

SPECIFYING AND MODELING MULTICAST COMMUNICATION IN CBCAST PROTOCOL THE PUBLISHING HOUSE PROCEEDINGS OF THE ROMANIAN ACADEMY, Series A, OF THE ROMANIAN ACADEMY Volume 13, Number 3/2012, pp. 261 268 SPECIFYING AND MODELING MULTICAST COMMUNICATION IN CBCAST PROTOCOL Seyed

More information

Expressing and Enforcing Timing Constraints in a. real-time. This paper describes a Dynamic Real-Time CORBA system, which supports the expression

Expressing and Enforcing Timing Constraints in a. real-time. This paper describes a Dynamic Real-Time CORBA system, which supports the expression ,, 1{30 () c Kluwer Academic Publishers, Boston. Manufactured in The Netherlands. Expressing and Enforcing Timing Constraints in a Dynamic Real-Time CORBA System VICTOR FAYWOLFE, LISA CINGISER DIPIPPO,

More information

Design of a Real-Time Trader for Mobile Objects in Open Distributed Environments

Design of a Real-Time Trader for Mobile Objects in Open Distributed Environments Design of a Real-Time for Mobile Objects in Open Distributed Environments Song-yi Yi, Heonshik Shin Department of Computer Engineering Seoul National University Seoul 151-742, Korea fyis, shinhsg@ce2.snu.ac.kr

More information

A RESOURCE AWARE SOFTWARE ARCHITECTURE FEATURING DEVICE SYNCHRONIZATION AND FAULT TOLERANCE

A RESOURCE AWARE SOFTWARE ARCHITECTURE FEATURING DEVICE SYNCHRONIZATION AND FAULT TOLERANCE A RESOURCE AWARE SOFTWARE ARCHITECTURE FEATURING DEVICE SYNCHRONIZATION AND FAULT TOLERANCE Chris Mattmann University of Southern California University Park Campus, Los Angeles, CA 90007 mattmann@usc.edu

More information

Programming with RMI Reminder

Programming with RMI Reminder Programming with RMI Reminder (Sources: Gordon S Blair, Paul Grace) Aims After completing the following you should get a reminder of: 1. the fundamental concepts of Java Remote Method Invocation; 2. the

More information

Chapter 16. Layering a computing infrastructure

Chapter 16. Layering a computing infrastructure : Chapter 16 by David G. Messerschmitt Layering a computing infrastructure Applications Application components Middleware Operating system Network 2 1 Spanning layer Application Distributed object management

More information

On Latency Management in Time-Shared Operating Systems *

On Latency Management in Time-Shared Operating Systems * On Latency Management in Time-Shared Operating Systems * Kevin Jeffay University of North Carolina at Chapel Hill Department of Computer Science Chapel Hill, NC 27599-3175 jeffay@cs.unc.edu Abstract: The

More information

Developing Software Applications Using Middleware Infrastructure: Role Based and Coordination Component Framework Approach

Developing Software Applications Using Middleware Infrastructure: Role Based and Coordination Component Framework Approach Developing Software Applications Using Middleware Infrastructure: Role Based and Coordination Component Framework Approach Ninat Wanapan and Somnuk Keretho Department of Computer Engineering, Kasetsart

More information

A Framework with Proactive Nodes for Scheduling and Optimizing Distributed Embedded Systems

A Framework with Proactive Nodes for Scheduling and Optimizing Distributed Embedded Systems A Framework with Proactive Nodes for Scheduling and Optimizing Distributed Embedded Systems Adrián Noguero 1 and Isidro Calvo 2 1 European Software Institute, Parque Tecnológico de Zamudio, #204, 48170,

More information

CS 162 Operating Systems and Systems Programming Professor: Anthony D. Joseph Spring Lecture 22: Remote Procedure Call (RPC)

CS 162 Operating Systems and Systems Programming Professor: Anthony D. Joseph Spring Lecture 22: Remote Procedure Call (RPC) CS 162 Operating Systems and Systems Programming Professor: Anthony D. Joseph Spring 2002 Lecture 22: Remote Procedure Call (RPC) 22.0 Main Point Send/receive One vs. two-way communication Remote Procedure

More information

TINA-COMPLIANT SERVICE PROVISION AND NUMBERING IN UMTS

TINA-COMPLIANT SERVICE PROVISION AND NUMBERING IN UMTS Proceedings of 6th IEE Conference on Telecommunications, Conference Publication No. 451 Edinburgh, UK, 29 March - 1 April 1998 TINA-COMPLIANT SERVICE PROVISION AND NUMBERING IN UMTS Axel Küpper and Frank

More information

COMERA: COM Extensible Remoting Architecture

COMERA: COM Extensible Remoting Architecture The following paper was originally published in the Proceedings of the 4th USENIX Conference on Object-Oriented Technologies and Systems (COOTS) Santa Fe, New Mexico, April 27-30, 1998 COMERA: COM Extensible

More information

Introduction to Distributed Systems. INF5040/9040 Autumn 2018 Lecturer: Eli Gjørven (ifi/uio)

Introduction to Distributed Systems. INF5040/9040 Autumn 2018 Lecturer: Eli Gjørven (ifi/uio) Introduction to Distributed Systems INF5040/9040 Autumn 2018 Lecturer: Eli Gjørven (ifi/uio) August 28, 2018 Outline Definition of a distributed system Goals of a distributed system Implications of distributed

More information

Advanced Lectures on knowledge Engineering

Advanced Lectures on knowledge Engineering TI-25 Advanced Lectures on knowledge Engineering Client-Server & Distributed Objects Platform Department of Information & Computer Sciences, Saitama University B.H. Far (far@cit.ics.saitama-u.ac.jp) http://www.cit.ics.saitama-u.ac.jp/~far/lectures/ke2/ke2-06/

More information

PROFESSOR: DR.JALILI BY: MAHDI ESHAGHI

PROFESSOR: DR.JALILI BY: MAHDI ESHAGHI PROFESSOR: DR.JALILI BY: MAHDI ESHAGHI 1 2 Overview Distributed OZ Java RMI CORBA IDL IDL VS C++ CORBA VS RMI 3 Distributed OZ Oz Language Multi paradigm language, strong support for compositionality and

More information

Patterns in Distributed Real-Time Scheduling

Patterns in Distributed Real-Time Scheduling Patterns in Distributed Real-Time Scheduling Lisa Cingiser DiPippo, Victor Fay-Wolfe, Jiangyin Zhang, Matthew Murphy, Priyanka Gupta The University of Rhode Island Kingston, RI USA 02881 {dipippo, wolfe,

More information

CS555: Distributed Systems [Fall 2017] Dept. Of Computer Science, Colorado State University

CS555: Distributed Systems [Fall 2017] Dept. Of Computer Science, Colorado State University CS 555: DISTRIBUTED SYSTEMS [RPC & DISTRIBUTED OBJECTS] Shrideep Pallickara Computer Science Colorado State University Frequently asked questions from the previous class survey XDR Standard serialization

More information

Remote Invocation Vladimir Vlassov and Johan Montelius

Remote Invocation Vladimir Vlassov and Johan Montelius KTH ROYAL INSTITUTE OF TECHNOLOGY Middleware Remote Invocation Vladimir Vlassov and Johan Montelius Application layer Remote invocation / indirect communication Socket layer Network layer ID2201 DISTRIBUTED

More information