Increasing granularity of dirty bit information
AssigneeVMware, Inc.
InventorsBenjamin C. Serebrin, Bhavesh Mehta
Life of this patent
Estimating the term…
Abstract
One or more unused bits of a virtual address range are allocated for aliasing so that multiple virtually addressed sub-pages can be mapped to a common memory page. When one bit is allocated for aliasing, dirty bit information can be provided at a granularity that is one-half of a memory page. When M bits are allocated for aliasing, dirty bit information can be provided at a granularity that is 1/(2M)-th of a memory page.
Claims20
A method of backing up a virtual machine running in a first computer system, the first computer system having a memory management unit that manages mappings of virtual addresses to physical memory pages using hierarchically-arranged page tables, the method comprising:
- scanning entries of a first page table and a second page table distinct from the first page table, an entry in the first page table and an entry in the second page table each referencing a common physical memory page;
- determining that a first section of the common physical memory page is dirty based on the entry of the first page table that references the common physical memory page and
- determining that a second section of the common physical memory page is not dirty based on the entry of the second page table that references the common physical memory page;
- and
- transmitting at least a portion of the first section of the common physical memory page to a second computer system.
A non-transitory computer-readable medium that stores instructions that are executable by a first computer system, wherein the instructions, when executed, cause the first computer system to perform a method of backing up a virtual machine running therein, the first computer system having a memory management unit that manages mappings of virtual addresses to physical memory pages using hierarchically-arranged page tables, and wherein the method comprises:
- scanning entries of a first page table and a second page table distinct from the first page table, an entry in the first page table and an entry in the second page table each referencing a common physical memory page;
- determining that a first section of the common physical memory page is dirty based on the entry of the first page table that references the common physical memory page and determining that a second section of the common physical memory page is not dirty based on the entry of the second page table that references the common physical memory page;
- and
- transmitting at least a portion of the first section of the common physical memory page to a second computer system.
A computer system comprising:
- a memory;
- and
- a processor having a memory management unit that manages mappings of virtual addresses to physical memory pages using hierarchically-arranged page tables, and configured to perform a method of backing up a virtual machine running on the computer system, wherein the method comprises:
- scanning entries of a first page table and second page table distinct from the first page table, an entry in the first page table and an entry in the second page table each referencing a common physical memory page;
- determining that a first section of the common physical memory page is dirty based on the entry of the first page table that references the common physical memory page and determining that a second section of the common physical memory page is not dirty based on the entry of the second page table that references the common physical memory page;
- and
- transmitting at least a portion of the first section of the common physical memory page to a second computer system.
Dependencies are inferred from the claim text.