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

技术编号:31507833 阅读:16 留言:0更新日期:2021-12-22 23:41
本发明专利技术公开了一种应用程序运行方法,计算设备及存储介质,并包括步骤:根据应用文件生成应用程序的可执行文件;根据应用程序的可执行文件,确定应用程序在内部存储器中存储的第一存储信息;根据第一区段信息和模块文件生成堆区段的第二区段信息;根据第二区段信息和第一存储信息生成第二存储信息;根据第二存储信息将应用程序的可执行文件和模块文件加载到内部存储器;根据内部存储器中的可执行文件和模块文件运行应用程序,并构建功能模块。本发明专利技术能够需要在应用程序中插入的模块文件需要获取和存储新数据,而所需要存储的新数据是随着应用运行时不断增加的,将模块文件插入到堆区段中。区段中。区段中。

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


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

技术介绍

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

技术实现思路

[0005]为此,本专利技术提供一种应用程序运行方法,以力图解决或者至少缓解上面存在的问题。
[0006]根据本专利技术的一个方面,提供一种应用程序运行方法,适于在计算设备中执行,计算设备中包括内部存储器和外部存储器,外部存储器中存储有应用文件和模块文件,方法包括步骤:根据应用文件生成应用程序的可执行文件;根据应用程序的可执行文件,确定应用程序在所述内部存储器中存储的第一存储信息,第一存储信息包括在内部存储器中所分配的堆区段的第一区段信息;根据第一区段信息和模块文件生成堆区段的第二区段信息;根据第二区段信息和第一存储信息生成第二存储信息;根据第二存储信息将应用程序的可执行文件和模块文件加载到内部存储器;根据内部存储器中的可执行文件和模块文件运行应用程序,并在应用程序中构建功能模块,以实现应用程序的附加功能。
[0007]可选地,在根据本专利技术的方法中,根据应用程序的可执行文件,确定应用程序在内部存储器中存储的第一存储信息包括步骤:根据可执行文件的数据大小,确定在内部存储器中分配的堆区段的第一区段大小,第一区段大小大于可执行文件的数据大小;根据第一区段大小生成堆区段的第一区段信息;根据第一区段信息生成第一存储信息。
[0008]可选地,在根据本专利技术的方法中,根据第一区段信息和模块文件生成第二区段信息包括步骤:根据可执行文件的数据大小和第一区段信息生成剩余空间大小;判断剩余空间大小是否大于模块文件的大小;若大于,则将第一区段大小作为第二区段大小;根据第二区段大小生成第二区段信息。
[0009]可选地,在根据本专利技术的方法中,根据可执行文件的数据大小和第一区段信息生成剩余空间大小包括步骤:将第一区段大小与可执行文件的数据大小相减,得到剩余空间
大小。
[0010]可选地,在根据本专利技术的方法中,根据第二存储信息将应用程序的可执行文件和模块文件加载到内部存储器包括步骤:根据第二存储信息在内部存储器中分配堆区段;获取所分配的堆区段的顶部指针和底部指针;根据底部指针将可执行文件加载到堆区段;根据顶部指针和模块文件确定模块文件存储的起始位置;根据模块文件存储的起始位置将模块文件加载到内部存储器。
[0011]可选地,在根据本专利技术的方法中,根据顶部指针和模块文件确定模块文件存储的起始位置包括步骤:将顶部指针与模块文件的大小相减得到模块文件存储的起始位置。
[0012]可选地,在根据本专利技术的方法中,在应用程序中构建功能模块包括步骤:根据分配的堆栈区段的顶部指针,确定模块文件读取的起始位置;根据模块文件读取的起始位置,调取模块文件,构建功能模块。
[0013]可选地,在根据本专利技术的方法中,还包括步骤:当模块文件需要新的存储空间时,计算模块文件的当前大小;根据顶部指针与计算的模块文件的当前大小重新确定模块文件存储的起始位置;根据重新确定的模块文件存储的起始位置将模块文件加载到内部存储器。
[0014]根据本专利技术的另一方面,提供了一种计算设备,包括:一个或多个处理器;存储器;以及一个或多个程序,其中一个或多个程序存储在存储器中并被配置为由一个或多个处理器执行,一个或多个程序包括用于执行根据本专利技术的一种应用程序运行方法的指令。
[0015]根据本专利技术的再一个方面,提供了一种存储一个或多个程序的计算机可读存储介质,一个或多个程序包括指令,该指令当由计算设备执行时,使得计算设备执行根据本专利技术的一种应用程序运行方法中的方法。
[0016]本专利技术中的应用程序运行方法,适于在计算设备中执行,计算设备包括外部存储器和内部存储器,外部存储器中存储有应用文件和模块文件。首先根据应用文件生成应用程序的可执行文件,在对应用进行加载时,需要将外部存储器中的应用文件进行处理得到二进制类型文件的可执行文件,才能将其存入内部存储器中。随后根据应用程序的可执行文件,确定应用程序在内部存储器中存储的第一存储信息,第一存储信息包括在内部存储器中所分配的堆区段的第一区段信息。在内部存储器中加载应用程序的可执行文件时,在内部存储器中划分有多个区段,在每个区段加载可执行文件的相应数据。内部存储器的其中一个区段为堆区段,若需要在应用程序中插入的模块文件需要获取和存储新数据,而所需要存储的新数据是随着应用运行时不断增加的,则需要将模块文件插入到堆区段中,因为堆区段可以向模块文件动态分配存储空间,其他数据区段一旦存储模块文件后无法更改为模块文件分配的存储空间,无法动态增加。为了将模块文件加载到堆区段,需要根据堆区段的第一区段信息和模块文件,重新生成堆区段的第二区段信息。再根据第二区段信息和第一存储信息生成第二存储信息,以便根据第二存储信息将应用程序的可执行文件和模块文件加载到内部存储器。在将应用程序的可执行文件和模块文件一起加载到内部存储器后,即可在应用程序中构建功能模块,以实现应用程序的附加功能。
附图说明
[0017]为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方
面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本专利技术公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
[0018]图1示出了根据本专利技术一个示范性实施例的外部存储器和内部存储器的结构示意图;
[0019]图2示出了根据本专利技术一个示范性实施例的计算设备200的结构框图;
[0020]图3示出了根据本专利技术一个示范性实施例的应用程序运行方法300的流程示意图;以及
[0021]图4示出了根据本专利技术一个示范性实施例的向堆区段插入模块文件的示意图。
具体实施方式
[0022]下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。相同的附图标记通常指代相同本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种应用程序运行方法,适于在计算设备中执行,所述计算设备中包括内部存储器和外部存储器,所述外部存储器中存储有应用文件和模块文件,所述方法包括步骤:根据所述应用文件生成应用程序的可执行文件;根据所述应用程序的可执行文件,确定应用程序在所述内部存储器中存储的第一存储信息,所述第一存储信息包括在所述内部存储器中所分配的堆区段的第一区段信息;根据所述第一区段信息和所述模块文件生成所述堆区段的第二区段信息;根据所述第二区段信息和所述第一存储信息生成第二存储信息;根据所述第二存储信息将所述应用程序的可执行文件和模块文件加载到所述内部存储器;根据所述内部存储器中的可执行文件和模块文件运行所述应用程序,并在所述应用程序中构建功能模块,以实现所述应用程序的附加功能。2.如权利要求1所述的方法,其中,所述根据所述应用程序的可执行文件,确定应用程序在所述内部存储器中存储的第一存储信息包括步骤:根据所述可执行文件的数据大小,确定在所述内部存储器中分配的堆区段的第一区段大小,所述第一区段大小大于所述可执行文件的数据大小;根据所述第一区段大小生成所述堆区段的第一区段信息;根据所述第一区段信息生成第一存储信息。3.如权利要求2所述的方法,其中,所述根据所述第一区段信息和所述模块文件生成第二区段信息包括步骤:根据所述可执行文件的数据大小和所述第一区段信息生成剩余空间大小;判断所述剩余空间大小是否大于所述模块文件的大小;若大于,则将所述第一区段大小作为第二区段大小;根据所述第二区段大小生成第二区段信息。4.如权利要求3所述的方法,其中,所述根据所述可执行文件的数据大小和所述第一区段信息生成剩余空间大小包括步骤:将所述第一区段大小与所述可执行文件的数据大小相减,得到所述剩余空间大小...

【专利技术属性】
技术研发人员:钟俊罗攀登唐蔺杨洋
申请(专利权)人:武汉深之度科技有限公司
类型:发明
国别省市:

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

1