Register Protection Mechanism for Virtualized APD
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In computer virtualization, there is a need to protect shared registers of an accelerated processing device (APD) among multiple virtual machines to prevent unauthorized access and ensure secure operation, as existing mechanisms lack effective protection mechanisms for physical-function-or-virtual-function registers (PF-or-VF* registers).
Innovation Solution
A register protection mechanism that compares the function associated with a memory address specified by a register access request to the currently active function and disallows access if a match does not occur, using a backup-and-restore mechanism to save and load register values during function switching, thereby ensuring only the active function can access its registers.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If shared registers are made accessible to multiple virtual machines for resource sharing, then productivity and resource utilization are improved, but security and reliability deteriorate due to lack of protection mechanisms
Solution Approach 1:
The patent segments register access rights by creating distinct access paths for different virtual machines. Each VM is assigned specific register ranges it can access, while other registers remain protected. This segmentation allows multiple VMs to share the APD resource while maintaining individual access boundaries, thus improving productivity through sharing while preserving reliability through access control.
Solution Approach 2:
The patent introduces an intermediary mechanism (the virtualization layer with register protection logic) that mediates between multiple VMs and the shared registers. This intermediary validates access requests, ensures only authorized VMs can access specific registers, and manages the backup-and-restore operations. The intermediary enables secure sharing by acting as a gatekeeper that maintains reliability while allowing productive resource utilization.
2Reliability
If backup-and-restore mechanism is implemented for register protection, then reliability and security are improved, but device complexity and overhead increase
Solution Approach 1:
The patent implements preliminary action by pre-establishing backup storage locations and pre-configuring protection rules for registers before virtual machine operations begin. The backup-and-restore mechanism is set up in advance, with designated storage areas prepared for saving register states. This preliminary preparation reduces the complexity of on-the-fly protection management and streamlines the actual switch operations.
Solution Approach 2:
The patent utilizes parameter changes by dynamically adjusting register access permissions and active function identifiers based on which virtual machine is currently executing. The system changes the state of register protection parameters (such as access masks and active function IDs) to match the current VM context, enabling efficient switching without requiring complex structural changes to the register file itself.
Data Source
AI summary
A register protection mechanism for a virtualized accelerated processing device (“APD”) is disclosed. The mechanism protects registers of the accelerated processing device designated as physical-function-or-virtual-function registers (“PF-or-VF* registers”), which are single architectural instance registers that are shared among different functions that share the APD in a virtualization scheme whereby each function can maintain a different value in these registers. The protection mechanism for these registers comprises comparing the function associated with the memory address specified by a particular register access request to the “currently active” function for the APD and disallowing the register access request if a match does not occur.


