Storage devices enable computers to carry information over time. They exist in many parts of computers - CPU registers, main memory, hard disks, CD-ROMs, etc. Computers function through their intricate combination.
Such combination is controlled by software, which is also stored in them. The concept of software has been evolving through the development and the spread of computer systems. Although software primarily indicated executable program codes, it now suggests a wide range of digital information surrounding computer systems.
Thus, storage devices are, as it were, the grounds for software, as a processor is the batter's box for it.
Database management systems are typical application software. They store, retrieve, and arrange digital information in storage devices. However, the widely used relational database systems do not harmonize enough with ordinary programming languages. Queries to the databases must be written in SQL, which is conceptually different from the programming languages such as C++, and be invoked through the special libraries.
Purely object-oriented database systems (ODBMS), on the other hand, can eliminate such conceptual gaps. Their interfaces are similar to those of the usual programming languages. ODBMSs provide the programming languages with the persistence of data structures.
The implemented object-oriented persistent storage for C++ is aiming at the same goals. It is a framework of an ODBMS. Portability, simplicity, and flexibility are sought in the implementation.