USENIX Technical Program - Abstract - COOTS 99
Intercepting and Instrumenting COM Applications
Galen C. Hunt, Microsoft Research; Michael L. Scott, University of Rochester
Binary standard object models, such as Microsoft's
Component Object Model (COM) enable the development of not just
reusable components, but also an incredible variety of useful
component services through run-time interception of binary standard
interfaces. Interception of binary components can be used for
conformance testing, debugging, profiling, transaction management,
serialization and locking, cross-standard middleware interoperability,
automatic distributed partitioning, security enforcement, clustering,
just-in-time activation, and transparent component aggregation.
We describe the implementation of an interception
and instrumentation system tested on over 300 COM binary components,
700 unique COM interfaces, 2 million lines of code, and on 3 major
commercial-grade applications including Microsoft PhotoDraw 2000. The
described system serves as the foundation for the Coign Automatic
Distributed Partitioning System (ADPS), the first ADPS to
automatically partition and distribute binary applications.
While the techniques described in this paper were
developed specifically for COM, they have relevance to other object
models with binary standards, such as individual CORBA
- View the full text of this paper in
HTML form and
- If you need the latest Adobe Acrobat Reader, you can download it from Adobe's site.
- To become a USENIX Member, please see our Membership Information.