Method and Apparatus for Combined Hardware/Software VM Migration

US2016139944A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2016139944-A1
Application numberUS-201414540741-A
CountryUS
Kind codeA1
Filing dateNov 13, 2014
Priority dateNov 13, 2014
Publication dateMay 19, 2016
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method and apparatus are provided for migrating one or more hardware devices ( 105 ) associated with a virtual machine ( 103 ) from a source machine ( 101 ) to a destination machine ( 111 ) by capturing, formatting, storing, and transferring hardware context information from the hardware device(s) at the source machine during the virtual machine migration process using a defined handshake protocol at each associated hardware driver ( 105 ) to capture the hardware context information from an associated hardware device ( 105 ) being migrated.

First claim

Opening claim text (preview).

1 . A method for migrating a hardware machine during virtual machine migration from a source platform to a destination platform, comprising: identifying a first hardware machine used by a first virtual machine in a source hypervisor on the source platform; retrieving hardware state information from the first hardware machine using a first hardware driver associated with the first hardware machine; transferring the hardware state information to a target hypervisor on the destination platform during migration of the first virtual machine from the source platform to the destination platform; re-establishing the hardware state information at a second hardware machine on the destination platform using a second hardware driver associated with the second hardware machine; migrating the first virtual machine to the target hypervisor on the destination platform; and activating the first virtual machine in the target hypervisor. 2 . The method of claim 1 , identifying the first hardware machine comprises acquiring a list of one or more registered hardware machines associated with the first virtual machine in the source hypervisor on the source platform. 3 . The method of claim 2 , further comprising registering the first hardware driver with the source hypervisor upon initialization of the first hardware driver at the source platform. 4 . The method of claim 1 , where retrieving hardware state information from the first hardware machine comprises: reading hardware state information from the first hardware machine using the first hardware driver associated with the first hardware machine; and storing the hardware state information from the first hardware machine in memory. 5 . The method of claim 5 , where storing the hardware state information comprises storing the hardware state information in memory in an architecture-neutral format. 6 . The method of claim 1 , further comprising: identifying a first additional hardware machine used by the first virtual machine in the source hypervisor on the source platform after retrieving hardware state information from the first hardware machine; and retrieving additional hardware state information from the first additional hardware machine using a first additional hardware driver associated with the first additional hardware machine before transferring the hardware state information to the target hypervisor on the destination platform. 7 . The method of claim 6 , further comprising: transferring the additional hardware state information to the target hypervisor on the destination platform during migration of the first virtual machine from the source platform to the destination platform; and re-establishing the first additional hardware state information at a second additional hardware machine on the destination platform using a second additional hardware driver associated with the second additional hardware machine. 8 . The method of claim 7 , where the first additional hardware state information is re-established at the second additional hardware machine on the destination platform prior to re-establishing the hardware state information at the second hardware machine on the destination platform. 9 . The method of claim 1 , where re-establishing the hardware state information at the second hardware machine comprises writing the hardware state information to a memory associated with the second hardware machine. 10 . A computer program product for migrating a hardware accelerator machine during virtual machine migration from a source platform to a destination platform, the computer program product comprising: one or more computer-readable, non-transitory storage devices; program instructions, stored on at least one of the one or more storage devices, to identify a first accelerator hardware machine used by a first virtual machine in a source hypervisor on the source platform; program instructions, stored on at least one of the one or more storage devices, to retrieve accelerator state information from the first accelerator hardware machine using a first accelerator driver associated with the first accelerator hardware machine; program instructions, stored on at least one of the one or more storage devices, to transfer the accelerator state information to a target hypervisor on the destination platform during migration of the first virtual machine from the source platform to the destination platform; and program instructions, stored on at least one of the one or more storage devices and conveyed from the source platform to the destination platform, to migrate the first virtual machine to the destination platform and to a re-establish the accelerator state information at a second accelerator hardware machine on the destination platform using a second accelerator driver associated with the second accelerator hardware machine. 11 . The computer program product of claim 10 , where the program instructions to identify the first accelerator hardware machine are configurable for execution by a processor to acquire a list of one or more registered hardware accelerator machines associated with the first virtual machine in the source hypervisor on the source platform. 12 . The computer program product of claim 10 , further comprising program instructions, stored on at least one of the one or more storage devices, to register the first accelerator driver with the source hypervisor upon initialization of the first accelerator driver at the source platform. 13 . The computer program product of claim 10 , where the program instructions to retrieve accelerator state information are configurable for execution by a processor to read accelerator state information from the first accelerator hardware machine using the first accelerator driver associated with the first accelerator hardware machine, and to store the accelerator state information from the first accelerator hardware machine in memory. 14 . The computer program product of claim 10 , where the program instructions to retrieve accelerator state information are configurable for execution by a processor to store the accelerator state information in memory in an architecture-neutral format. 15 . The computer program product of claim 10 , further comprising program instructions, stored on at least one of the one or more storage devices, to: identify a first additional accelerator hardware machine used by the first virtual machine in the source hypervisor on the source platform after retrieving accelerator state information from the first accelerator hardware machine; and retrieve additional accelerator state information from the first additional accelerator hardware machine using a first additional accelerator driver associated with the first additional accelerator hardware machine before transferring the accelerator state information to the target hypervisor on the destination platform. 16 . The computer program product of claim 15 , further comprising program instructions, stored on at least one of the one or more storage devices, to transfer the additional accelerator state information to the target hypervisor on the destination platform during transfer of the accelerator state information to the target hypervisor on the destination platform. 17 . The computer program product of claim 16 , further comprising program instructions, stored on at least one of the one or more storage devices and conveyed from the source platform to the destination platform, to re-establish the first additional accelerator state information at a second additional accelerator hardware machine on the de

Assignees

Inventors

Classifications

  • Distribution of virtual machine instances; Migration and load balancing · CPC title

  • Hypervisor-specific management and integration aspects · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2016139944A1 cover?
A method and apparatus are provided for migrating one or more hardware devices ( 105 ) associated with a virtual machine ( 103 ) from a source machine ( 101 ) to a destination machine ( 111 ) by capturing, formatting, storing, and transferring hardware context information from the hardware device(s) at the source machine during the virtual machine migration process using a defined handshake pro…
Who is the assignee on this patent?
Rouwet Wim J, Bagh Fares, Freescale Semiconductor Inc
What technology area does this patent fall under?
Primary CPC classification G06F9/45558. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu May 19 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).