【技术实现步骤摘要】
一种基于磁盘的应用运行方法及系统
本专利技术涉及信息处理
,特别是涉及一种基于磁盘的应用运行方法及系统。
技术介绍
随着计算机技术的不断发展,各种应用程序的功能不断地被丰富完善如图片编辑软件(Photoshop,PS)的工具栏所展现的各种功能,各种游戏软件的关卡的增加等等;以及部分应用程序为了增强视觉效果,将应用程序中的所有画面渲染成3D的效果,例如3D游戏,虚拟现实等应用对各种计算资源的占用要求越来越高,例如人工智能、数学计算等对CPU处理能力的要求,图形运算对图形处理器的处理能力的要求,图片、人物模型、地图模型、大规模数据库对存储空间的要求,这都使得应用程序的功能日益复杂,数据包越来越大。由于用户在初次使用应用程序时,需要从服务器中下载应用程序完整的软件安装包和数据包,并且需要在终端上安装应用的软件安装包才能启动应用程序,这导致下载数据包和安装软件安装包的过程往往会耗费很长的时间。为了解决该问题,目前部分公司针对自身应用程序的特点将可执行程序与资源数据分开管理,并且将资源数据如:图片、模型、内置视频等,一般按照占程序数据包大小的绝大部分配额进行拆分,模块化处理,将必要的可执行程序以及资源模块数据打包,以制作微型客户端。而在对应用程序进行拆分的过程中,往往需要(1)分析程序初步运行需要加载的可执行文件,以及可执行文件依赖的资源文件。(2)分析多个可执行文件之间的依赖关系,以及每个可执行文件同时依赖的资源,例如:某个功能接口会触发哪些资源,或者程序调用。(3)由于有的大型程序会依赖很多第三方的程序库,或者系统功能组件,例如3D图形引擎,数据传输库,图 ...
【技术保护点】
一种基于磁盘的应用运行方法,其特征在于,包括:预先在未安装目标应用时,获取所述目标应用的启动运行包和启动镜像包,其中,所述启动运行包用于启动所述目标应用,所述启动镜像包包括所述目标应用的启动数据;通过所述启动运行包启动所述目标应用时,建立本地缓存管理器,以及建立所述本地缓存管理器与启动镜像包的第一通路,和,建立本地缓存管理器与服务器的第二通路;在本地创建第一虚拟磁盘,建立所述本地缓存管理器与所述第一虚拟磁盘的第三通路;所述本地缓存管理器通过所述第三通路接收请求,所述请求是所述第一虚拟磁盘从所述目标应用接收的;当所述请求为读请求时,所述本地缓存管理器通过所述第一通路,从所述启动镜像包获取所述读请求的第一数据;和/或,所述本地缓存管理器通过所述第二通路,从所述服务器的原始镜像包中获取所述读请求的第一数据;其中,所述原始镜像包包括所述目标应用的启动数据和运行数据;通过所述第三通路将所述第一数据反馈给所述目标应用,以使所述目标应用运行。
【技术特征摘要】
1.一种基于磁盘的应用运行方法,其特征在于,包括:预先在未安装目标应用时,获取所述目标应用的启动运行包和启动镜像包,其中,所述启动运行包用于启动所述目标应用,所述启动镜像包包括所述目标应用的启动数据;通过所述启动运行包启动所述目标应用时,建立本地缓存管理器,以及建立所述本地缓存管理器与启动镜像包的第一通路,和,建立本地缓存管理器与服务器的第二通路;在本地创建第一虚拟磁盘,建立所述本地缓存管理器与所述第一虚拟磁盘的第三通路;所述本地缓存管理器通过所述第三通路接收请求,所述请求是所述第一虚拟磁盘从所述目标应用接收的;当所述请求为读请求时,所述本地缓存管理器通过所述第一通路,从所述启动镜像包获取所述读请求的第一数据;和/或,所述本地缓存管理器通过所述第二通路,从所述服务器的原始镜像包中获取所述读请求的第一数据;其中,所述原始镜像包包括所述目标应用的启动数据和运行数据;通过所述第三通路将所述第一数据反馈给所述目标应用,以使所述目标应用运行。2.根据权利要求1所述的方法,其特征在于,所述启动镜像包包括增量数据区,所述方法还包括:当所述请求为写请求时,所述本地缓存管理器通过所述第一通路将所述写请求的第二数据写入所述增量数据区中;设置第二数据对应数据块的第一位标识为第一状态。3.根据权利要求1所述的方法,其特征在于,所述启动镜像包包括增量数据区和镜像数据区,所述本地缓存管理器通过所述第一通路,从所述启动镜像包获取所述读请求的第一数据的步骤,包括:所述本地缓存管理器通过所述第一通路,从所述增量数据区中获取所述第一数据,和/或,从所述镜像数据区中获取所述第一数据。4.根据权利要求3所述的方法,其特征在于,在所述从所述增量数据区中获取所述第一数据的步骤之前,还包括:判断所述增量数据区中是否存在所述第一数据;当存在时,判断所述第一数据对应的数据块的第一位标识的状态;当不存在时,执行从所述镜像数据区中获取所述第一数据的步骤。5.根据权利要求4所述的方法,其特征在于,在判断所述第一数据对应的数据块的第一位标识的状态的步骤之后,还包括:当第一位标识的状态为第一状态时,执行从所述增量数据区中获取所述第一数据的步骤;当第一位标识的状态为第二状态时,执行从所述镜像数据区中获取所述第一数据的步骤。6.根据权利要求3所述的方法,其特征在于,在所述从所述镜像数据区中获取所述第一数据的步骤之前,还包括:判断所述镜像数据区中是否存在所述第一数据;当存在时,判断所述第一数据对应的数据块的第二位标识的状态;当不存在时,执行从所述服务器的原始镜像包中获取所述第一数据的步骤。7.根据权利要求6所述的方法,其特征在于,在判断所述第一数据对应的数据块的第二位标识的状态的步骤之后,包括:当第二位标识的状态为第三状态时,执行从所述镜像数据区中获取所述第一数据的步骤;当第二位标识的状态为第四状态时,执行从所述服务器的原始镜像包中获取所述第一数据的步骤。8.根据权利要求1所述的方法,其特征在于,所述启动镜像包包括校验和数据库数据区,在所述从所述服务器的原始镜像包中获取所述第一数据的步骤之后,还包括:计算所述第一数据对应数据块的第一校验和,并在所述校验和数据库数据区中查询所述第一数据对应数据块的第二校验和;将所述第一校验和与第二校验和进行匹配;当所述第一校验和与第二校验和匹配成功时,执行所述将所述第一数据反馈给所述目标应用的步骤;当所述第一校验和与第二校验和匹配不成功时,执行从所述服务器的原始镜像包中获取所述第一数据的步骤。9.根据权利要求8所述的方法,其特征在于,所述启动镜像包包括镜像数据区,当所述第一校验和与第二校验和匹配成功时,所述方法还包括:将所述第一数据保存至所述镜像数据区中,并设置所述第一数据对应数据块的第二位标识为第三状态。10.根据权利要求1所述的方法,其特征在于,所述服务器包括配置服务器,建立本地缓存管理器与配置服务器的第四通路的步骤,包括:获取所述目标应用的标识;依据所述标识,建立所述本地缓存管理器与所述配置服务器的第四通路,并获取所述标识对应的第一配置信息。11.根据权利要求10所述的方法,其特征在于,所述服务器包括数据服务器,建立本地缓存管理器与数据服务器的第五通路的步骤,还包括:依据所述第一配置信息,建立所述本地缓存管理器与所述数据服务器的第五通路。12.根据权利要求10所述的方法,其特征在于,所述启动镜像包包括配置数据区,所述配置数据区包括配置信息;所述建立所述本地缓存管理器与启动镜像包的第一通路的步骤之前,还包括:依据所述标识,在本地缓存中查找所述标识对应的启动镜像包,以及从所述启动镜像包的配置数据区中查找第二配置信息;将所述第一配置信息与所述第二配置信息进行匹配;当所述第一配置信息与所述第二配置信息匹配成功时,将所述启动镜像包确定为所述目标应用的启动镜像包。13.根据权利要求1所述的方法,其特征在于,所述启动镜像包包括镜像数据区,所述本地缓存管理器包括镜像缓存管理器;所述建立所述本地缓存管理器与启动镜像包的第一通路的步骤,包括:所述镜像缓存管理器打开所述镜像数据区,建立所述镜像缓存管理器与所述镜像数据区的所述第一通路。14.根据权利要求...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。