Virtual Machine Monitor Memory Access Control
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current memory protection schemes in computer systems, particularly those at the kernel level, are inadequate as they allow unbounded access and cannot prevent malicious kernel mode programs from corrupting data or reconfiguring other programs, especially within monolithic operating systems like Windows and Linux, where standard processor protection mechanisms can be overridden by malicious code.
Innovation Solution
A Virtual Machine Monitor (VMM) is employed to manage and control memory access by verifying software agents through a Registered Source List and using hardware components like Virtual Machine Control Structures and Memory Access Protection Tables to enforce granular memory protection, including write protection and authorization, thereby preventing unauthorized access and malicious activities.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If standard processor protection mechanisms are used, then memory access control is provided, but the protection can be overridden by malicious kernel level code
Solution Approach 1:
The patent introduces a Virtual Machine Monitor (VMM) as an intermediary layer between the kernel mode programs and the memory hardware. The VMM intercepts all memory access requests, including those from kernel mode code, and verifies authorization before allowing access. This mediator prevents malicious kernel code from directly overriding protection mechanisms while maintaining legitimate kernel functionality.
Solution Approach 2:
The patent segments memory access control into multiple levels: a Registered Source List that identifies authorized software agents, a Virtual Machine Control Structure that tracks access rights, and a Memory Access Protection Table that enforces granular protection. This segmentation creates layered security that cannot be easily overridden by single-level exploits.
2Adaptability or versatility
If kernel mode programs are allowed unbounded access to all memory pages, then program execution flexibility is maintained, but data corruption and malicious code execution become possible
Solution Approach 1:
The patent applies local quality by providing different memory access rights to different memory regions and different software agents. Instead of uniform access control, the system tracks which agent accessed which memory page and enforces specific protection policies for each combination, allowing flexible kernel operation while preventing unauthorized data corruption.
Solution Approach 2:
The VMM implements feedback mechanisms by monitoring memory access patterns and maintaining a Registered Source List that is updated based on access verification. When unauthorized access attempts are detected, the system can modify access rights dynamically, creating a feedback loop that adapts security policies based on actual access behavior.
3Device complexity
If course-grain access control based on privilege levels is used, then simple memory protection is achieved, but protection against software within the same privilege level is not provided
Solution Approach 1:
The patent segments the access control mechanism into multiple independent components: a Registered Source List for identity verification, a Virtual Machine Control Structure for state tracking, and a Memory Access Protection Table for enforcement. This segmentation allows fine-grained control without requiring a single complex mechanism, maintaining implementability while enhancing security.
Solution Approach 2:
The patent adds new dimensions to access control by introducing software agent identification and memory page-level tracking beyond the traditional privilege level dimension. The system now controls access based on multiple dimensions: privilege level, software agent identity, and specific memory page, creating a multi-dimensional security framework.
Data Source
AI summary
The present disclosure relates to attempting to monitor and control memory access and, more specifically, to attempting to limit memory access to a specific registered software agent.


