Maintaining reverse mappings in a virtualized computer system
AssigneeVMware, Inc.
InventorsPratap Subrahmanyam, Garrett Smith
Life of this patent
Estimating the term…
Abstract
For a virtual memory of a virtualized computer system in which a virtual page is mapped to a guest physical page which is backed by a machine page and in which a shadow page table entry directly maps the virtual page to the machine page, reverse mappings of guest physical pages are optimized by removing the reverse mappings of certain immutable guest physical pages. An immutable guest physical memory page is identified, and existing reverse mappings corresponding to the immutable guest physical page are removed. New reverse mappings corresponding to the identified immutable guest physical page are no longer added.
Claims45
A computer-implemented method for maintaining reverse mappings in a virtualized computer system, the method comprising:
- creating a set of reverse mappings, where each reverse mapping maps a guest physical page to a shadow page table entry, the virtualized computer system comprising a guest operating system that maps virtual pages to guest physical pages and virtualization software that maps guest physical pages to machine pages, the virtualization software creating shadow page table entries that map virtual pages to machine pages;
- identifying an immutable guest physical page;
- and
- removing a plurality of existing reverse mappings corresponding to the immutable guest physical page, while retaining corresponding mappings from virtual pages to guest physical pages, corresponding mappings from guest physical pages to machine pages and corresponding mappings from virtual pages to machine pages.
A computer-implemented method for maintaining reverse mappings in a virtualized computer system, the method comprising:
- creating a set of reverse mappings, where each reverse mapping maps a guest physical page to a shadow page table entry, the virtualized computer system comprising a guest operating system that maps virtual pages to guest physical pages and virtualization software that maps guest physical pages to machine pages, the virtualization software creating shadow page table entries that map virtual pages to machine pages;
- identifying a guest physical page that is a zero page, wherein the content of the zero page is zero;
- and
- removing a plurality of existing reverse mappings corresponding to the zero page, while retaining corresponding mappings from virtual pages to guest physical pages, corresponding mappings from guest physical pages to machine pages and corresponding mappings from virtual pages to machine pages.
A non-transitory tangible computer readable storage medium storing a computer program product configured to perform a computer-implemented method for maintaining reverse mappings in a virtualized computer system, the method comprising:
- creating a set of reverse mappings, where each reverse mapping maps a guest physical page to a shadow page table entry, the virtualized computer system comprising a guest operating system that maps virtual pages to guest physical pages and virtualization software that maps guest physical pages to machine pages, the virtualization software creating shadow page table entries that map virtual pages to machine pages;
- identifying an immutable guest physical page;
- and
- removing a plurality of existing reverse mappings corresponding to the immutable guest physical page, while retaining corresponding mappings from virtual pages to guest physical pages, corresponding mappings from guest physical pages to machine pages and corresponding mappings from virtual pages to machine pages.
A non-transitory tangible computer readable storage medium storing a computer program product configured to perform a computer-implemented method for maintaining reverse mappings in a virtualized computer system, the method comprising:
- creating a set of reverse mappings, where each reverse mapping maps a guest physical page to a shadow page table entry, the virtualized computer system comprising a guest operating system that maps virtual pages to guest physical pages and virtualization software that maps guest physical pages to machine pages, the virtualization software creating shadow page table entries that map virtual pages to machine pages;
- identifying a guest physical page that is a zero page, wherein the content of the zero page is zero;
- and
- removing a plurality of existing reverse mappings corresponding to the zero page, while retaining corresponding mappings from virtual pages to guest physical pages, corresponding mappings from guest physical pages to machine pages and corresponding mappings from virtual pages to machine pages.
A virtualized computer system running on a host computer, the virtualized computer system including a non-transitory tangible storage device storing computer instructions configured to perform a computer-implemented method for maintaining reverse mappings in the virtualized computer system, the virtualized computer system further including one or more central processing units for executing the computer instructions, the method comprising:
- creating a set of reverse mappings, where each reverse mapping maps a guest physical page to a shadow page table entry, the virtualized computer system comprising a guest operating system that maps virtual pages to guest physical pages and virtualization software that maps guest physical pages to machine pages, the virtualization software creating shadow page table entries that map virtual pages to machine pages;
- identifying an immutable guest physical page;
- and
- removing a plurality of existing reverse mappings corresponding to the immutable guest physical page, while retaining corresponding mappings from virtual pages to guest physical pages, corresponding mappings from guest physical pages to machine pages and corresponding mappings from virtual pages to machine pages.
A virtualized computer system running on a host computer, the virtualized computer system including a non-transitory tangible storage device storing computer instructions configured to perform a computer-implemented method for maintaining reverse mappings in the virtualized computer system, the virtualized computer system further including one or more central processing units for executing the computer instructions, the method comprising:
- creating a set of reverse mappings, where each reverse mapping maps a guest physical page to a shadow page table entry, the virtualized computer system comprising a guest operating system that maps virtual pages to guest physical pages and virtualization software that maps guest physical pages to machine pages, the virtualization software creating shadow page table entries that map virtual pages to machine pages;
- identifying a guest physical page that is a zero page, wherein the content of the zero page is zero;
- and
- removing a plurality of existing reverse mappings corresponding to the zero page, while retaining corresponding mappings from virtual pages to guest physical pages, corresponding mappings from guest physical pages to machine pages and corresponding mappings from virtual pages to machine pages.
Dependencies are inferred from the claim text.