US 9,811,268 B2
Memory swapper for virtualized environments
Assaf Schuster, Haifa (IL); Nadav Amit, Haifa (IL); and Dan Tsafrir, Haifa (IL)
Assigned to Technion Research & Development Foundation Limited, Haifa (IL)
Appl. No. 15/119,777
Filed by Technion Research & Development Foundation Limited, Haifa (IL)
PCT Filed Feb. 16, 2015, PCT No. PCT/IL2015/050172
§ 371(c)(1), (2) Date Aug. 18, 2016,
PCT Pub. No. WO2015/125135, PCT Pub. Date Aug. 27, 2015.
Claims priority of provisional application 61/941,507, filed on Feb. 19, 2014.
Prior Publication US 2017/0060437 A1, Mar. 2, 2017
Int. Cl. G06F 3/06 (2006.01); G06F 9/455 (2006.01); G06F 12/1009 (2016.01)
CPC G06F 3/0611 (2013.01) [G06F 3/0608 (2013.01); G06F 3/0647 (2013.01); G06F 3/0652 (2013.01); G06F 3/0664 (2013.01); G06F 3/0665 (2013.01); G06F 3/0683 (2013.01); G06F 9/45558 (2013.01); G06F 12/1009 (2013.01); G06F 2009/45583 (2013.01); G06F 2009/45591 (2013.01); G06F 2212/152 (2013.01)] 13 Claims
OG exemplary drawing
 
1. A method for reducing disk read rate by managing dataset mapping of virtual machine (VM) guest memory, comprising:
monitoring a plurality of disk read write operations of a VM guest on a first data storage device;
updating a dataset mapping between disk blocks of said first storage device allocated to said VM guest and corresponding physical addresses of memory pages of a second storage device of said VM guest containing replica of data stored in said disk blocks of said first storage device, based on said plurality of disk read write operations of said first storage device;
when identifying writing to one of said memory pages of said second storage device, removing a mapping of corresponding disk block of said first storage device and corresponding physical address of memory page of said second storage device storing a replica of the data stored in the disk block of said first storage device;
when reclaiming a mapped memory page of said second storage device of said VM guest by a host of said VM guest, discarding data contained in said memory page of said second storage device; and
when said data is requested by said VM guest after it was reclaimed by said host, retrieving said data from corresponding disk block of said first storage device according to said mapping.