Skip to Content Java Solaris Communities Partners My Sun Sun Store United States Worldwide

»  Spotlight Articles
»  Projects
»  Publications
»  People
»  Awards
»  Events
»  Downloads
»  Internships
»  Contrarian Minds
»  About Sun Labs

Object Binary Interface--C++ Objects for Evolvable Shared Class Libraries, The

Author(s):
Theodore C. Goldstein and Alan D. Sloane
Report Number: Date Published: Available Formats:
TR-94-26 June 1994 Portable Document Format (PDF)
Postscript (PS)
Request Hard Copy
Abstract

Object-oriented design and object-oriented languages support the development of independent software components such as class libraries. When using such components, versioning becomes a key issue. While various ad-hoc techniques and coding idioms have been used to provide versioning, all of these techniques have deficiencies--ambiguity, the necessity of recompilation or re-coding, or the loss of binary compatibility of programs. Components from different software vendors are versioned at different times. Maintaining compatibility between versions must be consciously engineered. New technologies--such as distributed objects--further complicate libraries by requiring multiple implementations of a type simultaneously in a program.

This paper describes a new C++ object model called the Shared Object Model (SOM) for C++ users, and a new implementation model called the Object Binary Interface (OBI) for C++ implementors. These techniques provide a mechanism for allowing multiple implementations of an object in a program. Early analysis of this approach has shown it to have performance broadly comparable to conventional implementations.

Would you recommend this Sun site to a friend or colleague?
Contact About Sun News Employment Privacy Terms of Use Trademarks Copyright 1994-2009 Sun Microsystems, Inc.