As described in the previous section, the Berkeley DB library is made up of
five major subsystems, as follows:
The access methods subsystem is made up of general-purpose support for
creating and accessing database files formatted as B+tree's, Hashed files,
and fixed- and variable-length records. These modules are useful in the
absence of transactions for processes that need fast, formatted file
support. See db_open and DB->cursor for more
The locking subsystem is a general-purpose lock manager used by Berkeley DB.
This module is useful in the absence of the rest of the Berkeley DB package for
processes that require a fast, configurable lock manager. See
lock_open for more information.
The logging subsystem is the logging support used to support the Berkeley DB
transaction model. It is largely specific to the Berkeley DB package, and
unlikely to be used elsewhere. See log_open for more information.
The memory pool subsystem is the general-purpose shared memory buffer
pool used by Berkeley DB. This module is useful outside of the Berkeley DB package
for processes that require page-oriented, cached, shared file access.
See memp_open for more information.
The transaction subsystem implements the Berkeley DB transaction model. It
is largely specific to the Berkeley DB package. See txn_open for more