IP Library › Granted Patent US 10,761,947
Granted Patent B2
US 10,761,947 · App. 15/677,704 · Granted Sep 1, 2020

Systems and methods for host image transfer

Inventors: Po-Hsin Wei (Taipei, TW); Andrew Spyros Malitzis (Old Bethpage, NY); Andrew Lee Modansky (Rockville Centre, NY); Sheng-Chang Chang (Taipei, TW)
Assignee: FALCONSTOR, INC.
G06F11/1464G06F11/1415G06F11/1451G06F11/1469G06F11/20G06F16/119G06F11/2028G06F11/2048G06F2201/805G06F2201/84
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,761,947
App. No.
15/677,704
Granted
Sep 1, 2020
Kind
B2
Abstract

Methods and systems for transferring a host image of a first machine to a second machine, such as during disaster recovery or migration, are disclosed. In one example, a first profile of a first machine of a first type, such as a first client machine, is compared to a second profile of a second machine, such as a recovery machine or a second client machine of a second type different from the first type, to which the host image is to be transferred, by a first processing device. The first and second profiles each comprise at least one property of the first type of first machine and the second type of second machine, respectively. At least one property of a host image of the first machine is conformed to at least one corresponding property of the second machine. The conformed host image is provided to the second machine, via a network. The second machine is configured with at least one conformed property of the host image by a second processing device of the second machine.

Claims (46)

1. A method of transferring a host image of a first machine to a second machine, wherein the host image comprises an operating system, the method comprising:

collecting first profile information for a plurality of types of first machines including a first type of first machine, the profile information comprising at least one property of each type of first machine;

creating first profiles for each of the plurality of types of first machines, the profile information comprising at least one property of each type of first machine;

storing the first profiles;

collecting second profile information for a plurality of types of second machines including a second type of second machine, the profile information comprising at least one property of each type of second machine;

creating second profiles for each of the plurality of types of second machines;

storing the second profiles;

comparing, by the at least one first processing device, a first profile of a first machine of a first type from which a host image is to be transferred to a second profile of a second machine of a second type to which the host image is to be transferred, the first type of first machine being different from the second type of second machine, wherein the first profile and second profile each comprise at least one property of the first type of first machine and the second type of second machine, respectively;

conforming at least one property of a host image of the first machine to at least one corresponding property of the second machine based, at least in part, on the comparison, by the at least one first processing device;

providing the conformed host image to the second machine, via a network; and

configuring the second machine with the conformed host image by the at least one second processing device of the second machine, wherein the at least one second processing device is different from the at least one first processing device.

2. The method of claim 1 , further comprising:

injecting a program into the host image to run on the second machine to control a configuration process to be performed by the second machine to run the conformed host image on the second machine, by at least one of the at least one first processing devices;

providing the conformed host image to the second machine, including the injected program, via a network; and

running the injected program by a second processing device of the second machine, the second processing device being different from the first processing device, to configure the second machine with the conformed host.

3. The method of claim 2 , comprising conforming the host image by:

loading at least one component onto the host image by one of the at least one first processing device.

4. The method of claim 2 , comprising running the injected program by the second processing device of the second machine during a boot of the second machine.

5. The method of claim 4 , wherein the boot comprises a limited boot or a safe mode boot.

6. The method of claim 1 , comprising collecting the first profile information by running a software utility on each of the plurality of types of first machines.

7. The method of claim 1 , further comprising:

collecting the second profile information by loading an operating system of a first type of first machine onto a second machine of a second type to which of the respective client machine is to be transferred to.

8. The system of claim 7 , wherein the first processing device is configured to collect the first profile information by running a software utility on each of the plurality of types of first machines.

9. The system of claim 7 , wherein the first processing device is configured to collect the second profile information by loading an operating system of a first type of first machine onto a second machine of a second type to which of the respective client machine is to be transferred to.

10. A system for transferring a host image of a first machine to a second machine, wherein the host image comprises an operating system, the system comprising:

at least one first processing device;

at least one second machine, each second machine comprising a respective second processing device different from the at least one first processing device;

storage associated with the at least one first processing device to store first respective profiles for a first plurality of types of first machines including a first type of first machine, and second respective profiles for a second plurality of types of second machines including a second type of second machine different from the first type of first machine, the first and second profiles comprising at least one property of each of the plurality of types of first machines and each of the plurality of types of second machines, respectively;

wherein the at least one first processing device is configured to:

collect first profile information for a plurality of types of first machines including a first type of first machine, the profile information comprising at least one property of each type of first machine;

create first profiles for each of the plurality of types of first machines, the profile information comprising at least one property of each type of first machine;

store the first profiles;

collect second profile information for a plurality of types of second machines including a second type of second machine, the profile information comprising at least one property of each type of second machine;

create second profiles for each of the plurality of types of second machines;

store the second profiles;

compare, by the at least one first processing device, a first profile of a first machine of a first type from which a host image is to be transferred to a second profile of a second machine of a second type to which the host image is to be transferred, the first type of first machine being different from the second type of second machine, wherein the first profile and second profile each comprise at least one property of the first type of first machine and the second type of second machine, respectively;

conform at least one property of a host image of the first machine to at least one corresponding property of the second machine based, at least in part, on the comparison, by the at least one first processing device;

provide the conformed host image to the second machine, via a network; and

configure the second machine with the conformed host image by the at least one second processing device of the second machine, wherein the at least one second processing device is different from the at least one first processing device.

11. The system of claim 10 , wherein the at least one processing device is further configured to:

inject a program into the host image to run on the second machine to control a configuration process to be performed by the second machine to run the conformed host image on the second machine; and

cause transfer of the conformed host image to the second machine, including the injected program, via a network;

wherein the second processing device is configured to configure the second machine with the host image, under the control of the injected program.

12. The system of claim 11 , wherein the injected program is configured to:

configure the second machine to run the conformed host image on the second machine, during a boot of the second machine.

13. The system of claim 12 , wherein the boot comprises a limited boot or a safe mode boot.

Continuity (5)
Continuation 15176800 · Jun 8, 2016
Continuation 14796632 · Jul 10, 2015
Continuation 13909843 · Jun 4, 2013
Provisional Application 61655308 · Jun 4, 2012
Related Publication 20170344437A1 · Nov 30, 2017