Dynamic Guest Virtual Machine Identifier Allocation

US2016246649A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2016246649-A1
Application numberUS-201514629945-A
CountryUS
Kind codeA1
Filing dateFeb 24, 2015
Priority dateFeb 24, 2015
Publication dateAug 25, 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.

An example method of updating a virtual machine (VM) identifier (ID) stored in a memory buffer allocated from guest memory includes supplying firmware to a guest running on a VM that is executable on a host machine. The firmware includes instructions to allocate a memory buffer. The method also includes obtaining a buffer address of the memory buffer. The memory buffer is in guest memory and stores a VM ID that identifies a first instance of the VM. The method further includes storing the buffer address into hypervisor memory. The method also includes receiving an indication that the VM ID has been updated. The method further includes using the buffer address stored in hypervisor memory to update the VM ID.

First claim

Opening claim text (preview).

What is claimed is: 1 . A method of updating a virtual machine identifier (ID) stored in a memory buffer allocated from guest memory, comprising: supplying, by a hypervisor, firmware to a guest running on a virtual machine that is executable on a host machine, wherein the firmware includes instructions to allocate a memory buffer; obtaining a buffer address of the memory buffer allocated from guest memory, wherein the memory buffer is in guest memory and stores a virtual machine ID that identifies a first instance of the virtual machine; storing the buffer address into hypervisor memory; receiving an indication that the virtual machine ID has been updated; and using the buffer address stored in hypervisor memory to update the virtual machine ID. 2 . The method of claim 1 , wherein the firmware further includes instructions to generate an Advanced Configuration and Power Interface (ACPI) data structure including an ACPI method that passes the buffer address of the memory buffer. 3 . The method of claim 2 , wherein the ACPI data structure is an ACPI table. 4 . The method of claim 2 , further including: executing, at the guest, the instructions included in the firmware, wherein execution of the instructions causes the buffer address of the memory buffer to be passed to the hypervisor. 5 . The method of claim 4 , wherein the ACPI data structure includes a synthetic device including the ACPI method, and wherein the executing is in response to initialization of the synthetic device. 6 . The method of claim 4 , wherein the executing is in response to invocation of the ACPI method. 7 . The method of claim 4 , wherein the executing the instructions includes invoking the ACPI method, and wherein the invoking the ACPI method causes the buffer address to be written to a non-present memory address. 8 . The method of claim 1 , further including: detecting an event that causes the first virtual machine ID to change to a second virtual machine ID. 9 . The method of claim 1 , wherein the using includes retrieving the buffer address from hypervisor memory and storing a second virtual machine ID that identifies a second instance of the virtual machine into the buffer address. 10 . The method of claim 1 , wherein the buffer address is a non-fixed memory address. 11 . A system for updating a virtual machine identifier (ID) stored in a memory buffer allocated from guest memory, comprising: a hypervisor that supplies firmware to a guest running on a virtual machine that is executable on a host machine, obtains a buffer address of a memory buffer allocated from guest memory, and stores the buffer address into hypervisor memory, wherein the firmware includes instructions to allocate the memory buffer, and the memory buffer is in guest memory and stores a virtual machine ID that identifies a first instance of the virtual machine, and wherein in response to receiving an indication that the virtual machine ID has been updated, the hypervisor uses the buffer address stored in the hypervisor memory to update the virtual machine ID. 12 . The system of claim 11 , wherein the firmware further includes instructions to generate an Advanced Configuration and Power Interface (ACPI) data structure including an ACPI method that passes the buffer address of the memory buffer. 13 . The system of claim 12 , wherein the ACPI data structure is an ACPI table. 14 . The system of claim 12 , wherein the guest executes the instructions included in the firmware, and wherein execution of the instructions causes the buffer address of the memory buffer to be passed to the hypervisor. 15 . The system of claim 14 , wherein the ACPI data structure includes a synthetic device including the ACPI method, and wherein the executing is in response to initialization of the synthetic device. 16 . The system of claim 14 , wherein the guest executes the instructions in response to invocation of the ACPI method. 17 . The system of claim 11 , wherein the hypervisor detects an event that causes the first virtual machine ID to change to a second virtual machine ID. 18 . The system of claim 11 , wherein the hypervisor retrieves the buffer address from hypervisor memory and stores a second virtual machine ID that identifies a second instance of the virtual machine into the buffer address. 19 . The system of claim 11 , wherein the buffer address is a non-fixed memory address. 20 . A machine-readable medium comprising a plurality of machine-readable instructions that when executed by one or more processors is adapted to cause the one or more processors to perform a method comprising: supplying, by a hypervisor, firmware to a guest running on a virtual machine that is executable on a host machine, wherein the firmware includes instructions to allocate a memory buffer; obtaining a buffer address of the memory buffer, wherein the memory buffer is in guest memory and stores a virtual machine ID that identifies a first instance of the virtual machine; storing the buffer address into hypervisor memory; receiving an indication that the virtual machine ID has been updated; and using the buffer address stored in hypervisor memory to update the virtual machine ID.

Assignees

Inventors

Classifications

  • using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories · CPC title

  • G06F9/5016Primary

    the resource being the memory · CPC title

  • Hypervisor-specific management and integration aspects · CPC title

  • for multiple virtual address spaces, e.g. segmentation (G06F12/1045 takes precedence) · CPC title

  • Virtualized environment, e.g. logically partitioned system · 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 US2016246649A1 cover?
An example method of updating a virtual machine (VM) identifier (ID) stored in a memory buffer allocated from guest memory includes supplying firmware to a guest running on a VM that is executable on a host machine. The firmware includes instructions to allocate a memory buffer. The method also includes obtaining a buffer address of the memory buffer. The memory buffer is in guest memory and st…
Who is the assignee on this patent?
Red Hat Israel Ltd
What technology area does this patent fall under?
Primary CPC classification G06F9/5016. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Aug 25 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 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).