云应用快速启动的方法、装置、存储介质及电子设备制造方法及图纸

技术编号:36513145 阅读:32 留言:0更新日期:2023-02-01 15:42
本申请提供了一种云应用快速启动的方法、装置、存储介质及电子设备,该方法可以在类加载器加载可执行文件时,将第一可执行文件加载到内存中,并向类加载器发送第一通知消息,指示加载完成,上述方案在第一可执行文件被加载到内存后即可启动云应用,无需等全部可执行文件都加载完成,有效提升了云应用的启动速度。此外,本申请还可以通过类加载器反扁平化处理第二可执行文件,并将处理后的第二可执行文件加载到内存中,以提升云应用的启动速度。具体的,第二可执行文件为优化后的dex2oat编译过程生成的和系统无关的elf文件,由于生成的elf文件与系统无关,因而兼容性强,同时可以有效减少dex2oat编译过程的处理时间,提升云应用的启动速度。的启动速度。的启动速度。

【技术实现步骤摘要】
云应用快速启动的方法、装置、存储介质及电子设备


[0001]本申请涉及云计算
,具体涉及一种云应用快速启动的方法、装置、存储介质及电子设备。

技术介绍

[0002]随着科技的发展,云应用得到广泛应用。通过将云应用在云端服务器上进行安装启动,使得用户终端只需发送简单的操作指令至云端服务器,就可以通过获得云端服务器的推流画面来享受相关的云应用服务。
[0003]为了最大限度地利用云端服务器的实例资源,云应用在实例上通常是实时安装启动的,即实例资源在给不同用户终端提供服务时,其上安装的云应用也往往不同,为了满足不同用户终端的服务需求,实现云应用的快速安装启动就显得尤为重要。
[0004]目前很多应用的安装包都比较大,实例的安卓Android对安装包apk中dex文件(dex文件是Android平台上可执行文件的一种文件类型)的数量是有限制的,一般情况下,应用apk会使用Google的multiDex技术突破这一限制。以某一社交软件为例,其安装包约为400MB,拆分成30个dex文件。对于正常的安装流程,在安装的时候会做dex2oat(英文全称是dalvik excutable file to optimized art file,它是一个对 android系统下的dex文件进行编译优化的程序)的工作,该动作会将dex文件的部分字节码提前转化为虚拟机可以执行运行的机器码,提高运行效率。但该工作非常耗时,正常安装一个该社交软件耗时会在1分钟以上,这在云应用方案中是不可接受的。所以在安装云应用的过程中会将dex2oat过程删除掉,但删除掉dex2oat的后果是云应用启动耗时变长。
[0005]有鉴于此,如何提供一种方案,以提升云应用的启动速度,成为亟待解决的技术问题。

技术实现思路

[0006]鉴于上述问题,本申请提供了一种云应用快速启动的方法、装置、存储介质及电子设备,以提升云应用的启动速度。
[0007]第一方面,本申请实施例提供了一种云应用快速启动的方法,适用于云端服务器,所述方法包括以下步骤:获取配置信息,在类加载器加载可执行文件时,将第一可执行文件加载到内存中,并向所述类加载器发送第一通知消息,其中,所述配置信息包括所述第一可执行文件的信息,所述第一可执行文件为云应用启动时使用的第一类文件所属的可执行文件,所述第一通知消息用于指示可执行文件加载完成;和/或在类加载器加载可执行文件时,向所述类加载器发送第二通知消息,以使所述类加载器反扁平化处理第二可执行文件,并将处理后的第二可执行文件加载到内存中,其中,所述第二通知消息用于指示所述第二可执行文件合法,所述第二可执行文件为云应用对应的安装包安装时经优化后的dex2oat编译过程生成,所述优化后的dex2oat编译过程生成和
系统无关的elf文件。
[0008]第二方面,本申请实施例还提供了一种云应用快速启动的装置,适用于云端服务器,包括:第一加载模块,用于获取配置信息,在类加载器加载可执行文件时,将第一可执行文件加载到内存中,并向所述类加载器发送第一通知消息,其中,所述配置信息包括所述第一可执行文件的信息,所述第一可执行文件为云应用启动时使用的第一类文件所属的可执行文件,所述第一通知消息用于指示可执行文件加载完成;和/或发送模块,用于在类加载器加载可执行文件时,向所述类加载器发送第二通知消息,以使所述类加载器反扁平化处理第二可执行文件,并将处理后的第二可执行文件加载到内存中,其中,所述第二通知消息用于指示所述第二可执行文件合法,所述第二可执行文件为云应用对应的安装包安装时经优化后的dex2oat编译过程生成,所述优化后的dex2oat编译过程生成和系统无关的elf文件。
[0009]第三方面,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述的云应用快速启动的方法的步骤。
[0010]第四方面,本申请实施例还提供了一种电子设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行上述的云应用快速启动的方法的步骤。
[0011]区别于现有技术,本申请实施例提供的云应用快速启动的方法、装置、存储介质及电子设备,提供了两种加载优化方案:第一种方案在类加载器加载可执行文件时,将第一可执行文件加载到内存中,并向所述类加载器发送第一通知消息,指示可执行文件加载完成,使得在第一可执行文件加载到内存后即可进行云应用启动,不需要类加载器逐个串行加载可执行文件到内存,并在全部可执行文件加载完成后才启动云应用,有效提升了云应用的启动速度。第二种方案在类加载器加载可执行文件时,向所述类加载器发送第二通知消息,指示第二可执行文件合法,这种情况下类加载器会反扁平化处理第二可执行文件,并将处理后的第二可执行文件加载到内存中,相较于类加载器逐个加载可执行文件到内存的串行处理方式,能够极大提升可执行文件的加载效率,因而有效提升了云应用的启动速度。
[0012]上述
技术实现思路
相关记载仅是本申请技术方案的概述,为了让本领域普通技术人员能够更清楚地了解本申请的技术方案,进而可以依据说明书的文字及附图记载的内容予以实施,并且为了让本申请的上述目的及其它目的、特征和优点能够更易于理解,以下结合本申请的具体实施方式及附图进行说明。
附图说明
[0013]附图仅用于示出本申请具体实施方式以及其他相关内容的原理、实现方式、应用、特点以及效果等,并不能认为是对本申请的限制。
[0014]在说明书附图中:图1为本申请第一示例性实施例所述的云应用快速启动的方法的流程图;图2为本申请第二示例性实施例所述的云应用快速启动的方法的流程图;
图3为本申请第一示例性实施例涉及的云应用快速启动的装置的模块示意图;图4为本申请第二示例性实施例涉及的云应用快速启动的装置的模块示意图;图5为本申请一示例性实施例涉及的电子设备的模块示意图。
具体实施方式
[0015]为详细说明本申请可能的应用场景,技术原理,可实施的具体方案,能实现目的与效果等,以下结合所列举的具体实施例并配合附图详予说明。本文所记载的实施例仅用于更加清楚地说明本申请的技术方案,因此只作为示例,而不能以此来限制本申请的保护范围。
[0016]在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中各个位置出现的“实施例”一词并不一定指代相同的实施例,亦不特别限定其与其它实施例之间的独立性或关联性。原则上,在本申请中,只要不存在技术矛盾或冲突,各实施例中所提到的各项技术特征均可以以任意方式进行组合,以形成相应的可实施的技术方案。
[0017]除非另有定义,本文所使用的技术术语的含义与本申请所属
的技术人员通常理解的含义相同;本文中对相关术语的使用只是为了描述具体的实施例,而不是旨在限制本申请。...

【技术保护点】

【技术特征摘要】
1.一种云应用快速启动的方法,适用于云端服务器,其特征在于,所述方法包括以下步骤:获取配置信息,在类加载器加载可执行文件时,将第一可执行文件加载到内存中,并向所述类加载器发送第一通知消息,其中,所述配置信息包括所述第一可执行文件的信息,所述第一可执行文件为云应用启动时使用的第一类文件所属的可执行文件,所述第一通知消息用于指示可执行文件加载完成;和/或在类加载器加载可执行文件时,向所述类加载器发送第二通知消息,以使所述类加载器反扁平化处理第二可执行文件,并将处理后的第二可执行文件加载到内存中,其中,所述第二通知消息用于指示所述第二可执行文件合法,所述第二可执行文件为云应用对应的安装包安装时经优化后的dex2oat编译过程生成,所述优化后的dex2oat编译过程生成和系统无关的elf文件。2.如权利要求1所述的云应用快速启动的方法,其特征在于,在所述将第一可执行文件加载到内存中之后,还包括以下步骤:将第三可执行文件加载到内存中,其中,所述第三可执行文件包括所述云应用对应的安装包中除所述第一可执行文件以外的其他可执行文件中的至少一个可执行文件。3.如权利要求1或2所述的云应用快速启动的方法,其特征在于,所述配置信息通过广度遍历构造应用主要组件使用的可执行文件生成。4.如权利要求1所述的云应用快速启动的方法,其特征在于,在所述向所述类加载器发送第二通知消息之前,还包括:提取所述第二可执行文件。5.一种云应用快速启动的装置,适用于云端服务器,其特征在于,包括:第一加载模块,用于获取配置信息,在类加载器加载可执行文件时,将第一可执行文件加载到内存中,并向所述类加载器发送第一通知消息,其中,所述配置信息包括所述第一可执行文件的信息,所述第一可执行文件为云应...

【专利技术属性】
技术研发人员:齐永前
申请(专利权)人:北京海誉动想科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1