一种应用程序运行方法、计算设备及存储介质技术

技术编号:31507834 阅读:15 留言:0更新日期:2021-12-22 23:41
本发明专利技术公开了一种应用程序运行方法,计算设备及存储介质,应用程序运行方法适于在计算设备中执行,并包括步骤:根据应用文件生成应用程序的可执行文件;根据应用程序的可执行文件,确定应用程序在内部存储器中存储的第一存储信息;根据第一区段信息和模块文件生成初始化数据区段的第二区段信息;根据第二区段信息和第一存储信息生成第二存储信息;根据第二存储信息将应用程序的可执行文件和模块文件加载到内部存储器;根据内部存储器中的可执行文件和模块文件运行应用程序,并在应用程序中构建功能模块。本发明专利技术能够需要在应用程序中插入的模块文件需要使用到一个新数据,而该数据需要被赋予初始值时,将模块文件插入到初始化数据区段中。据区段中。据区段中。

【技术实现步骤摘要】
一种应用程序运行方法、计算设备及存储介质


[0001]本专利技术涉及操作系统领域,特别涉及一种应用程序运行方法、计算设备及存储介质。

技术介绍

[0002]随着计算机技术的不断发展,开发出越来越多的应用程序。相应的,应用的数据也越来越多,数据结构也越来越复杂。在使用应用程序的过程中,有时需要在应用程序的基础上实现额外的附加功能,或了解应用的运行情况等。
[0003]在现有技术中,应用程序在加载时,经过编译等一些列操作得到二进制文件,无法对该二进制文件进行处理。因此,要实现应用程序的附加功能必须要在应用程序还未编译时,修改其源代码,向其中添加所需要的功能,之后再重新进行编译。这种方式不仅较为复杂,并且不适用于一些特殊场景,如没有源代码文件或者无法对源代码进行修改的时候,就无法实现在应用程序中添加附加功能。
[0004]为此,需要一种新的应用程序运行方法。

技术实现思路

[0005]为此,本专利技术提供一种应用程序运行方法,以力图解决或者至少缓解上面存在的问题。
[0006]根据本专利技术的一个方面,提供一种应用程序运行方法,适于在计算设备中执行,计算设备中包括内部存储器和外部存储器,外部存储器中存储有应用文件和模块文件,方法包括步骤:根据应用文件生成应用程序的可执行文件;根据应用程序的可执行文件,确定应用程序在内部存储器中存储的第一存储信息,第一存储信息包括在内部存储器中所分配的初始化数据区段的第一区段信息;根据第一区段信息和模块文件生成初始化数据区段的第二区段信息;根据第二区段信息和第一存储信息生成第二存储信息;根据第二存储信息将应用程序的可执行文件和模块文件加载到内部存储器;根据内部存储器中的可执行文件和模块文件运行应用程序,并在应用程序中构建功能模块,以实现应用程序的附加功能。
[0007]可选地,在根据本专利技术的方法中,根据应用程序的可执行文件,确定应用程序在内部存储器中存储的第一存储信息包括步骤:根据可执行文件,确定在内部存储器中分配的初始化数据区段的第一区段大小和第一对齐信息;根据第一区段大小和第一对齐信息生成初始化数据区段的第一区段信息;根据第一区段信息生成第一存储信息。
[0008]可选地,在根据本专利技术的方法中,根据第一区段信息和所述模块文件生成第二区段信息包括步骤:根据第一区段大小和模块文件生成第二区段大小;根据第一对齐信息和模块文件生成第二对齐信息;根据第二区段大小和第二对齐信息生成未初始化数据区段的预设区段信息;确定模块文件根据所生成的预设区段信息在内部存储器中存储时是否跨页边界存储;若模块文件不跨页边界存储,则将预设区段信息作为第二区段信息。
[0009]可选地,在根据本专利技术的方法中,若模块文件跨页边界存储,则在模块文件的存储
位置之前添加占位区段,使模块文件不跨页边界存储;根据所添加的占位区段和预设区段信息生成第二区段信息。
[0010]可选地,在根据本专利技术的方法中,根据第一区段大小和模块文件生成第二区段大小包括步骤:将第一区段大小和模块文件的文件大小相加,得到第二区段大小。
[0011]可选地,在根据本专利技术的方法中,根据第一区段大小和模块文件生成第二区段大小包括步骤:将第一区段大小和模块文件的文件大小相加,得到第二区段大小。
[0012]可选地,在根据本专利技术的方法中,根据第二存储信息将应用程序的可执行文件和模块文件加载到内部存储器包括步骤:根据第二存储信息在内部存储器中分配初始化数据区段;根据第二存储信息将可执行文件加载到内部存储器;根据第二存储信息的初始化数据区段的第二区段信息,将模块文件加载到初始化数据区段。
[0013]可选地,在根据本专利技术的方法中,根据第二存储信息在内部存储器中分配初始化数据区段包括步骤:根据第二存储信息确定模块文件存储的起始地址;在模块文件存储的起始地址添加初始化标识,以便根据初始化标识插入模块文件。
[0014]可选地,在根据本专利技术的方法中,在模块文件存储的起始位置添加初始化标识包括步骤:构建数据地址表,数据地址表包括数据地址行;在数据地址行中添加内部存储器存储模块文件的内存页首地址、模块文件存储的起始位地址和区段类型,区段类型为初始化数据区段。
[0015]可选地,在根据本专利技术的方法中,计算设备中还包括处理器,根据第二存储信息将可执行文件加载到内部存储器包括步骤:当处理器由于初始化数据区段未存储相关数据而产生缺页异常时,将可执行文件的初始化数据写入初始化数据区段。
[0016]可选地,在根据本专利技术的方法中,根据第二存储信息的初始化数据区段的第二区段信息,将模块文件加载到初始化数据区段包括步骤:根据模块文件在内部存储器中存储的内存页首地址,从数据地址表中查询是否有包括内存页首地址的数据地址行;若查询到包括内存页首地址的数据地址行,则确定数据地址行的区段类型;若区段类型为初始化数据区段,则对模块文件的数据进行初始化,得到模块文件的初始化数据;根据模块文件存储的起始地址,将模块文件的初始化数据在初始化数据区段中进行存储。
[0017]可选地,在根据本专利技术的方法中,将模块文件的初始化数据在初始化数据区段中进行存储包括步骤:根据第二区段信息的第二对齐方式确定模块对齐方式;根据模块对齐方式在初始化数据区段中存储模块文件的初始化数据。
[0018]可选地,在根据本专利技术的方法中,将模块文件的初始化数据在初始化数据区段中进行存储包括步骤:根据第二区段信息的第二对齐方式确定模块对齐方式;根据模块对齐方式在初始化数据区段中存储模块文件的初始化数据。
[0019]根据本专利技术的另一方面,提供了一种计算设备,包括:一个或多个处理器;存储器;以及一个或多个程序,其中一个或多个程序存储在存储器中并被配置为由一个或多个处理器执行,一个或多个程序包括用于执行根据本专利技术的一种应用程序运行方法的指令。
[0020]根据本专利技术的再一个方面,提供了一种存储一个或多个程序的计算机可读存储介质,一个或多个程序包括指令,该指令当由计算设备执行时,使得计算设备执行根据本专利技术的一种应用程序运行方法中的方法。
[0021]本专利技术中的应用程序运行方法,适于在计算设备中执行,计算设备包括外部存储
器和内部存储器,外部存储器中存储有应用文件和模块文件。首先根据应用文件生成应用程序的可执行文件,在对应用进行加载时,需要将外部存储器中的应用文件进行处理得到二进制类型文件的可执行文件,才能将其存入内部存储器中。随后根据应用程序的可执行文件,确定应用程序在内部存储器中存储的第一存储信息,第一存储信息包括在内部存储器中所分配的初始化数据区段的第一区段信息。在内部存储器中加载应用程序的可执行文件时,在内部存储器中划分有多个区段,在每个区段加载可执行文件的相应数据。内部存储器的其中一个区段为初始化数据区段,若需要在应用程序中插入的模块文件需要使用到一个新数据,而该数据需要被赋予初始值,则需要将新数据插入到初始化数据区段中。为了将模块文件加载到初始化数据区段,需要根据初始化数据区段的第一区段信息和模块文件,重新本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种应用程序运行方法,适于在计算设备中执行,所述计算设备中包括内部存储器和外部存储器,所述外部存储器中存储有应用文件和模块文件,所述方法包括步骤:根据所述应用文件生成应用程序的可执行文件;根据所述应用程序的可执行文件,确定应用程序在所述内部存储器中存储的第一存储信息,所述第一存储信息包括在所述内部存储器中所分配的初始化数据区段的第一区段信息;根据所述第一区段信息和所述模块文件生成所述初始化数据区段的第二区段信息;根据所述第二区段信息和所述第一存储信息生成第二存储信息;根据所述第二存储信息将所述应用程序的可执行文件和模块文件加载到所述内部存储器;根据所述内部存储器中的可执行文件和模块文件运行所述应用程序,并在所述应用程序中构建功能模块,以实现所述应用程序的附加功能。2.如权利要求1所述的方法,其中,所述根据所述应用程序的可执行文件,确定应用程序在所述内部存储器中存储的第一存储信息包括步骤:根据所述可执行文件,确定在所述内部存储器中分配的初始化数据区段的第一区段大小和第一对齐信息;根据所述第一区段大小和第一对齐信息生成所述初始化数据区段的第一区段信息;根据所述第一区段信息生成第一存储信息。3.如权利要求2所述的方法,其中,所述根据所述第一区段信息和所述模块文件生成第二区段信息包括步骤:根据所述第一区段大小和所述模块文件生成第二区段大小;根据所述第一对齐信息和所述模块文件生成第二对齐信息;根据所述第二区段大小和第二对齐信息生成所述未初始化数据区段的预设区段信息;确定所述模块文件根据所生成的预设区段信息在所述内部存储器中存储时是否跨页边界存储;若所述模块文件不跨页边界存储,则将所述预设区段信息作为第二区段信息。4.如权利要求3所述的方法,其中,所述方法还包括步骤:若所述模块文件跨页边界存储,则在所述模块文件的存储位置之前添加占位区段,使所述模块...

【专利技术属性】
技术研发人员:钟俊江峰柏鑫
申请(专利权)人:武汉深之度科技有限公司
类型:发明
国别省市:

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

1