COM/DCOM Implementation Basics of: Object creation and access Object Reuse Interface referencing.

Slides:



Advertisements
Similar presentations
Component Object Model
Advertisements

Qisheng Hong Yani Mulyani Paul Visokey
Fundamentals of COM Mary Kirtland Program Manager COM Team Microsoft Corporation.
COM vs. CORBA.
Intro to COM What is it and how do I use it?. Objectives Teach the fundamentals of COM. Understand the reason for using it. Learn to make a simple in-process.
AP 01/01 Asynchronous Calls Standard COM+ model is completely synchronous –Emulates standard procedure calls –Problematic in distributed scenarios with.
Remote Object Invocation
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 13 Introduction to SQL Programming Techniques.
Distributed Object Computing Weilie Yi Dec 4, 2001.
CS 501: Software Engineering Fall 2000 Lecture 16 System Architecture III Distributed Objects.
1 COM/DCOM n Part of Project Presentation (Concept Outline)
OCT 1 Master of Information System Management Organizational Communications and Distributed Object Technologies Lecture 5: Distributed Objects.
Communication in Distributed Systems –Part 2
Object Based Operating Systems1 Learning Objectives Object Orientation and its benefits Controversy over object based operating systems Object based operating.
1 DirectX CIS 487/587 Bruce R. Maxim UM-Dearborn.
Intro to COM What is it and what can it do for me?
DCOM Technology. What is DCOM? DCOM is just COM with a longer wire DCOM is just COM with a longer wire DCOM extends COM to support communication among.
DCOM Technology Şevket Duran Haşim Sak.
CHAPTER 3 The Component Object Model and DirectX © 2008 Cengage Learning EMEA.
L6 - March 1, 2006copyright Thomas Pole , all rights reserved 1 Lecture 6: Software Packaging: Dynamically Integrable Components and Text Ch.
CSC Proprietary 9/11/2015 2:16:16 AM 008_P2_CSC_white 1.
COM vs. CORBA Computer Science at Azusa Pacific University September 19, 2015 Azusa Pacific University, Azusa, CA 91702, Tel: (800) Department.
Chapter 1: Creating ActiveX Clients By Noppadon Kamolvilassatian Dept. of Computer Engineering, Prince of Songkla University Source: Mastering Visual Basic.
DCOM (Overview) by- Jeevan Varma Anga.
Microsoft’s Distributed Component Object Model (DCOM) Jim Ries Updated 10/5/1999 A semi-technical overview.
OLE / COM Helia / Martti Laiho Sources: MSDN Kraig Brockschmidt: Inside OLE Orfali-Harkey-Erwards: Client/Server Survival Guide.
COM and DCOM CS 562 February 27, Motivation Data Analyzer Resource Monitor int compute (…) { } int compute (…) { } Data Analyzer int compute (…)
Introduction to COM and DCOM Organizational Communications and Technologies Prithvi N. Rao H. John Heinz III School of Public Policy and Management Carnegie.
CS 603 DCOM April 5, DCOM – What is it? Start with COM – Component Object Model –Language-independent object interface Add interprocess communication.
Comparison of Web Services, RMI, CORBA, DCOM Usha, Lecturer MCA Department of Computer Science and Engineering.
COMCOM omponent bject odel After this presentation, you will: Be Able To: Conceptual understanding of COM How it works, What it’s used for Decode Acronyms.
1 Distributed Systems Distributed Objects & Remote Invocation II (CORBA VS DCOM) Dr. Sunny Jeong. With Thanks to.
Information Management NTU Interprocess Communication and Middleware.
OOMI From COM to DCOM.
Ni.com Understanding COM/ActiveX Jeff Paulter Staff Software Engineer Thurs Aug 17 10:15-11:30 a.m., 1:45-3:00 p.m. Ash (10A) Jeff Paulter Staff Software.
Introduction to COM and ActiveX Controls. What is an object? In the Fayad sense of the word.
 Remote Procedure Call (RPC) is a high-level model for client-sever communication.  It provides the programmers with a familiar mechanism for building.
CSE 451: Operating Systems Winter 2015 Module 22 Remote Procedure Call (RPC) Mark Zbikowski Allen Center 476 © 2013 Gribble, Lazowska,
OOMI A short introduction to Microsoft's COM From COM to DCOM.
1 Developing Application in Distributed Computing Environment (DCE)
GAM666 – Introduction To Game Programming ● DirectX is implemented as a collection of COM objects ● To use a DirectX program, the user must have the correct.
COM / DCOM Xiaolan Lu Mingzhen Wang Dong Xie. Why COM / DCOM?  Challenges facing the software industry  Component software provides a solution  General.
Seminarium on Component-based Software Engineering Feraaz Imami LIACS – Leiden University Fall 2005 Component Object Model (COM)
1 Distributed Processing Framework Behind the scenes.
ISBN Chapter 12 Support for Object-Oriented Programming.
Topic 4: Distributed Objects Dr. Ayman Srour Faculty of Applied Engineering and Urban Planning University of Palestine.
Distributed Web Systems Distributed Objects and Remote Method Invocation Lecturer Department University.
Component Object Model(COM)
Component Object Model
Component Object Model
Microsoft’s Distributed Component Object Model (DCOM)
Out-of-Process Components
COM: A Brief Introduction
CSE 451: Operating Systems Winter 2006 Module 20 Remote Procedure Call (RPC) Ed Lazowska Allen Center
Interpreter Style Examples
Lecture 4: RPC Remote Procedure Call Coulouris et al: Chapter 5
DCOM-CORBA Comparison
Component--based development
CSE 451: Operating Systems Winter 2007 Module 20 Remote Procedure Call (RPC) Ed Lazowska Allen Center
Lecture 4: RPC Remote Procedure Call CDK: Chapter 5
Objectives In this lesson you will learn about: Need for servlets
CSE 451: Operating Systems Winter 2004 Module 19 Remote Procedure Call (RPC) Ed Lazowska Allen Center
CSE 451: Operating Systems Spring 2012 Module 22 Remote Procedure Call (RPC) Ed Lazowska Allen Center
Quality Assurance for Component-Based Software Development
Out-of-Process Components
Presented By Justas Raslanas
Lecture 7 ATL and Out-of-Process Components
Jim Fawcett CSE775 – Distributed Objects Spring 2007
CSE 451: Operating Systems Messaging and Remote Procedure Call (RPC)
CORBA and COM TIP Two practical techniques for object composition
Presentation transcript:

COM/DCOM Implementation Basics of: Object creation and access Object Reuse Interface referencing

4 Basic Problems Basic interoperability – ensuring different vendor components can interoperate Version Control – upgrading separate components without upgrading entire system Language independence – different components can be developed in different languages Transparency – transparency across processes

Creating an Object Invoke an API to create the new object - CoCreateInstance COM locates object implementation and initiates the server process Object created and pointer to interface returned Object has to be initialized once it is created - load data from file, stream or any other data store. Alternatively, use monikers.

Accessing Objects In-process server - client and server execute in the same process. Local Object Proxy - lightweight Remote Procedure Call. Remote Object Proxy - DCOM is used for this. Requires marshalling and unmarshalling of data

Object Reuse Two forms: Containment - one object holds an exclusive reference to another (outer object holds and inner object) But performance problems can arise due to hierarchies in containment. Aggregation - defined in DCOM. Need collaboration between inner and outer objects. Mainly used for nested constructions. Both have to maintain transparency.

Interface referencing Specified by IDL, have a unique IID. Provides a small set of methods. COM objects can implement multiple interfaces. They can be derived from other interfaces using concept of inheritance - most inherit from IUnknown, also from IDispatch and IPersist.

Interface referencing (contd..) IUnknown has three methods: QueryInterface Addref Release Addref and Release are reference counting methods.

Interface referencing (contd..) QueryInterface - determines if interface is supported by object (at runtime) If it is, pointer to the interface is returned., else returns an error. Invoked when application needs a function of an object. This mechanism is provided by the Component Object library

Object Creation in DCOM Enhanced version of mechanism in COM - allows objects to be created on different machines. Library to needs to know server name (on which object to be created) and CLSID. 2 mechanisms for providing clients to indicate server name for object creation: Fixed configuration in system registry Remote server name can be explicitly defined Alternatively, use monikers.

Interface referencing (DCOM) DCOM has made an extension to definition of a new primitive data type. This is the interface reference to OBJREF. Variations: NULL STANDARD CUSTOM HANDLER