313
© The Author(s) 2020
S. Scargall, Programming Persistent Memory, https://doi.org/10.1007/978-1-4842-4932-1_16
CHAPTER 16
PMDK Internals:
Important Algorithms
and Data Structures
Chapters 5 through 10 describe most of the libraries contained within the Persistent
Memory Development Kit (PMDK) and how to use them.
This chapter introduces the fundamental algorithms and data structures on which
libpmemobj is built. After we first describe the overall architecture of the library, we
discuss the individual components and the interaction between them that makes
libpmemobj a cohesive system.
A Pool of Persistent Memory: High-Level
Architecture Overview
Figure 16-1 shows that libpmemobj comprises many isolated components that build on
top of each other to provide a transactional object store.
Figure 16-1. The modules of the libpmemobj architecture
© The Author(s) 2020
S. Scargall, Programming Persistent Memory, https://doi.org/10.1007/978-1-4842-4932-1_16
CHAPTER 16
PMDK Internals:
Important Algorithms
and Data Structures
Chapters 5 through 10 describe most of the libraries contained within the Persistent
Memory Development Kit (PMDK) and how to use them.
This chapter introduces the fundamental algorithms and data structures on which
libpmemobj is built. After we first describe the overall architecture of the library, we
discuss the individual components and the interaction between them that makes
libpmemobj a cohesive system.
A Pool of Persistent Memory: High-Level
Architecture Overview
Figure 16-1 shows that libpmemobj comprises many isolated components that build on
top of each other to provide a transactional object store.
Figure 16-1. The modules of the libpmemobj architecture
