本公开涉及用于通过基于云的网络进行数据传输的状态信息的压缩。本公开的各方面描述了用于压缩一组RAM数据的系统和方法,且该组RAM数据可能有一些在一组ROM数据中重复的部分。所述ROM数据可被分成多个数据块并进行散列以获得唯一的键值。接着,可对所述RAM进行第二次散列以查看是否有任何匹配所述ROM数据块的RAM数据块。具有匹配键值的RAM数据块被替换成指向所述数据在所述ROM中位置的指针。要强调的是,本摘要的提供符合以下规则,即要求摘要可允许搜索者或其他读者迅速地确定本技术公开的主题。要理解的是,所提交的摘要将不用于解释或限制权利要求的范围或含义。
Compression of state information for data transmission over cloud-based networks
【技术实现步骤摘要】
用于通过基于云的网络进行数据传输的状态信息的压缩本申请是申请号为201410089633.4、申请日为2014年3月12日、专利技术名称为“用于通过基于云的网络进行数据传输的状态信息的压缩”的专利技术专利申请的分案申请。
本公开涉及数据压缩。此外,本申请描述了一种用于压缩媒体应用的状态信息以便通过网络轻易地将其进行传输的方法和设备。
技术介绍
媒体应用,如视频游戏,通常同时需要只读存储器(ROM)和随机存取存储器(RAM)。所有运行媒体应用所需的数据都被存储在ROM上,但在媒体应用的执行过程中,也可将源自ROM的数据中的部分存储在RAM中以便更快和更高效地对其进行访问。被存储在RAM中的信息也可包括所有的状态信息。状态信息包括从媒体标题执行中的某一点运行媒体标题所需的所有信息。举例说明,状态信息可包括限定客户端装置平台(如正用于执行和显示媒体应用的游戏机或计算机)的每个组件的状态的数据。用于举例而非限制,状态信息可包括关于CPU、GPU和存储器的状态、寄存器值、程序计数器的值、可编程DMA的状态、用于DMA的缓冲数据、音频芯片状态和CD-ROM状态的信息。典型地,为了充分限定媒体应用的当前状态所需的数据量是比较大的。例如,在视频游戏中,可能有大约为8GB的被存储在RAM中的数据,其表示一组完整的状态信息。以前,为了充分限定状态信息所需的大量数据并不是一个问题,这是因为数据从未保存过或从RAM进行传输。然而,对于状态信息传输能力的需求日益增长。例如,有时,可能会通过网络将状态信息传输至基于云的服务器,例如在软件标题的基于云的仿真过程中。在这些情况下,传输数千兆字节的数据可能是不实际的。可替代地,需要在本地保存状态信息以用于后续的使用。例如,当把游戏机置于节电“睡眠”模式中时,为了从当前的位置重新开始玩游戏而保持RAM的整个内容则可能是不实际的。
技术实现思路
因此,本领域需要将状态信息压缩成更少数据的密集格式的系统和设备。在这种背景下,产生了本公开的各方面。附图说明图1为根据本公开的一个方面的通过网络进行通信的客户端装置平台和基于云的服务器的示意图。图2A-2D为描述根据本公开的各方面的用于压缩媒体应用的状态信息的方法的流程图。图3A-3C为描述根据本公开的各方面的可在存储器中的部分上进行的散列过程的简化版本的方框图。图4A-4D为描述根据本公开的各方面的可存储在非临时性计算机可读介质上的用于压缩状态信息的指令的方框图。具体实施方式虽然下面的详细描述包含许多用于说明的具体细节,但本领域的任何普通技术人员将理解,针对下述细节的许多变化和变更都落在本公开的范围之中。相应地,阐明下面所描述的本公开的各方面,其不会对在本说明书前的权利要求的一般性造成损失且不会对其施加限制。本公开的各方面描述了便于压缩应用状态数据的系统和方法。如本文所使用的,应用状态数据为客户端装置平台用于在媒体应用中复制给定情景所需的一组完整的数据。典型地,应用状态数据是通过保存客户端装置平台的随机存取存储器(RAM)而获得的。为了充分限定客户端装置平台的状态所需保存的在RAM中的大量数据可使用被存储在只读存储器(ROM)中的数据进行压缩以作为库。典型地,在RAM中存在的数据和在ROM中存储的数据有大量的重叠。例如,在视频游戏中,在给定时间上RAM中约50%或更多的数据也可能在ROM中找到。用于举例而非限制,在媒体应用的执行过程中可能有被存储在RAM中的纹理、三维模型或游戏中动画。这些类型的数据也可在ROM上找到。由于ROM不随时间改变,也可在ROM中找到的RAM中数据的部分可被替换成指向其在ROM中相应位置而非真实数据的指针。因此,可通过交叉引用回ROM而减少为了充分限定客户端装置平台的状态所需的数据量。图1为本专利技术的一个实施方案的示意图。可通过网络159经基于云的服务器103访问客户端装置平台102。基于云的服务器103可通过网络159访问替代的客户端装置平台102。客户端装置平台102可包括中央处理器(CPU)131。举例说明,CPU131可包括一个或多个处理器,其可根据,例如双核、四核、多核或Cell处理器的架构进行配置。客户端装置平台102还可包括存储器132(例如:RAM、DRAM、ROM、DROM等)。CPU131可执行过程控制程序133,其中的部分可被存储在存储器132中。客户端装置平台102还可包括公知的支持电路140,如输入/输出(I/O)电路141、电源(P/S)142、时钟(CLK)143和高速缓存144。可选地,客户端装置平台102可包括大容量存储装置134,如磁盘驱动器、CD-ROM驱动器、磁带驱动器等以存储程序和/或数据。可选地,客户端装置平台102还可包括显示单元137和用户接口单元138,以便在客户端装置平台102和需要直接访问客户端装置平台102的用户之间进行交互。显示单元137可以采用显示文本、数字或图形符号的阴极射线管(CRT)或平板屏幕的形式。用户接口单元138可包括键盘、鼠标、操纵杆、光笔或其它装置。可通过I/O电路141将控制器145连接至客户端装置平台102或可将其直接集成至客户端装置平台102。控制器145可便于在客户端装置平台102与用户之间进行交互。控制器145可包括键盘、鼠标、操纵杆、光笔、手持控制或其它装置。控制器145也能够产生触觉响应146。用于举例而非限制,触觉响应146可以是振动或对应于触觉的任何其它反馈。客户端装置平台102可包括网络接口139,其被配置成启用Wi-Fi、以太网端口或其它通信方法。网络接口139可结合合适的硬件、软件、固件或其两个或多个的一些组合以便通过电子通信网络159进行通信。网络接口139可被配置成通过局域网和广域网(如因特网)实现有线或无线通信。客户端装置平台102可通过网络159经一个或多个数据包发送和接收数据136和/或对文件的请求。前述组件可经内部系统总线150而在彼此之间交换信号。客户端装置平台102可以是通用计算机,其在运行用于执行如本文所述的本专利技术的实施方案的代码时变成专用计算机。用于举例而非限制,客户端装置平台102可以是游戏机、机顶盒、电缆盒、个人计算机、平板电脑、电话、手机、DVD播放器、蓝光播放器、数字视频录像机(DVR)或其它类似的装置或其任意的组合。用于举例而非限制,就游戏机而言,客户端装置平台102可以是便携式游戏机,如索尼电脑娱乐公司生产的PlayStationVita,或者其可以是固定式游戏机,如索尼电脑娱乐公司生产的PlayStation4或任何其它更早的版本。客户端装置平台102可访问已被用户选定要执行的媒体应用114。在客户端装置102中可能存储有一个以上的媒体应用114。媒体应用也可被存储在存储器132或大容量存储装置134中。另外,一个或多个媒体应用114可被存储在可通过网络159访问客户端装置平台102的远程位置上。用于举例而非限制,媒体应用可以是视频游戏。每个媒体应用114包含被存储在只读存储器(ROM)中的ROM数据108。当执行媒体应用114时,客户端装置平台102使用ROM数据108以向用户显示媒体应用114。在执行媒体应用114的过程中,客户端装置平台102可使用随机存取存储器(RAM)105以存储本文档来自技高网...
【技术保护点】
1.一种在客户端装置平台中用于压缩被存储在可访问所述客户端装置平台的RAM中的一组RAM数据的方法,其包括:将被存储在可访问所述客户端装置平台的ROM中的一组ROM数据分成多个ROM数据块;对所述多个ROM数据块进行第一次散列操作以向每个ROM数据块分配唯一的键值;发起对所述组RAM数据的压缩;对所述RAM数据进行第二次散列操作以找到具有与被分配至所述ROM数据块之一的键值相匹配的键值的一个或多个RAM数据块;将指针保存至具有与RAM数据块相匹配的键值的每个ROM数据块的位置;以及保存与被分配至所述ROM数据块之一的键值不相匹配的所述RAM数据中的部分。
【技术特征摘要】
2013.03.15 US 61/794,811;2014.02.18 US 14/183,3511.一种在客户端装置平台中用于压缩被存储在可访问所述客户端装置平台的RAM中的一组RAM数据的方法,其包括:将被存储在可访问所述客户端装置平台的ROM中的一组ROM数据分成多个ROM数据块;对所述多个ROM数据块进行第一次散列操作以向每个ROM数据块分配唯一的键值;发起对所述组RAM数据的压缩;对所述RAM数据进行第二次散列操作以找到具有与被分配至所述ROM数据块之一的键值相匹配的键值的一个或多个RAM数据块;将指针保存至具有与RAM数据块相匹配的键值的每个ROM数据块的位置;以及保存与被分配至所述ROM数据块之一的键值不相匹配的所述RAM数据中的部分。2.根据权利要求1所述的方法,其还包括:在将所述组ROM数据分成多个ROM数据块之前解压缩所述组ROM数据;以及包括具有每个ROM数据块的指针,其指向所述ROM数据的压缩版本中每个ROM数据块所源起的位置。3.根据权利要求1所述的方法,其还包括:在将所述组ROM数据分成多个ROM数据块之前解密所述组ROM数据;以及包括具有每个ROM数据块的指针,其指向所述加密ROM数据中每个ROM数据块所源起的位置。4.根据权利要求1所述的方法,其还包括:在发起所述RAM数据的压缩前执行优化过程,其监控在利用所述RAM数据的应用的多个实例中所述RAM数据中的变化并将所述RAM数据分成必要状态的数据和非必要状态的数据。5.根据权利要求4所述的方法,其还包括:仅保存与被分配至所述ROM数据块之一的键值不相匹配的所述RAM数据中的所述必要状态的数据部分。6.根据权利要求1所述的方法,其中所述ROM数据块中的一个或多个被分成第一部分和第二部分,其中所述第二部分在所述第一散列操作中不进行散列,且其中所述ROM数据块的所述第二部分更有可能具有与RAM数据块不相匹配的键值。7.根据权利要求6所述的方法,其还包括:对所述ROM数据块的所述第二部分进行第一次子散列过程以向ROM数据块的每个第二部分分配唯一的键值。8.根据权利要求7所述的方法,其还包括:对所述RAM数据进行第二次子散列过程以找到与被分配至所述ROM数据块的所述第二部分之一的键值相匹配的一个或多个RAM数据块。9.根据权利...
【专利技术属性】
技术研发人员:VOS米尔拉,
申请(专利权)人:索尼电脑娱乐公司,
类型:发明
国别省市:日本,JP
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。