Virtualization system using hardware assistance for page table coherence
AssigneeVMware, Inc.
InventorsKeith ADAMS, Sahil RIHAN
Life of this patent
Estimating the term…
Abstract
One embodiment of the present invention includes a method for maintaining a shadow page table in at least partial correspondence with guest page mappings of a guest computation. The method marking with a traced write indication at least those entries of the shadow page table that map physical memory locations which themselves encode the guest page mappings, the marking identifying, for a hardware facility, a subset of memory access targets for which updates are to be recorded in a guest write buffer accessible to the virtualization system. Responsive to a coherency-inducing operation of the guest computation, the method reads from the guest write buffer and introduces corresponding updates into the shadow page table.
Claims18
A method of operating a virtualization system, the method comprising:
- supplying underlying hardware with indications of those locations in physical memory for which the virtualization system wishes to receive buffered write information, the indicated locations corresponding to those that encode page mapping information of a guest operating system executing in a virtual machine of the virtualization system;
- and
- asynchronous with write-type accesses performed for the guest operating system which target the indicated locations, but responsive to a coherency-inducing operation of the guest operating system, updating a virtualization system page table based on the buffered write information, the virtualization system page table mapping addresses to machine addresses in physical memory.
A computer program product embodied in one or more non-transitory computer readable storage media and including program code executable on a physical computer having one or more physical processors, the program code implementing a method of operating a virtualization system, the method comprising:
- supplying underlying hardware with indications of those locations in physical memory for which the virtualization system wishes to receive buffered write information, the indicated locations corresponding to those that encode page mapping information of a guest operating system executing in a virtual machine of the virtualization system;
- and
- asynchronous with write-type accesses performed for the guest operating system which target the indicated locations, but responsive to a coherency-inducing operation of the guest operating system, updating a virtualization system page table based on the buffered write information, the virtualization system page table mapping addresses to machine addresses in physical memory.
Dependencies are inferred from the claim text.