Persistent Memory Metadata Table for Post-Crash Application Recovery
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional approaches fail to effectively utilize non-volatile memory to restore application data after a system crash or reboot, leading to unusable data.
Innovation Solution
A metadata table in non-volatile RAM stores information about page table pages, enabling the operating system to identify and restore application data seamlessly upon reboot without requiring extensive application modifications or file system interfaces.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Duration of action of stationary object
If non-volatile memory is used to store application data, then data persistence is improved, but data usability after system crash or reboot deteriorates
Solution Approach 1:
The patent introduces a file system interface as an intermediary layer between the application data and non-volatile memory. This mediator manages the data storage and retrieval operations, ensuring that data written to non-volatile memory can be properly recovered and made usable after system crashes or reboots, thus resolving the contradiction between data persistence and data usability
2Device complexity
If conventional memory recovery approaches are used, then system simplicity is maintained, but data recovery capability deteriorates
Solution Approach 1:
The patent segments the memory management functionality by introducing a dedicated file system interface component that handles persistent memory operations separately from the conventional memory management subsystem. This segmentation allows the system to maintain simplicity in the overall architecture while incorporating specialized data recovery capabilities through the file system interface, thus resolving the contradiction between system simplicity and data recovery capability
Data Source
Figure 1~2
Figure 3~4
Figure 5~6
AI summary
Systems, apparatuses and methods may provide for technology that associates a unique identifier with an application, creates an entry in a metadata table, wherein the metadata table is at a fixed location in persistent system memory, populates the entry with the unique identifier, a user identifier, and a pointer to a root of a page table tree, and recovers in-use data pages after a system crash. In one example, the in-use data pages are recovered from the persistent system memory based on the metadata table and include one or more of application heap information or application stack information.