Techniques for redirecting input/output

US9612852B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-9612852-B1
Application numberUS-201213718805-A
CountryUS
Kind codeB1
Filing dateDec 18, 2012
Priority dateDec 18, 2012
Publication dateApr 4, 2017
Grant dateApr 4, 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.

Techniques for redirecting input/output are disclosed. In one particular embodiment, the techniques may be realized as a method for redirecting input/output comprising the steps of method for redirecting input/output comprising configuring a first virtual machine with a recorder for library interposition, configuring a replica virtual machine with a player for library interposition, receiving a first recorded event from the first virtual machine, and transferring the first recorded event to the replica virtual machine for replay.

First claim

Opening claim text (preview).

The invention claimed is: 1. A computer-implemented method for redirecting input/output comprising: configuring a first virtual machine with a recorder for library interposition; configuring a replica virtual machine with a player for library interposition; receiving a first recorded event from the first virtual machine; and transferring, via an input/output redirection module, the first recorded event to the replica virtual machine for replay, wherein the replica virtual machine further comprises an interpose player configured to send read requests to an executable program and receive socket input requests from the executable program, and wherein the replica virtual machine further comprises a replica system library, the replica system library comprising libc as a standard C library and configured to receive and process the socket input requests from the interpose player. 2. The computer-implemented method of claim 1 , further comprising receiving a subsequent recorded event from the first virtual machine after the first recorded event was transferred for replay. 3. The computer-implemented method of claim 1 , further comprising: configuring a plurality of replica virtual machines, wherein each replica virtual machine of the plurality of replica virtual machines is configured with a player of a plurality of players for library interposition; and transferring the first recorded event to at least two replica virtual machines of the plurality of replica virtual machines for replay, wherein the first recorded event is transferred to the at least two replica virtual machines of the plurality of replica virtual machines concurrently for replay. 4. The computer-implemented method of claim 1 , wherein the first virtual machine comprises a first architecture, and wherein the replica virtual machine comprises a second architecture different from the first architecture. 5. The computer-implemented method of claim 1 , wherein the first recorded event is a network-based input/output event. 6. The computer-implemented method of claim 1 , wherein the first recorded event is transferred through a local pipe. 7. The computer-implemented method of claim 1 , wherein the first recorded event is transferred through a network pipe. 8. The computer-implemented method of claim 1 , wherein the first recorded event comprises a data transmission associated with the event. 9. A system for redirecting input/output comprising: one or more hardware processors communicatively coupled to a network; wherein the one or more hardware processors are configured to: configure a first virtual machine with a recorder for library interposition; configure a replica virtual machine with a player for library interposition; receive a first recorded event from the first virtual machine; and transfer the first recorded event to the replica virtual machine for replay, wherein the replica virtual machine further comprises an interpose player configured to send read requests to an executable program and receive socket input requests from the executable program, and wherein the replica virtual machine further comprises a replica system library, the replica system library comprising libc as a standard C library and configured to receive and process the socket input requests from the interpose player. 10. The system of claim 9 , wherein the one or more hardware processors are further configured to receive a subsequent recorded event from the first virtual machine after the first recorded event was transferred for replay. 11. The system of claim 9 , wherein the one or more hardware processors are further configured to: configure a plurality of replica virtual machines, wherein each replica virtual machine of the plurality of replica virtual machines is configured with a player of a plurality of players for library interposition; and transfer the first recorded event to at least two replica virtual machines of the plurality of replica virtual machines for replay, wherein the first recorded event is transferred to the at least two replica virtual machines of the plurality of replica virtual machines concurrently for replay. 12. The system of claim 9 , wherein the first recorded event is a network-based input/output event. 13. The system of claim 9 , wherein the first recorded event is transferred through a network pipe. 14. The system of claim 9 , wherein the first recorded event comprises a data transmission associated with the event. 15. An article of manufacture for redirecting input/output, the article of manufacture comprising: at least one non-transitory processor readable storage medium; and instructions stored on the at least one medium; wherein the instructions are configured to be readable from the at least one medium by at least one processor and thereby cause the at least one processor to operate so as to: configure a first virtual machine with a recorder for library interposition; configure a replica virtual machine with a player for library interposition; receive a first recorded event from the first virtual machine; and transfer the first recorded event to the replica virtual machine for replay, wherein the replica virtual machine further comprises an interpose player configured to send read requests to an executable program and receive socket input requests from the executable program, and wherein the replica virtual machine further comprises a replica system library, the replica system library comprising libc as a standard C library and configured to receive and process the socket input requests from the interpose player. 16. The article of manufacture of claim 15 , wherein the instructions cause the at least one processor to operate further so as to receive a subsequent recorded event from the first virtual machine after the first recorded event was transferred for replay. 17. The article of manufacture of claim 15 , wherein the instructions cause the at least one processor to operate further so as to: configure a plurality of replica virtual machines, wherein each replica virtual machine of the plurality of replica virtual machines is configured with one player of a plurality of players for library interposition; and transfer the first recorded event to the plurality of replica virtual machines for replay, wherein the first recorded event is transferred to each replica virtual machine of the plurality of replica virtual machines concurrently for replay. 18. The article of manufacture of claim 15 , wherein the first recorded event is a network-based input/output event. 19. The article of manufacture of claim 15 , wherein the first recorded event is transferred through a network pipe. 20. The article of manufacture of claim 15 , wherein the first recorded event comprises a data transmission associated with the event.

Assignees

Inventors

Classifications

  • Hypervisors; Virtual machine monitors · CPC title

  • for test execution, e.g. scheduling of test suites · CPC title

  • G06F9/455Primary

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

  • Environments for analysis, debugging or testing of software · CPC title

  • Energy efficient computing, e.g. low power processors, power management or thermal management · 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 US9612852B1 cover?
Techniques for redirecting input/output are disclosed. In one particular embodiment, the techniques may be realized as a method for redirecting input/output comprising the steps of method for redirecting input/output comprising configuring a first virtual machine with a recorder for library interposition, configuring a replica virtual machine with a player for library interposition, receiving a…
Who is the assignee on this patent?
Veritas Technologies Llc
What technology area does this patent fall under?
Primary CPC classification G06F9/45533. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 04 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). 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).