Presetting Memory Protection Keys in Dedicated Memory
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing memory management model does not provide exclusive use of memory areas that can persist until program completion, leading to increased processor cycles during memory allocation and potential performance penalties for programs with real-time constraints.
Innovation Solution
Presetting the memory protection key in dedicated memory by assigning units of dedicated memory to a program based on configuration information and setting the memory protection key for each frame in these units before program execution.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If memory protection key is set at the time of memory allocation, then memory protection is ensured, but the number of processor cycles consumed by memory allocation increases
Solution Approach 1:
The memory protection key is set in advance during dedicated memory assignment, before the program actually needs the memory. This preliminary action allows the key to be pre-configured so that when memory is allocated during program execution, the protection key is already in place, eliminating the need for additional processor cycles during runtime memory allocation.
2Productivity
If real memory is used to back virtual memory with sharing among applications, then memory utilization efficiency is improved, but memory protection and exclusive access are compromised
Solution Approach 1:
The memory is segmented into dedicated memory regions that are assigned exclusively to specific programs. This segmentation ensures that each program has its own protected memory space, preventing interference between applications while maintaining efficient memory utilization through dedicated assignment rather than shared pooling.
3Reliability
If dedicated memory is assigned to a program, then exclusive memory use until program completion is ensured, but memory allocation flexibility is reduced
Solution Approach 1:
The dedicated memory assignment is performed in advance based on program configuration information, establishing exclusive memory rights before execution. This preliminary assignment ensures memory exclusivity throughout the program's runtime without requiring continuous flexibility during operation, as the memory is pre-allocated and protected.
Data Source
AI summary
Presetting the memory protection key in dedicated memory is disclosed, including assigning, by a memory manager to a program, based on configuration information, one or more units of dedicated memory from a pool of dedicated memory, wherein the one or more units of dedicated memory is reserved for the program until program completion; and setting, by the memory manager based on the configuration information, a memory protection key for each frame in the one or more units of dedicated memory assigned to the program.


