Page Eviction for Shared Virtual-Memory Objects
- Typ der Arbeit: Masterarbeit
- Status der Arbeit: abgeschlossen
- Projekte: ParPerOS
- Betreuer: Alexander Halbuer, Daniel Lohmann
- Bearbeiter: Tim Hollmann
- Ende der Arbeit: 03. Jul 2024
With Morsels we introduced a novel new memory-management paradigm, that shifts from the management of individual pages to larger virtual-memory objects, technically represented as subtrees of the page-table hierarchy. This reduces management overhead and enables very fast transfer between address spaces.
As of the current implementation, it allows for the lazy population of the Morsel surface but lacks support for page eviction. This limitation arises from the translation lookaside buffer (TLB) which caches present page table entries and, as a result, prohibits page eviction by simply clearing the related page table entries. However, page eviction is vital for implementing advanced features like swapping and huge-page merging.
To incorporate page eviction functionality into the Morsel implementation within the Linux kernel, several essential steps must be taken. Firstly, it necessitates the identification of all mapping locations and the involvement of all associated CPU cores to invalidate the relevant TLB entries. This step is critical to ensure that evicted pages are effectively removed and no longer accessible.
Your task involves extending the current Morsel implementation in the Linux kernel to support page eviction through an explicit system call. This system call should enable users or applications to request the eviction of specific pages.
Topics: Linux kernel, C, Virtual Memory, Translation Lookaside Buffer (TLB)
Related
IOMMU-assisted Memory Management: Sharing Virtual Memory Objects for Efficient Computing
- Typ
- Masterarbeit
- Status
- abgeschlossen
- Supervisors
- Alexander Halbuer
Daniel Lohmann - Project
- ParPerOS
- Bearbeiter
- Kenny Albes (abgegeben: 05. Dec 2023)
Efficient Serialization of Page-Table-Based Virtual Memory Objects
- Typ
- Bachelorarbeit
- Status
- abgeschlossen
- Supervisors
- Alexander Halbuer
Daniel Lohmann - Project
- ParPerOS
Databases on NVRAM
- Typ
- Bachelorarbeit
- Status
- abgeschlossen
- Supervisors
- Alexander Halbuer
Daniel Lohmann - Project
- ParPerOS
- Bearbeiter
- Matthias Wormann (abgegeben: 02. Oct 2023)
Morsel Managment Layer: Making Morsels Actually Useful
- Typ
- Masterarbeit
- Status
- abgeschlossen
- Supervisors
- Alexander Halbuer
Daniel Lohmann - Project
- ParPerOS
- Bearbeiter
- Darian Biastoch (abgegeben: 26. Oct 2023)
Primitives and Abstractions for Self-Contained Virtual-Memory Areas in the Linux kernel
- Typ
- Masterarbeit
- Status
- abgeschlossen
- Supervisors
- Lars Wrenger
Florian Rommel
Christian Dietrich
Daniel Lohmann - Project
- ParPerOS
- Bearbeiter
- Alexander Halbuer (abgegeben: 16. Nov 2022)