Patent ID: 8176142
Filing Date: 2012-05-08
Classification: G06F

Abstract:
1. A machine-implemented method for sharing programmatic modules among isolated virtual machines, the method comprising: loading, by a master process of a first virtual machine, first data from a programmatic module; storing, by the master process and based on the first data being mutable, the first data into a first private memory region allocated to the first virtual machine, wherein the first data is stored starting at a virtual address in the first private memory region; copying, by the master process, the first data from the first private memory region into a first area of a shareable memory region based on the first data being mutable, copying, from the first area of the shareable memory region and based on the first data being mutable, the first data into a second private memory region of a second virtual machine, wherein the first data is stored in the second private memory region starting at the virtual address; loading, by the master process, second data from a programmatic module; storing, by the master process and based on the second data being immutable, the second data into the second area of the shareable memory region; and establishing, based on the second data being immutable, a mapping between the second virtual machine and the second area of the shareable memory region that comprises the second data, wherein the second data comprises a reference to the first data using the virtual address; wherein the mapping enables the second virtual machine to read the second data without creating a copy of the second data in any private memory region of the second virtual machine; and wherein the first private memory region and the second private memory region both begin at a same virtual address.