Secure migratable architecture having high availability

US2016371101A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2016371101-A1
Application numberUS-201615048154-A
CountryUS
Kind codeA1
Filing dateFeb 19, 2016
Priority dateJun 30, 2014
Publication dateDec 22, 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.

Systems and methods are disclosed that ensure high availability of such an architecture hosted on commodity platforms. One method includes initializing, by an operating system, execution of a process by the programmable circuit, the process including a firmware environment representing a virtual computing system having a second computing architecture different from a first computing architecture of a computing system on which the operating system and process reside, the process further including one or more workloads to be executed within the process. The method also includes allocating a portion of the memory for use by the process, the portion of memory including a plurality of memory segments, and generating a plurality of area descriptors associated with the plurality of memory segments, each of the area descriptors defining a location and length of a corresponding memory segment. The method includes quiescing execution of the process and capturing contents of the portion of memory and the plurality of area descriptors associated with the process.

First claim

Opening claim text (preview).

1 . A system comprising: a computing system including: a programmable circuit configured to execute instructions according to a first computing architecture; a memory communicatively connected to the programmable circuit, the memory storing software executable by the programmable circuit, the software including: a first process including a firmware environment representing a virtual computing system having a second computing architecture different from the first computing architecture and one or more workloads to be executed within the process, the software executable to perform a method including: initializing, by an operating system, execution of the first process by the programmable circuit; allocating a portion of the memory for use by the first process, the portion of memory including a plurality of memory segments; generating a plurality of area descriptors associated with the plurality of memory segments, each of the area descriptors defining a location and length of a corresponding memory segment; quiescing execution of the first process; capturing contents of the portion of memory and the plurality of area descriptors associated with the first process; and transferring a binary including the first process and the state of the portion of memory associated with the first process to a second location. 2 . The system of claim 1 , wherein the method performed by the software further includes: at the second location, unpacking the portion of memory into a second portion of memory and updating the area descriptors to reference the second portion of memory; installing the first process at the second location from the binary; and continuing operation of the first process at the second location. 3 . The system of claim 2 , wherein the second location comprises a second computing system communicatively connected to the first computing system. 4 . The system of claim 1 , wherein the second location comprises a second memory location within the computing system. 5 . The system of claim 1 , wherein the software is further executable to perform releasing the portion of the memory allocated to the first process. 6 . The system of claim 1 , wherein, during execution of the first process on the computing system, the portion of memory is replicated on the second computing system. 7 . The system of claim 6 , wherein quiescing execution of the first process and initializing execution of the second process occur without restarting the computing system. 8 . The system of claim 1 , wherein the first process includes one or more call-outs useable by the one or more workloads to directly execute instructions within the first computing architecture. 9 . The system of claim 1 , wherein the software is configured to, prior to initializing execution of the process by the programmable circuit, enumerate a specific version level of the firmware environment operating within the process. 10 . The system of claim 1 , wherein the software is further configured to replace the firmware with updated firmware while the first process is queisced. 11 . A computer-implemented method comprising: initializing, by an operating system, execution of a process by the programmable circuit, the process including a firmware environment representing a virtual computing system having a second computing architecture different from a first computing architecture of a computing system on which the operating system and process reside, the process further including one or more workloads to be executed within the process; allocating a portion of the memory for use by the process, the portion of memory including a plurality of memory segments; generating a plurality of area descriptors associated with the plurality of memory segments, each of the area descriptors defining a location and length of a corresponding memory segment; quiescing execution of the process; and capturing contents of the portion of memory and the plurality of area descriptors associated with the process. 12 . The method of claim 11 , further comprising replacing the firmware with updated firmware while the first process is queisced. 13 . The method of claim 11 , further comprising transferring a binary including the process and the state of the portion of memory associated with the process to a second location. 14 . The method of claim 13 , further comprising: at the second location, unpacking the portion of memory into a second portion of memory and updating the area descriptors to reference the second portion of memory; installing the process at the second location from the binary; and continuing operation of the process at the second location. 15 . The method of claim 13 , further comprising deallocating the portion of memory. 16 . The method of claim 13 , wherein the portion of memory is located on a first computing system and the second portion of memory is located on a second computing system, and wherein deallocating the portion of memory frees memory resources of the first computing system. 17 . The method of claim 11 , further comprising, during operation of the process, requesting allocation by the operating system of one or more processing cores available on the computing system. 18 . The method of claim 11 , further comprising, during operation of the process, requesting allocation by the operating system of one or more additional memory segments available on the computing system. 19 . The method of claim 11 , further comprising enumerating a specific version level of the firmware environment operating within the process. 20 . A computer-readable storage medium comprising computer-executable instructions stored thereon which, when executed by a computing system, cause the computing system to perform a method comprising: initializing, by an operating system, execution of a process by the programmable circuit, the process including a firmware environment representing a virtual computing system having a second computing architecture different from a first computing architecture of a computing system on which the operating system and process reside, the process further including one or more workloads to be executed within the process; allocating a portion of the memory for use by the process, the portion of memory including a plurality of memory segments; generating a plurality of area descriptors associated with the plurality of memory segments, each of the area descriptors defining a location and length of a corresponding memory segment; quiescing execution of the process; capturing contents of the portion of memory and the plurality of area descriptors associated with the process; and transferring a binary including the process and the state of the portion of memory associated with the process to a second location.

Assignees

Inventors

Classifications

  • G06F9/455Primary

    Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines · CPC title

  • the resource being the memory · CPC title

  • Updates (security arrangements therefor G06F21/57) · CPC title

  • H04L63/20Primary

    for managing network security; network security policies in general (filtering policies H04L63/0227) · CPC title

  • Compatibility, e.g. with legacy hardware · 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 US2016371101A1 cover?
Systems and methods are disclosed that ensure high availability of such an architecture hosted on commodity platforms. One method includes initializing, by an operating system, execution of a process by the programmable circuit, the process including a firmware environment representing a virtual computing system having a second computing architecture different from a first computing architectur…
Who is the assignee on this patent?
Beale Andrew Ward, Strong David, Unisys Corp
What technology area does this patent fall under?
Primary CPC classification G06F9/455. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Dec 22 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 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).