Dynamic Memory Page Protection for Content Security
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing memory protection methods require large contiguous memory allocations, which are inefficient and lead to memory pressure and reduced system performance, as they are not compatible with modern operating systems that partition memory into small segments.
Innovation Solution
The method dynamically allocates and virtualizes protected memory regions, allowing data to be stored in noncontiguous portions, enabling the operating system to manage memory effectively without large contiguous allocations, and provides protection at a small granularity by controlling read and write requests to protected memory areas.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If large contiguous memory is allocated for content storage, then content protection is achieved, but system performance deteriorates due to memory pressure and reduced available memory for other processes
Solution Approach 1:
The patent segments the large contiguous memory allocation into smaller memory pages that can be dynamically managed by the operating system. Each page can be independently allocated, protected, and managed, allowing the system to maintain content protection while enabling the OS to efficiently manage memory resources and reduce memory pressure on other processes.
2Reliability
If memory is protected using conventional methods, then content security is improved, but memory availability for operating system management is reduced
Solution Approach 1:
The patent implements dynamic memory protection where memory pages can be allocated, protected, and managed dynamically during runtime rather than requiring static pre-allocation. The protection status and allocation of memory pages can change based on system needs, allowing the operating system to flexibly manage memory resources while maintaining content security when required.
3Reliability
If fixed size protected region is specified at boot time, then content protection is established, but memory efficiency deteriorates due to conservative estimation and unused memory
Solution Approach 1:
The patent replaces fixed-size protected regions with dynamic memory page allocation that adjusts based on actual content needs. Memory pages are allocated only when and where needed, and can be freed when no longer required, eliminating the waste of conservative over-allocation while maintaining robust content protection for the actual content being stored.
4Productivity
If dynamic memory allocation is used, then memory efficiency is improved, but content protection becomes more difficult due to memory fragmentation
Solution Approach 1:
The patent segments content into fixed-size memory pages that can be dynamically allocated and scattered throughout memory. Each page maintains its protection status independently, allowing the system to achieve both memory efficiency through dynamic allocation and reliable content protection through page-level security controls, even in fragmented memory environments.
Data Source
AI summary
Embodiments of the claimed subject matter provide systems and methods for protecting data in dynamically allocated regions of memory. The method can include receiving the read request where the read request comprises a virtual address associated with a memory and determining a physical address associated with the virtual address. The further includes determining whether the physical address associated with the virtual address is read protected and determining whether the read request is from a component allowed to access read protected memory. The read protected memory was dynamically allocated on a per page basis. The method further includes in response to determining that the read request is to a read protected physical address and determining that the component is allowed to access read protected memory, sending the data from the physical address in the memory.


