Live rollback for a computing environment

US9639432B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9639432-B2
Application numberUS-201414557317-A
CountryUS
Kind codeB2
Filing dateDec 1, 2014
Priority dateDec 1, 2014
Publication dateMay 2, 2017
Grant dateMay 2, 2017

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 first computing device is provided for rolling back a computing environment. The computing device includes processors configured to acquire a stream containing entries including snapshot entries, memory entries, and input/output entries wherein each entry includes information and is associated with a timestamp. The processors are further configured to receive a snapshot entry associated with a first timestamp, revert to a memory state using information provided in at least one memory entry associated with a timestamp after the first timestamp, and re-execute a previously executed process, wherein the re-execution of the process is started using the first timestamp, information from the received snapshot entry, and information for input/output operations corresponding to the input/output entries associated with timestamps after the first timestamp.

First claim

Opening claim text (preview).

What is claimed is: 1. A first computing device for rolling back a computing environment, the first computing device comprising: one or more processors configured to: acquire a stream containing entries including snapshot entries, a plurality of memory entries, and at least one input/output entry, wherein: each entry of the entries includes information and is associated with a timestamp; and a first memory entry of the plurality of memory entries includes a reference to a second memory entry of the plurality of memory entries; receive a snapshot entry of the snapshot entries, wherein the received snapshot entry is associated with a first timestamp; revert to a memory state using information provided in the plurality of memory entries and following the reference includes in the first memory entry to the second memory entry; and re-execute a previously executed process, wherein the re-execution of the process is started using the first timestamp and information from the received snapshot entry and includes information for input/output operations corresponding to the at least one input/output entry associated with timestamps after the first timestamp. 2. The first computing device of claim 1 , wherein the stream comprises a first stream of snapshot entries, a second stream of memory entries, and a third stream of input/output entries. 3. The first computing device of claim 1 , wherein the reversion to the memory state further comprises the one or more processors being configured to: read the information provided in the plurality of memory entries; and update a portion of the memory state using the information. 4. The first computing device of claim 1 , wherein the re-execution of the process started using the first timestamp and information in the received snapshot entry, comprises the one or more processors being configured to: revert to a processor state using the information in the received snapshot entry; revert the processor timestamp to the first timestamp; and start the processor re-execution. 5. The first computing device of claim 1 , wherein the one or more processors are further configured to intercept input/output transactions during the re-execution. 6. The first computing device of claim 1 , wherein each entry of the stream includes a timestamp. 7. The first computing device of claim 1 , wherein the timestamp of an entry of the stream is relative to timestamps of the other entries of the stream. 8. A method for a rollback of a computing environment, the method being performed by a computing device that includes one or more processors, the method comprising: acquiring a stream containing entries including snapshot entries, a plurality of memory entries, and at least one input/output entry, wherein: each entry of the entries includes information and is associated with a timestamp; and a first memory entry of the plurality of memory entries includes a reference to a second memory entry of the plurality of memory entries; receiving a snapshot entry of the snapshot entries, wherein the received snapshot entry is associated with a first timestamp; reverting to a memory state using information provided in the plurality of memory entries, and following the reference included in the first memory entry to the second memory entry; and re-executing a previously executed process, wherein the re-execution of the process is started using the first timestamp and information from the received snapshot entry and includes information for input/output operations corresponding to the at least one input/output entry associated with timestamps after the first timestamp. 9. The method of claim 8 , wherein the stream comprises a first stream of snapshot entries, a second stream of memory entries, and a third stream of input/output entries. 10. The method of claim 8 , wherein reverting to the memory state further comprises: reading the information provided in the plurality of memory entries; and updating a portion of the memory state using the information. 11. The method of claim 8 , wherein re-executing the process uses the first timestamp and information in the received snapshot entry and further comprises: reverting to a processor state using the information in the received snapshot entry; reverting the processor timestamp to the first timestamp; and starting the processor re-execution. 12. The method of claim 8 , further comprising: intercepting input/output transactions during the re-execution. 13. A non-transitory computer readable storage medium storing instructions that are executable by a first computing device that includes one or more processors to cause the first computing device to perform a method for a rollback of a computing environment, the method comprising: acquiring a stream containing entries including snapshot entries, a plurality of memory entries, and at least one input/output entry, wherein: each entry of the entries includes information and is associated with a timestamp; and a first memory entry of the plurality of memory entries includes a reference to a second memory entry of the plurality of memory entries; receiving a snapshot entry of the snapshot entries, wherein the received snapshot entry is associated with a first timestamp; reverting a memory state using information provided in the plurality of memory entries and following the reference included in the first memory entry to the second memory entry; and re-executing a previously executed process, wherein the re-execution of the process is started using the first timestamp and information from the received snapshot entry and includes information for input/output operations corresponding to the at least one input/output entry associated with timestamps after the first timestamp. 14. The non-transitory computer readable storage medium of claim 13 , wherein the stream comprises a first stream of snapshot entries, a second stream of memory entries, and a third stream of input/output entries. 15. The non-transitory computer readable storage medium of claim 13 , wherein reverting to the memory state further comprises: reading the information provided in the plurality of memory entries; and updating a portion of the memory state using the information. 16. The non-transitory computer readable storage medium of claim 13 , wherein re-executing the process uses the first timestamp and information in the received snapshot entry and further comprises: reverting a processor state using the information in the received snapshot entry; reverting the processor timestamp to the first timestamp; and starting the processor re-execution. 17. The non-transitory computer readable storage medium of claim 13 , wherein the set of instructions that are executable by the at least one processer of the first computing device to cause the first computing device to further perform: intercepting input/output transactions during the re-execution.

Assignees

Inventors

Classifications

  • Restarting or rejuvenating · CPC title

  • Virtual · CPC title

  • Prevention of errors by analysis, debugging or testing of software · CPC title

  • Using snapshots, i.e. a logical point-in-time copy of the data · CPC title

  • Monitoring of software · 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 US9639432B2 cover?
A first computing device is provided for rolling back a computing environment. The computing device includes processors configured to acquire a stream containing entries including snapshot entries, memory entries, and input/output entries wherein each entry includes information and is associated with a timestamp. The processors are further configured to receive a snapshot entry associated with …
Who is the assignee on this patent?
Citrix Systems Inc
What technology area does this patent fall under?
Primary CPC classification G06F11/1438. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 02 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). 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).