Concurrent B-tree for Disjoint Interval Management
Interval Management; Virtual Memory Areas (VMAs); Kernel Memory Management; B-tree; Interval Tree; Maple Tree
This work explores data structures for disjoint interval management in operating systems, focusing on Virtual Memory Areas (VMAs), which define contiguous memory regions within a process's virtual address space and are crucial for efficient allocation, protection, and paging. Efficient VMA management enhances memory performance, reduces fragmentation, and improves concurrency. The study analyzes Interval Trees and Maple Trees, highlighting their advantages, limitations, and impact on modern kernels. As an alternative, it proposes a modified concurrent B-tree inspired by Maple Tree, aiming for scalability and low memory overhead while simplifying implementation and maintenance. Key challenges such as concurrency, cache efficiency, and performance trade-offs are discussed. A benchmark is planned to compare the proposed structure against the classic Interval Tree, assessing its performance and suitability for kernel memory management.