Virtualization support for storage devices
US-2017315832-A1 · Nov 2, 2017 · US
US10002084B1 · US · B1
| Field | Value |
|---|---|
| Publication number | US-10002084-B1 |
| Application number | US-201615383572-A |
| Country | US |
| Kind code | B1 |
| Filing date | Dec 19, 2016 |
| Priority date | Dec 19, 2016 |
| Publication date | Jun 19, 2018 |
| Grant date | Jun 19, 2018 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
An example method of memory management in a virtualized computing system includes: generating a page table hierarchy that includes address translations to first pages of memory that store kernel software and second pages of the memory that store user software; configuring a processor to: 1) implement a first address translation scheme, which uses a first virtual address width, for a hypervisor privilege level; 2) implement a second address translation scheme, which uses a second virtual address width, for supervisor and user privilege levels, where the first virtual address width is larger than the second virtual address width; and 3) use the page table hierarchy for each of the first and second address translation schemes; and executing the kernel software at the hypervisor privilege level and the user software at the user privilege level.
Opening claim text (preview).
We claim: 1. A method of memory management in a virtualized computing system that includes a hypervisor executing on a hardware platform, the hardware platform including a processor and a memory, the hypervisor including kernel software and user software, the method comprising: generating a page table hierarchy that includes address translations to first pages of the memory that store the kernel software and second pages of the memory that store the user software; configuring the processor to: 1) implement a first address translation scheme, which uses a first virtual address width, for a hypervisor privilege level; 2) implement a second address translation scheme, which uses a second virtual address width, for supervisor and user privilege levels, where the first virtual address width is larger than the second virtual address width; and 3) use the page table hierarchy for each of the first and second address translation schemes; and executing the kernel software at the hypervisor privilege level and the user software at the user privilege level. 2. The method of claim 1 , wherein the first pages of the memory are within a portion of a first address space defined by the first virtual address width, the portion exclusive of a second address space defined by the second virtual address width, and wherein the second pages of the memory are within the second address space. 3. The method of claim 1 , wherein descriptors of the page table hierarchy have a format dictated by the first address translation scheme. 4. The method of claim 3 , wherein the format of the descriptors is not modified for use with the second address translation scheme. 5. The method of claim 1 , wherein a first stage of the second address translation scheme performs virtual-to-physical address translations, and wherein the step of configuring the processor to implement the second address translation scheme comprises: disabling a second stage of the second address translation scheme. 6. The method of claim 1 , wherein the step of configuring the processor to use the page table hierarchy comprises: setting each of a first register associated with the first address translation scheme, and a second register associated with the second address translation scheme, to a physical address of a base table of the page table hierarchy. 7. The method of claim 1 , wherein the step of configuring the processor to implement the second address translation scheme comprises: setting a register associated with the second address translation scheme to specify the second virtual address width. 8. A non-transitory computer readable medium having instructions stored thereon that when executed by a processor cause the processor to perform a method of memory management in a virtualized computing system that includes a hypervisor executing on a hardware platform, the hardware platform including the processor and a memory, the hypervisor including kernel software and user software, the method comprising: generating a page table hierarchy that includes address translations to first pages of the memory that store the kernel software and second pages of the memory that store the user software; configuring the processor to: 1) implement a first address translation scheme, which uses a first virtual address width, for a hypervisor privilege level; 2) implement a second address translation scheme, which uses a second virtual address width, for supervisor and user privilege levels, where the first virtual address width is larger than the second virtual address width; and 3) use the page table hierarchy for each of the first and second address translation schemes; and executing the kernel software at the hypervisor privilege level and the user software at the user privilege level. 9. The non-transitory computer readable medium of claim 8 , wherein the first pages of the memory are within a portion of a first address space defined by the first virtual address width, the portion exclusive of a second address space defined by the second virtual address width, and wherein the second pages of the memory are within the second address space. 10. The non-transitory computer readable medium of claim 8 , wherein descriptors of the page table hierarchy have a format dictated by the first address translation scheme. 11. The non-transitory computer readable medium of claim 10 , wherein the format of the descriptors is not modified for use with the second address translation scheme. 12. The non-transitory computer readable medium of claim 10 , wherein a first stage of the second address translation scheme performs virtual-to-physical address translations, and wherein the step of configuring the processor to implement the second address translation scheme comprises: disabling a second stage of the second address translation scheme. 13. The non-transitory computer readable medium of claim 8 , wherein the step of configuring the processor to use the page table hierarchy comprises: setting each of a first register associated with the first address translation scheme, and a second register associated with the second address translation scheme, to a physical address of a base table of the page table hierarchy. 14. The non-transitory computer readable medium of claim 8 , wherein the step of configuring the processor to implement the second address translation scheme comprises: setting a register associated with the second address translation scheme to specify the second virtual address width. 15. A virtualized computing system, comprising: a hardware platform including a processor and memory; and a software platform executing on the hardware platform, the software platform including a hypervisor having kernel software and user software, the hypervisor executable by the processor to: generate a page table hierarchy that includes address translations to first pages of the memory that store the kernel software and second pages of the memory that store the user software; configure the processor to: 1) implement a first address translation scheme, which uses a first virtual address width, for a hypervisor privilege level; 2) implement a second address translation scheme, which uses a second virtual address width, for supervisor and user privilege levels, where the first virtual address width is larger than the second virtual address width; and 3) use the page table hierarchy for each of the first and second address translation schemes; and execute the kernel software at the hypervisor privilege level and the user software at the user privilege level. 16. The virtualized computing system of claim 15 , wherein the first pages of the memory are within a portion of a first address space defined by the first virtual address width, the portion exclusive of a second address space defined by the second virtual address width, and wherein the second pages of the memory are within the second address space. 17. The virtualized computing system of claim 15 , wherein descriptors of the page table hierarchy have a format dictated by the first address translation scheme and wherein the format of the descriptors is not modified for use with the second address translation scheme. 18. The virtualized computing system of claim 15 , wherein a first stage of the second address translation scheme performs virtual-to-physical address translations, and wherein the hypervisor is executable by the processor to disable a second stage of the second address translation scheme. 19. The virtualized computing system of claim 15 , wherein the hyperviso
Details of virtual memory and virtual address translation · CPC title
Security improvement · CPC title
Memory management, e.g. access or allocation · CPC title
Emulated environment, e.g. virtual machine · CPC title
Hypervisor-specific management and integration aspects · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.