A system for copying a software virtualization object file, comprising a management processing unit adapted to send, to a destination processing unit , a plurality of file pages of the software virtualization object file by executing a plurality of transfer iterations and to instruct the destination processing unit to reconstruct the software virtualization object using the plurality of file pages; wherein in each of the plurality of transfer iterations, the management processing unit is adapted to select a file page of the software virtualization object file, to identify, in a source software virtualization object file accessible by a source processing units , a possible page source file comprising a file page identical to the selected file page and to instruct the source processing unit to send the identical file page to the destination processing unit , wherein the management processing unit is adapted to identify a plurality of source software virtualization object files, each having at least some file pages each identical to one of a plurality of file pages of the software virtualization object file, characterized in that each of the plurality of source software virtualization object files is accessible by one of a plurality of possible source processing units ; and the management processing unit is further adapted to receive a plurality of messages from the plurality of possible source processing units each comprising a load value of a resource load metric of respective possible source processing unit , to identify , in each of the plurality of transfer iterations, a preferred source processing unit having a preferred load value according to a resource load test, and having access to a possible page source file comprising a file page identical to the file page and to instruct, in each of the plurality of transfer iterations, the preferred source processing unit as the source processing unit to send the identical file page to the destination processing unit . a management processing unit adapted to send, to a destination processing unit , a plurality of file pages of the software virtualization object file by executing a plurality of transfer iterations and to instruct the destination processing unit to reconstruct the software virtualization object using the plurality of file pages; wherein in each of the plurality of transfer iterations, the management processing unit is adapted to select a file page of the software virtualization object file, to identify, in a source software virtualization object file accessible by a source processing units , a possible page source file comprising a file page identical to the selected file page and to instruct the source processing unit to send the identical file page to the destination processing unit , wherein the management processing unit is adapted to identify a plurality of source software virtualization object files, each having at least some file pages each identical to one of a plurality of file pages of the software virtualization object file, characterized in that each of the plurality of source software virtualization object files is accessible by one of a plurality of possible source processing units ; and the management processing unit is further adapted to receive a plurality of messages from the plurality of possible source processing units each comprising a load value of a resource load metric of respective possible source processing unit , to identify , in each of the plurality of transfer iterations, a preferred source processing unit having a preferred load value according to a resource load test, and having access to a possible page source file comprising a file page identical to the file page and to instruct, in each of the plurality of transfer iterations, the preferred source processing unit as the source processing unit to send the identical file page to the destination processing unit . <EOS>