Accession Number : ADA327592

Title :   Mach Shared Objects.

Descriptive Note : Final rept. 1 Jul 91-31 Dec 94.

Corporate Author : UTAH UNIV SALT LAKE CITY DEPT OF COMPUTER SCIENCE

PDF Url : ADA327592

Report Date : 26 OCT 1995

Pagination or Media Count : 10

Abstract : The commonality of Unix-based open systems has greatly advanced software portability, sharing and interoperability. The MSO project exploited that commonality in constructing two object managers (OM) layered on modern operating systems: one for C++ and one for Common Lisp programs. Both incorporate comprehensive support for persistence of all language object types, data evolution, and distributed implementation and access. Key to the MSO approach is viewing object management as an instance of the generalized problem of accessing and combining software components. Under this view, software components as managed as pervasive system resources rather than transient language artifacts. Hence the MSO OM focuses on efficient manipulation and sharing of modules as computational resources, including system and user libraries, data schemata, class implementations, and persistent objects. This has been achieved through OMOS (Object/Meta Object Server), which provides comprehensive module definition, combination and mapping services. These capabilities are exploitable in O-O languages through abstractions for object naming, data type management, persistence, modularity, distribution, and shared object mutation control. Compiler and platform heterogeneity are obtained through system-generated objects describing module types. Effective utilization in Alpha^1, a large-scale computer aided geometric design (CAGD) and manufacturing (CAM) software system, constituted our primary validation criterion. This was a demanding test case, due to its code size, versatility, and existing hand-crafted methods for persistence and data evolution.

Descriptors :   *SOFTWARE ENGINEERING, *OPERATING SYSTEMS(COMPUTERS), TEST AND EVALUATION, COMPUTER PROGRAMS, CONTROL, TRANSIENTS, COMPUTATIONS, DATA MANAGEMENT, SIZES(DIMENSIONS), VALIDATION, INTEROPERABILITY, PROGRAMMING LANGUAGES, CODING, SHARING, PLATFORMS, EVOLUTION(GENERAL), USER NEEDS, RESOURCES, HETEROGENEITY, MANAGEMENT PERSONNEL, MAPPING, COMPILERS, LIBRARIES, COMMONALITY.

Subject Categories : Computer Programming and Software

Distribution Statement : APPROVED FOR PUBLIC RELEASE