The object-oriented database management system is emerging as the next generation database technology for applications that manage unstructured data as well as structured data, such as CAD/CAM, VLSI design, multimedia system, and GIS. Despite its superior expressive power in comparison with the established relational database management system, the acceptance of the object-oriented database management system will ultimately depend on its performance. The object manager is a part of an object-oriented database management system that supports efficient object management so that it improves the performance of the system. The main function of the object manager is to support the object identifier, object buffering, pointer swizzling, object naming and object clustering.
This thesis describes the design and implementation of an object manager that performs object buffering and pointer swizzling. In the buffering module, a buddy system is used for memory management and a new replacement algorithm is used for the object buffer. In the pointer swizzling module, we used adaptable pointer swizzling so that we can choose a swizzling method depending on the application characteristics. The module can select between the eager-indirect pointer swizzling and the lazy-indirect pointer swizzling.