热点代码处理方法、装置、电子设备及存储介质制造方法及图纸

技术编号:29281975 阅读:18 留言:0更新日期:2021-07-16 23:26
本申请公开了一种热点代码处理方法、装置、电子设备及存储介质,在该方法中,服务器可以生成热点配置文件。目标终端设备可以获取目标终端设备的内核文件,所述内核文件中包括系统应用程序的热点配置文件,所述热点配置文件中包括所述系统应用程序的热点代码。目标终端设备在通过所述内核文件对系统应用程序进行安装时,可以将所述系统应用程序的热点配置文件中的热点代码编译为机器码,获得所述系统应用程序的热点编译文件,并将所述热点编译文件存储,从而在系统应用程序未生成有热点代码的情况下,也可以具有良好的性能。也可以具有良好的性能。也可以具有良好的性能。

【技术实现步骤摘要】
热点代码处理方法、装置、电子设备及存储介质


[0001]本申请涉及数据处理
,更具体地,涉及一种热点代码处理方法、装置、电子设备及存储介质。

技术介绍

[0002]在电子设备中,为了提高应用程序的执行效率以提高应用程序的性能,在运行时,虚拟机将会将应用程序的代码中的热点代码编译成与本地平台相关的机器码。但是,对于应用程序而言,需要运行一段时间确定哪些代码为热点代码,在应用程序安装初期,无法通过热点代码的编译提升应用程序的性能。

技术实现思路

[0003]本申请提出了一种热点代码处理方法、装置、电子设备及存储介质,以改善上述问题。
[0004]第一方面,本申请实施例提供了一种热点代码处理方法,该方法包括:获取目标终端设备的内核文件,所述内核文件中包括系统应用程序的热点配置文件,所述热点配置文件中包括所述系统应用程序的热点代码;目标终端设备在通过所述内核文件对系统应用程序进行安装时,将所述系统应用程序的热点配置文件中的热点代码编译为机器码,获得所述系统应用程序的热点编译文件;所述目标终端设备将所述热点编译文件存储。
[0005]第二方面,本申请实施例提供了一种热点代码处理方法,该方法包括:获取目标应用程序的多个热点代码文件,所述目标应用程序为目标终端设备中的系统应用程序,所述多个热点代码文件来自于运行过所述目标应用程序的多个终端设备;根据所述多个热点代码文件生成热点配置文件;在接收到对目标终端设备中系统应用程序的热点代码获取请求时,将所述热点配置文件返回。
[0006]第三方面,本申请实施例提供了一种热点代码处理装置,该装置包括:内核文件获取模块,用于获取目标终端设备的内核文件,所述内核文件中包括系统应用程序的热点配置文件,所述热点配置文件中包括所述系统应用程序的热点代码;安装模块,用于目标终端设备在通过所述内核文件对系统应用程序进行安装时,将所述系统应用程序的热点配置文件中的热点代码编译为机器码,获得所述系统应用程序的热点编译文件;存储模块,用于所述目标终端设备将所述热点编译文件存储。
[0007]第四方面,本申请实施例提供了一种热点代码处理装置,该装置包括:第一文件获取模块,用于获取目标应用程序的多个热点代码文件,所述目标应用程序为目标终端设备中的系统应用程序,所述多个热点代码文件来自于运行过所述目标应用程序的多个终端设备;第二文件获取模块,用于根据所述多个热点代码文件生成热点配置文件;返回模块,用于在接收到对目标终端设备中系统应用程序的热点代码获取请求时,将所述热点配置文件返回。
[0008]第五方面,本申请实施例提供了一种电子设备,该电子设备包括一个或多个处理
器;存储器,与所述一个或多个处理器电连接;一个或多个程序,其中所述一个或多个程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行如上述的方法。
[0009]第六方面,本申请实施列提供一种计算机可读存储介质,所述计算机可读存储介质中存储有程序代码,其中,在所述程序代码运行时执行上述的方法。
[0010]本申请提出的热点代码处理方法、装置、电子设备及存储介质,可以获取包括热点配置文件的内核文件。在通过内核文件对系统应用程序进行安装时,可以将系统应用程序的热点配置文件中热点代码编译为机器码进行存储,从而使系统应用程序在未通过使用生成热点代码时也可以提升使用性能。
附图说明
[0011]为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0012]图1示出了本申请实施例提供的一种JIT架构图。
[0013]图2示出了本申请一个实施例提供的热点代码处理方法的流程图。
[0014]图3示出了本申请另一个实施例提供的热点代码处理方法的流程图。
[0015]图4示出了本申请实施例提供的服务器与终端设备的一种交互示意图。
[0016]图5示出了本申请实施例提供的服务器与终端设备的另一种交互示意图。
[0017]图6示出了本申请又一个实施例提供的热点代码处理方法的流程图。
[0018]图7示出了本申请再一个实施例提供的热点代码处理方法的流程图。
[0019]图8示出了本申请一实施例提供的热点代码处理装置的功能模块图。
[0020]图9示出了本申请另一实施例提供的热点代码处理装置的功能模块图。
[0021]图10示出了本申请实施例提出的用于执行根据本申请实施例的热点代码处理方法的电子设备的结构框图。
[0022]图11示出了本申请实施例提供的用于保存或者携带实现根据本申请实施例的热点代码处理方法的程序代码的存储介质。
具体实施方式
[0023]为了使本
的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
[0024]在终端设备的虚拟机执行环境中,若某个代码块频繁运行,运行次数超过设定的次数,将该代码块确定为热点代码(hot code),将该热点代码记录下来并保存到热点代码文件(profile)。其中,可以理解的,该代码块可以是一个代码集合,或者是代码中的一个方法(method)。
[0025]为了提高热点代码的运行效率,可以将热点代码文件中的热点代码经由即时编译器(JIT,Just-In-Time Compiler)编译后获得odex文件或者经预编译(AOT,Ahead-of-Time)编译后得oat文件,热点代码编译后的odex文件以及oat文件中包含的是二进制机器
码,可直接交由底层处理器(CPU,central processing unit)执行,当再次需要执行热点代码时,可以直接执行热点代码编译后的odex文件或者oat文件,提高了运行效率。
[0026]以如图1所示的安卓系统中的JIT架构为例,由于oat文件中包含的是程序运行的机器码,因此可以直接被安卓运行时(ART,Android-Running-Time)运行。而dex文件中,如果是非热点代码(cold code),是交由java解释器(Interpreter)执行,如果是热点代码,则交由JIT实时编译后存放到JIT代码缓存(JIT CODE CACHE)中,下次再次访问该热点代码,则可以直接从cache中执行对应的机器码。并且,将热点代码放入热点代码文件,当终端设备进入空闲(IDLE)且充电状态时,将热点代码文件中的该热点代码执行AOT过程进行编译生成oat文件。
[0027]由于代码块的运行次数超过设定的次数才确定为热点代码,则对于新安装的应用程序而言,需要在终端设备中运行一段时间,终端设备才能根据应用程序中代码的运行次数确定热点代码。而对于终端设备的系统应用程序,在出厂前即在系统中安装,用户在使用新的终端设备时,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种热点代码处理方法,其特征在于,所述方法包括:获取目标终端设备的内核文件,所述内核文件中包括系统应用程序的热点配置文件,所述热点配置文件中包括所述系统应用程序的热点代码;目标终端设备在通过所述内核文件对系统应用程序进行安装时,将所述系统应用程序的热点配置文件中的热点代码编译为机器码,获得所述系统应用程序的热点编译文件;所述目标终端设备将所述热点编译文件存储。2.根据权利要求1所述的方法,其特征在于,所述获取目标终端设备的内核文件,包括:对所述目标终端设备的内核源码进行内核编译时,将指定目录下系统应用程序的热点配置文件存放到编译后的内核文件中。3.根据权利要求2所述的方法,其特征在于,所述对所述目标终端设备的内核源码进行内核编译时,将指定目录下系统应用程序的热点配置文件存放到编译后的内核文件中之前,还包括:从服务器获取所述目标终端设备中系统应用程序的热点配置文件,所述热点配置文件根据多个热点代码文件获得,所述多个热点代码文件来自于运行过所述系统应用程序的多个终端设备;将所述热点配置文件存放在所述指定目录下。4.根据权利要求3所述的方法,其特征在于,所述将所述热点配置文件存放在所述指定目录下之前,还包括:新建指定目录,用于存放所述系统应用程序的热点配置文件。5.根据权利要求2所述的方法,其特征在于,所述将指定目录下系统应用程序的热点配置文件存放到编译后的内核文件中,包括:将指定目录下系统应用程序的所述热点配置文件存放于内核文件中的目标文件,所述目标文件为所述内核文件中用于存放所述系统应用程序的热点代码的文件。6.根据权利要求5所述的方法,其特征在于,所述目标终端设备在通过所述内核文件对所述系统应用程序进行安装时,将所述系统应用程序的热点配置文件中的热点代码编译为机器码,包括:在通过所述内核文件进行系统安装时,对所述系统应用程序进行安装;对所述系统应用程序进行安装时,将所述目标文件中的热点代码编译为机器码。7.一种热点代码处理方法,其特征在于,所述方法包括:获取目标应用程序的多个热点代码文件,所述目标应用程序为目标终端设备中的系统应用程序,所述多个热点代码文件来自于运行过所述目标应...

【专利技术属性】
技术研发人员:帅朝春
申请(专利权)人:OPPO广东移动通信有限公司
类型:发明
国别省市:

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

1