IP Library Granted Patent US 8,214,830
Granted Patent B2
US 8,214,830 · App. 11/041,061 · Granted Jul 3, 2012

Performance in a virtualization architecture with a processor abstraction layer

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,214,830
App. No.
11/041,061
Granted
Jul 3, 2012
Kind
B2
Abstract

Embodiments of apparatuses and methods for improving performance in a virtualization architecture are disclosed. In one embodiment, an apparatus includes a processor and a processor abstraction layer. The processor abstraction layer includes instructions that, when executed by the processor, support techniques to improve the performance of the apparatus in a virtualization architecture.

Claims (22)

1. An apparatus comprising:

a processor;

a processor abstraction layer (“PAL”) including PAL procedure instructions, accessible to the processor as a PAL procedure with a decode operation to determine a first function to be performed with a parameter checking operation and with a processor state checking operation, and PAL service instructions, accessible to the processor as a PAL service without a decode operation to determine a second function to be performed without the parameter checking operation and without the processor state checking operation, where the PAL service instructions, when executed by the processor, support at least one technique to improve the performance of the apparatus in a virtualization architecture.

2. The apparatus of claim 1 , wherein the PAL also includes a PAL service jump table.

3. The apparatus of claim 2 , wherein the PAL service jump table includes an offset value, and the PAL service is accessible to the processor by executing an instruction to branch to a memory location addressable as a base address plus the offset value.

4. The apparatus of claim 1 , wherein the processor includes circuitry to support the virtualization of a hardware resource.

5. The apparatus of claim 4 , wherein the circuitry is a shadow register to shadow attempts to access an architectural register.

6. The apparatus of claim 5 , wherein the instructions include synchronization instructions that, when executed by the processor, synchronize the values in the shadow register with the values in a virtual register corresponding to the architectural register.

7. A method comprising:

initializing a virtualization environment in a virtualization architecture;

performing a parameter checking operation in connection with calling a procedure instruction in a processor abstraction layer (“PAL”);

performing a processor state checking operation in connection with calling the procedure instruction;

calling the procedure instruction;

performing a decode operation, in response to calling the procedure instruction, to determine a first function to be performed;

and

calling a service instruction in the PAL without a decode operation to determine a second function to be performed to support at least one technique to improve the performance of software running in the virtualization architecture without the parameter checking operation and without the processor state checking operation.

8. The method of claim 7 further comprising passing a base address of the PAL service to the caller.

9. The method of claim 7 further comprising executing the service instruction to synchronize a hardware resource to support virtualization with a virtual resource.

10. The method of claim 9 wherein the hardware resource is a shadow register and the virtual resource is a virtualized copy of an architectural register.

11. The method of claim 7 further comprising determining whether the service instruction is to be executed based on an indicator.

12. The method of claim 11 wherein the indicator is based on an enable indicator that indicates whether the technique is enabled.

13. The method of claim 11 wherein the indicator is based on a selection indicator that indicates whether the service instruction is selected.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2015
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 037079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 1, 2015
From: HEWLETT-PACKARD COMPANY
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 036518/0623 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 13, 2012
From: SANTONI, AMY L.; GREENE, WILLIAM R.; VAID, KUSHAGRA V.
To: INTEL CORPORATION
Reel/Frame 028042/0110 →