Suspending state of cloud-based legacy applications

US9925468B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9925468-B2
Application numberUS-201313791379-A
CountryUS
Kind codeB2
Filing dateMar 8, 2013
Priority dateJun 29, 2012
Publication dateMar 27, 2018
Grant dateMar 27, 2018

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 snapshot of an emulated game may be generated by a client. At some point during the emulation of the emulated game, a snapshot initiator delivers a suspension request to an emulator. Once the suspension request is received, the emulator will suspend the emulated title. The emulator generates a snapshot of the emulated game by recording the current state of all devices being emulated. The snapshot is then delivered to the client. It is emphasized that this abstract is provided to comply with the rules requiring an abstract that will allow a searcher or other reader to quickly ascertain the subject matter of the technical disclosure. It is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims.

First claim

Opening claim text (preview).

What is claimed is: 1. In an emulator configured to operate on a network, a method comprising: a) receiving one or more game inputs from a remote client over the network, wherein the one or more game inputs advance game play in an emulated game from a first state to a second state; b) emulating the emulated game with the emulator such that game play in the emulated game is advanced to the second state; c) receiving a suspension request from the remote client over the network; d) generating a snapshot of the emulated game with the emulator, wherein the snapshot is a recording of a state of one or more devices being emulated by the emulator when each of the one or more devices is in a steady state; and e) delivering the snapshot to the remote client over the network. 2. The method of claim 1 , wherein the emulator is a deterministic emulator. 3. The method of claim 2 , wherein the emulator uses basic blocks to emulate the game. 4. The method of claim 1 , wherein the one or more devices are in the steady state when there are no outstanding disk requests. 5. The method of claim 1 , wherein the one or more devices are in the steady state when there is no asynchronous activity. 6. The method of claim 1 , wherein the suspension request is received before the emulator has advanced the emulated game to the second state. 7. The method of claim 1 , wherein the snapshot is a recording of the states of all of the devices being emulated by the emulator. 8. The method of claim 1 , wherein the one or more game inputs are received over a period of time. 9. A nontransitory computer readable medium containing program instructions wherein execution of the program instructions by one or more processors of a computer system causes the one or more processors to carry out the steps of: a) receiving one or more game inputs from a remote client over a network, wherein the one or more game inputs advance game play in an emulated game from a first state to a second state; b) emulating the emulated game with the emulator such that game play in the emulated game is advanced to the second state; c) receiving a suspension request during the game play from the remote client over the network; d) in response to the suspension request, generating a snapshot of the emulated game with the emulator, wherein the snapshot is a recording of a state of one or more devices being emulated by the emulator when each of the one or more devices is in a steady state; and e) delivering the snapshot to the remote client over the network. 10. An emulator configured to operate on a network, the emulator comprising: a processor; a memory coupled to the processor; one or more instructions embodied in memory for execution by the processor, the instructions being configured to implement a method, the method comprising: a) receiving one or more game inputs from a remote client over the network, wherein the one or more game inputs advance game play in an emulated game from a first state to a second state; b) emulating the emulated game with the emulator such that the game play in the emulated game is advanced to the second state; c) receiving a suspension request during the game play from the remote client over the network; d) in response to the suspension request, generating a snapshot of the emulated game with the emulator, wherein the snapshot is a recording of a state of one or more devices being emulated by the emulator when each of the one or more devices is in a steady state; and e) delivering the snapshot to the remote client over the network. 11. In a client configured to operate on a network, a method comprising: a) delivering one or more game inputs to a remote emulator over a network, wherein the game inputs are configured to advance game play in an emulated game that is emulated by the emulator from a first state to a second state; b) delivering a suspension request during the game play to the remote emulator over the network; and c) in response to the suspension request, receiving a snapshot of the emulated game from the remote emulator, wherein the snapshot is a recording of a state of one or more devices being emulated by the remote emulator when each of the one or more devices is in a steady state. 12. The method of claim 11 , wherein the emulator is a deterministic emulator. 13. The method of claim 12 , wherein the emulator uses basic blocks to emulate the game. 14. The method of claim 11 , wherein the suspension request is delivered to the emulator before the emulator has advanced the emulated game to the second state. 15. The method of claim 11 , wherein the one or more game inputs are automatically generated. 16. The method of claim 11 , wherein the one or more game inputs are delivered over a period of time. 17. A nontransitory computer readable medium containing program instructions wherein execution of the program instructions by one or more processors of a computer system causes the one or more processors to carry out the steps of: a) delivering one or more game inputs to a remote emulator over a network, wherein the game inputs are configured to advance game play in an emulated game that is emulated by the emulator from a first state to a second state; b) delivering a suspension request during the game play to the remote emulator over the network; and c) in response to the suspension request, receiving a snapshot of the emulated game from the remote emulator, wherein the snapshot is a recording of a state of one or more devices being emulated by the emulator when each of the one or more devices is in a steady state. 18. A client configured to operate on a network, comprising: a processor; a memory coupled to the processor; one or more instructions embodied in memory for execution by the processor, the instructions being configured to implement a method, the method comprising: a) delivering one or more game inputs to a remote emulator over a network, wherein the game inputs are configured to advance game play in an emulated game that is emulated by the emulator from a first state to a second state; b) delivering a suspension request during the game play to the remote emulator over the network; and c) in response to the suspension request, receiving a snapshot of the emulated game from the remote emulator, wherein the snapshot is a recording of a state of one or more devices being emulated by the emulator when each of the one or more devices is in a steady state. 19. The method of claim 1 , wherein the steady state is one in which there are no asynchronous activities occurring in the emulator.

Assignees

Inventors

Classifications

  • A63F13/88Primary

    Mini-games executed independently while main games are being loaded · CPC title

  • characterized by low level software layer, relating to hardware management, e.g. Operating System, Application Programming Interface · CPC title

  • Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor · CPC title

  • Saving the game status; Pausing or ending the game · 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 US9925468B2 cover?
A snapshot of an emulated game may be generated by a client. At some point during the emulation of the emulated game, a snapshot initiator delivers a suspension request to an emulator. Once the suspension request is received, the emulator will suspend the emulated title. The emulator generates a snapshot of the emulated game by recording the current state of all devices being emulated. The snap…
Who is the assignee on this patent?
Sony Interactive Entertainment Inc
What technology area does this patent fall under?
Primary CPC classification A63F13/88. Mapped technology areas include Human Necessities.
When was this patent published?
Publication date Tue Mar 27 2018 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 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).