Implicit Locks in Shared Virtual Memory via Page Table Entries
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional NUMA and ccNUMA systems burden applications with the need to explicitly manage application locks and invoke lock subsystem mechanisms, which does not alleviate the burden of protecting shared data.
Innovation Solution
The technique coordinates access to shared data using page tables for implicit locks, eliminating the need for explicit lock instructions and a specialized shared memory lock subsystem by utilizing page table entries to track and manage access to shared memory.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If explicit lock instructions and a specialized lock subsystem are used, then shared data access coordination is achieved, but application complexity and burden increase
Solution Approach 1:
The patent merges the lock subsystem functionality into the existing virtual memory subsystem by utilizing page table entries for locking purposes. The page table, which already manages memory access, is enhanced to include lock state information, eliminating the need for a separate lock subsystem and reducing application burden while maintaining reliable coordination
Solution Approach 2:
The page table structure is given multiple functions: it continues to manage virtual-to-physical address mapping while also serving as a locking mechanism. By embedding lock states in page table entries, the same data structure performs both memory management and access coordination, simplifying the overall system
2Reliability
If a separate lock subsystem is implemented, then shared memory coordination is provided, but system complexity increases
Solution Approach 1:
The lock subsystem functionality is merged into the virtual memory subsystem by using page table entries to store lock states. This integration eliminates the need for separate lock management hardware or software structures, reducing system complexity while maintaining coordination capabilities
Solution Approach 2:
The virtual memory subsystem serves itself by handling both address translation and locking functions through the page table. The system uses its existing infrastructure to provide lock management, eliminating the need for external or separate locking mechanisms
Data Source
AI summary
A technique coordinates access to shared data on a remote device from a local device having local physical memory. The technique involves observing a page table entry (PTE) on the remote device. The PTE is stored in a page table used for managing virtual to physical address translations and handling page faults between semiconductor memory and magnetic disk drive memory on the remote device. The technique further involves blocking access to the shared data from the local device when the PTE indicates that shared data corresponding to the PTE is in use on the remote device. The technique further involves moving the shared data into the local physical memory from the semiconductor memory of the remote device, and providing access to the shared data in the local physical memory when the PTE indicates that shared data corresponding to the PTE is not in use on the remote device.


