本申请公开了一种功能模块的加载方法、电子设备及计算机存储介质,方法包括:根据功能将嵌入式软件的功能模块划分为子功能模块;响应于子功能指令的触发,控制动态加载模块加载与子功能指令相匹配的子功能模块的代码;控制嵌入式软件的主体模块启动动态加载模块。本申请基于嵌入式系统,将嵌入式软件的功能模块进行划分以获得至少一个子功能模块,在用户选择执行某项功能时,动态加载模块仅加载嵌入式软件中对应于该功能的子功能模块的代码,并由主体模块启动动态加载模块以执行用户选择的功能,嵌入式软件的其他子功能模块的代码不会被加载。通过动态加载的方式实现了系统可以按需加载,降低了内存占用,提高内存利用率。提高内存利用率。提高内存利用率。
【技术实现步骤摘要】
一种功能模块的加载方法、电子设备及计算机存储介质
[0001]本申请涉及数据处理
,具体涉及一种功能模块的加载方法、电子设备及计算机存储介质。
技术介绍
[0002]嵌入式设备不同于日常的计算机,由于其特殊性常用在特殊的场景中,对硬件和软件都需要进行大量的定制和裁剪,以使得设备本身的成本最小化。因此,嵌入式设备一般都具有内存小、存储空间小、CPU(Central Processing Unit,中央处理器)主频低的特点。所以与常规的应用在智能终端中的软件开发相比,针对应用在嵌入式设备中的软件开发具有一定的限制。基于上述硬件特性,要求嵌入式软件需要“小型化”,主要包含三个方面,分别是存储空间占用少、内存占用小和软件轻量化。针对内存占用的方面,目前的解决方案具有将代码简化以实现内存占用的降低,具有工程量大、耗时且效率低下的缺点。
[0003]由于要考虑开发的成本,对于大部分的嵌入式设备来说常常是相同系列的设备型号均采用一套固定的软件,以此降低开发成本。因此,存在某些型号的设备实际上不具备某些功能,但是软件却自动加载了其中的某些功能的代码,进而产生了无意义的内存占用。另一方面,还会存在同一种型号的嵌入式设备,会由于高中低配内存的版本进而能够加载的功能代码不同,低配设备加载了仅应用在高配或中配设备中的功能代码,导致对低配设备造成了很大的内存占用。
技术实现思路
[0004]针对上述技术问题,本专利技术提供一种功能模块的加载方法、电子设备及计算机存储介质,基于嵌入式系统,让同一套软件的功能代码能够根据实际情况被动态加载,大幅降低不必要的内存占用,以此提高内存的最大利用率。
[0005]为实现上述目的,本专利技术提供了一种功能模块的加载方法,方法包括以下步骤:
[0006]根据功能将嵌入式软件的功能模块划分为子功能模块;
[0007]响应于子功能指令的触发,控制动态加载模块加载与所述子功能指令相匹配的子功能模块的代码;
[0008]控制嵌入式软件的主体模块启动所述动态加载模块。
[0009]可选地,所述响应于子功能指令的触发,控制动态加载模块加载与所述子功能指令相匹配的子功能模块的代码,包括:
[0010]所述子功能模块包括第一子功能模块与第二子功能模块,所述第一子功能模块和所述第二子功能模块的功能不同;
[0011]响应于第一子功能指令的触发,控制所述动态加载模块加载所述第一子功能指令相匹配的第一子功能模块的代码,并根据预设的条件判断所述动态加载模块是否停止加载与第二子功能指令相匹配的第二子功能模块的代码。
[0012]可选地,所述根据预设的条件判断所述动态加载模块是否停止加载与第二子功能
指令相匹配的第二子功能模块的代码,包括:
[0013]判断加载所述第一子功能模块的代码所需的运行内存是否大于预设的第一内存阈值;
[0014]若加载所述第一子功能模块的代码所需的运行内存大于所述第一内存阈值,则控制所述动态加载模块停止加载所述第二子功能模块的代码。
[0015]可选地,所述判断加载所述第一子功能模块的代码所需的运行内存是否大于预设的第一内存阈值,还包括:
[0016]若加载所述第一子功能模块的代码所需的运行内存小于所述第一内存阈值,则判断加载所述第一子功能模块的代码与加载所述第二子功能模块的代码所需的运行内存之和是否大于预设的第二内存阈值;
[0017]若加载所述第一子功能模块的代码与加载所述第二子功能模块的代码所需的运行内存之和大于所述第二内存阈值,则控制所述动态加载模块停止加载所述第二子功能模块的代码。
[0018]可选地,所述控制嵌入式软件的主体模块启动所述动态加载模块之后,包括:
[0019]在显示屏幕显示与所述子功能模块相匹配的显示界面。
[0020]可选地,所述在显示屏幕显示与所述子功能模块相匹配的显示界面,包括:
[0021]响应于第一子功能指令的触发,将与所述第二子功能模块相匹配的第二显示界面切换至与所述第一子功能模块相匹配的第一显示界面,并控制所述动态加载模块停止加载所述第二子功能模块的代码。
[0022]可选地,所述在显示屏幕显示与所述子功能模块相匹配的显示界面,还包括:
[0023]判断在预设的操作时长阈值之内是否不存在对所述显示界面的界面操作;
[0024]若在预设的时长阈值之内不存在对所述显示界面的界面操作,则控制所述动态加载模块停止加载所述子功能模块的代码。
[0025]可选地,所述判断在预设的操作时长阈值之内是否不存在对所述显示界面的界面操作,包括:
[0026]判断在预设的操作时长阈值之内是否存在点击所述显示屏幕、长按所述显示屏幕以及滑动所述显示屏幕中的至少一种的界面操作。
[0027]本专利技术还提供了一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述功能模块的加载方法的步骤。
[0028]本专利技术还提供了一种计算机存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序被所述处理器执行时实现如上所述功能模块的加载方法的步骤。
[0029]基于嵌入式系统,本专利技术根据实际实现的功能的不同将嵌入式软件的功能模块进行划分以获得至少一个子功能模块,在用户选择执行某项功能时,动态加载模块仅加载嵌入式软件中对应于该功能的子功能模块的代码,并由主体模块启动动态加载模块以执行用户选择的功能,嵌入式软件的其他子功能模块的代码不会被加载。通过动态加载的方式实现了系统可以按需加载,降低了内存占用,提高内存利用率。
附图说明
[0030]为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
[0031]图1为本申请一实施例提供的一种功能模块的加载方法的流程示意图;
[0032]图2为本申请一实施例提供的一种嵌入式系统的结构示意图;
[0033]图3为本申请一实施例提供的一种电子设备的结构示意图。
具体实施方式
[0034]下面将结合附图,对本专利技术的特定实施例进行详细描述。显然,所描述的实施例仅仅是本专利技术的一部分实施例,而不是全部的实施例。基于本专利技术的描述,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0035]以下由特定的具体实施例说明本申请的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本申请的其他优点及功效。
[0036]在本专利技术的描述中,除非另有明确的规定和限定,术语“第一”、“第二”、“第三”等仅仅是为了区别属性类似的元件,而不是指示或暗示相对的重要性或者特定的顺序。
[0037]此外,术语“本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种功能模块的加载方法,其特征在于,包括以下步骤:根据功能将嵌入式软件的功能模块划分为子功能模块;响应于子功能指令的触发,控制动态加载模块加载与所述子功能指令相匹配的子功能模块的代码;控制嵌入式软件的主体模块启动所述动态加载模块。2.根据权利要求1所述的方法,其特征在于,所述响应于子功能指令的触发,控制动态加载模块加载与所述子功能指令相匹配的子功能模块的代码,包括:所述子功能模块包括第一子功能模块与第二子功能模块,所述第一子功能模块和所述第二子功能模块的功能不同;响应于第一子功能指令的触发,控制所述动态加载模块加载所述第一子功能指令相匹配的第一子功能模块的代码,并根据预设的条件判断所述动态加载模块是否停止加载与第二子功能指令相匹配的第二子功能模块的代码。3.根据权利要求2所述的方法,其特征在于,所述根据预设的条件判断所述动态加载模块是否停止加载与第二子功能指令相匹配的第二子功能模块的代码,包括:判断加载所述第一子功能模块的代码所需的运行内存是否大于预设的第一内存阈值;若加载所述第一子功能模块的代码所需的运行内存大于所述第一内存阈值,则控制所述动态加载模块停止加载所述第二子功能模块的代码。4.根据权利要求3所述的方法,其特征在于,所述判断加载所述第一子功能模块的代码所需的运行内存是否大于预设的第一内存阈值,还包括:若加载所述第一子功能模块的代码所需的运行内存小于所述第一内存阈值,则判断加载所述第一子功能模块的代码与加载所述第二子功能模块的代码所需的运行内存之和是否大于预设的第二内存阈值;若加载所述第一子功能模块的代码与加载所述第二子功能模块的代码所需的...
【专利技术属性】
技术研发人员:傅东生,王连民,石挺星,
申请(专利权)人:深圳奇迹智慧网络有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。