控制方法及装置与流程

文档序号:23803248发布日期:2021-02-03 06:57阅读:57来源:国知局
控制方法及装置与流程

[0001]
本申请涉及控制技术领域,更具体地说,涉及一种控制方法及装置。


背景技术:

[0002]
目前,电子设备中具有的游戏等涉及复杂数据处理的应用日益增多。
[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]
该存储器用于存储处理器执行操作所需的程序。
[0032]
又一方面,本申请还提供了一种存储介质,用于存储程序,该程序被执行时,用于实现如上任意一项所述的控制方法。
[0033]
通过以上方案可知,在运行应用进程的过程中,如果应用进程向操作系统发送了进入暂停运行状态的通知,操作系统会控制电子设备从较高性能的第一运行模式切换到较低性能的第二运行模式,从而可以在应用进程进入暂停状态的情况下,降低电子设备的资源消耗。
附图说明
[0034]
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0035]
图1为本申请提供的一种控制方法一个实施例的流程示意图;
[0036]
图2为本申请提供的控制方法又一个实施例的流程示意图;
[0037]
图3为本申请提供的控制方法又一个实施例的流程示意图;
[0038]
图4为本申请提供的控制方法又一个实施例的流程示意图;
[0039]
图5为本申请的控制方法在一种应用场景中的实现流程示意图;
[0040]
图6为本申请的控制方法应用游戏场景中的一种实现原理示意图;
[0041]
图7为本申请提供的控制装置一个实施例的组成结构示意图;
[0042]
图8为本申请提供的电子设备一个实施例的组成架构示意图。
[0043]
说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的部分,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示的以外的顺序实施。
具体实施方式
[0044]
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0045]
请参阅图1,图1为本申请实施例提供的一种控制方法一个实施例的流程示意图,本实施例的方法可以应用于电子设备,该电子设备可以为手机、平板电脑或者个人计算机等。
[0046]
本实施例的方法可以包括:
[0047]
s101,在运行应用进程的过程中,电子设备的操作系统获得来自目标应用进程发送的进入暂停运行状态的第一通知。
[0048]
可以理解的是,该电子设备可以安装并运行至少一款应用的应用进程。该至少一款应用可以包括:至少一款能够实现人机交互的应用,该类应用运行所耗费的资源相对较多。实现人机交互的应用是指能够接收用户输入并能针对用户输入作为响应的应用。
[0049]
如,能够实现人机交互的应用可以向电子设备的显示单元中输出显示窗口,以使得用户可以通过应用界面向应用内输入信息。例如,实现人机交互的应用可以为游戏应用、虚拟现实应用、娱乐应用、办公应用等等。
[0050]
在应用进程运行过程中,如果用户离开电子设备,用户可能会通过操作电子设备来控制应用进程进入暂停状态,使得应用进程控制自身进入暂停运行状态。
[0051]
如,用户通过对电子设备的鼠标或者键盘等输入部件进行点击等预设操作,可以使得应用获得进入暂停指示,相应的,应用进程会进入暂停运行状态。
[0052]
又如,应用进程在检测到该应用进程对应的应用界面上的运行控制按键被触按,例如“暂停/运行”按键被用户触按,则应用进程会进入暂停运行状态。
[0053]
在一种可能的情况中,如果获得作用于电子设备的输入部件的第一预设操作,电子设备会通知该目标应用进程,以使该目标应用进程进入暂停运行状态并向操作系统发送进入暂停运行状态的第一通知。如,在电子设备的输入部件存在第一预设操作的情况下,电子设备中的基本输入输出系统(basic input output system,bios)或者嵌入式控制器(embed controller,ec)可以获得输入部件的第一预设操作对应的消息(或者称为输入事件),并通过bios或者ec将该消息通知给目标应用进程。该目标应用在获得该消息后,进入暂停运行状态,并向操作系统发送该进入暂停运行状态的第一通知。
[0054]
其中,电子设备的输入部件可以为电子设备的鼠标、键盘、触摸屏、遥控器或者控制手柄等。
[0055]
该第一预设操作用于使目标应用进程进入暂停运行状态。
[0056]
在该种情况中,该目标应用进程至少包括显示窗口当前位于电子设备的显示部件的最前端的应用进程。可以理解的是,在目标应用进程处于电子设备的显示部件的最前端的情况下,通过鼠标或者键盘等输入部件进行点击等第一预设操作,可以控制目标应用程序进入暂停运行状态。
[0057]
例如,在游戏应用中,在光标处于游戏应用的显示界面的基础上,用户通过点击鼠标便可以触发控制游戏暂停。
[0058]
在又一种可能的实现方式中,应用进程还可以根据用户的操作状态,监测是否满足进入暂停运行状态的条件。如果应用程序检测到当前满足进入暂停运行状态的条件,则自动进入暂停运行状态,并向操作系统发送进入暂停运行状态的第一通知。
[0059]
如,应用进程检测用户是否离开电子设备以及离开电子设备的时长,如果用户离开电子设备的时长超过设定时长,则确定满足进入暂停运行状态的条件,自然进入暂停运行状态,并向操作系统发送第一通知。
[0060]
又如,如果应用进程超过设定时长未检测到用户的输入操作,则进入暂停运行状态,并向操作系统发送第一通知。可以理解的是,由于应用进程运行需要占用内存以及一些硬件资源,因此,如果仅仅是应用进程控制自身处于暂停运行状态,实际上应用进程相关的一些子进程仍然在后台运行,只不过是用户未看到应用进程对应界面的更新。
[0061]
如,应用进程进入暂停运行状态可以是目标应用进程暂停该目标应用进程的显示窗口的更新;或者是,目标应用进程的全部子进程进入暂停状态。例如,目标应用进程暂停后,可以暂停更新显示窗口相关的子进程,以减少内存和硬件资源消耗;也可以是将全部子进程暂停,以减少硬件资源的消耗。当然,在实际应用中,也可能是在暂停目标应用进程的显示窗口的更新的同时,该目标应用进程的全部子进程进入暂停状态。
[0062]
由此可知,虽然用户控制应用进程进入暂停运行状态,但是应用进程的数据仍然可能在后台运行,仍然会占用并消耗电子设备的内存以及硬件等资源。
[0063]
为了减少应用进程进入暂停运行状态后所耗费的资源,本申请,应用进程可以向操作系统发送进入暂停运行状态的通知,使得操作系统可以获得该应用进程已进入暂停运行状态;或者是,通知操作系统控制该应用进程进入暂停运行状态。
[0064]
为了便于区分,将应用进程向操作系统发送进入暂停运行状态的通知称为第一通
知,并将发送该第一通知的应用进程称为目标应用进程。该目标应用进程属于电子设备运行的应用进程。
[0065]
s102,响应于该第一通知,控制电子设备从当前的第一运行模式调至第二运行模式。
[0066]
其中,电子设备在第一运行模式下的性能高于其在第二运行模式下的性能。
[0067]
可以理解的是,如目标应用进程向操作系统发送进入暂停运行状态的通知,则说明用户暂时不需要使用该应用,甚至有可能不需要使用电子设备。
[0068]
如,在目标应用程序至少包括显示窗口当前位于该电子设备的显示部件的最前端的应用进程的情况下,则目标应用程序向操作系统发送进入暂停运行状态的通知,则说明用户可能会由于离开电子设备等原因,则暂时离开电子设备的显示部件,因此,电子设备的操作系统可以控制调整电子设备处于相对较低性能的第二运行模式。
[0069]
在一种可能的实现方式中,在获得该第一通知以后,可以由该操作系统或预置驱动程序至少对与该目标应用进程相关的系统资源进行优化,以使得电子设备从当前的第一运行模式调至第二运行模式。
[0070]
其中,对目标应用进程相关的系统资源进行优化可以减少目标应用进程所占用的内存等系统资源。具体优化方式本申请不加限制。
[0071]
可见,在本申请中,在运行应用进程的过程中,如果应用进程向操作系统发送了进入暂停运行状态的通知,操作系统会控制电子设备从较高性能的第一运行模式切换到较低性能的第二运行模式,从而可以在应用进程进入暂停运行状态的情况下,降低电子设备的资源消耗。
[0072]
同时,通过降低电子设备的资源消耗,可以延长电池的使用时间和电子设备使用寿命。
[0073]
为了便于理解电子设备从当前的第一运行模式调至第二运行模式的具体实现,下面以通过至少对与该目标应用进程相关的系统资源进行优化为例进行说明。
[0074]
首先以一种系统资源优化方式为例说明,如参见图2,其示出了本申请一种控制方法又一个实施例的流程示意图,本实施例的方法可以包括:
[0075]
s201,在运行应用进程的过程中,如果获得作用于电子设备的输入部件的第一预设操作,通知该目标应用进程,以使其进入暂停运行状态并向该操作系统发送进入暂停运行状态的第一通知。
[0076]
其中,该第一预设操作用于使目标应用进程进入暂停运行状态,其中,所述目标应用进程至少包括显示窗口当前位于电子设备的显示部件的最前端的应用进程。
[0077]
为了便于理解,本实施例以获得第一通知的一种情况为例。但是可以理解的是,如果目标应用进程通过电子设备获得作用于目标应用进程的虚拟按键、语音输入或手势输入,该目标应用进程同样可以进入暂停运行状态,在该种情况下,该目标应用进程仍可以向操作系统发送该第一通知。本申请对于目标应用进程进入暂停运行状态的方式不加限制,在本申请中,无论通过哪种方式使得目标应用进程进入暂停运行状态,该目标应用进程均会向电子设备的操作系统发送该第一通知。
[0078]
s202,通过该操作系统或预置驱动程序对目标应用进程占用的硬件资源进行释放,并将相关的缓存资源和/或内存资源释放至预置存储位置。
[0079]
其中,该预置的驱动程序可以为操作系统内的驱动程序。
[0080]
如,可以通过将目标应用进程挂起等操作来实现将目标应用进程占用的硬件资源释放,并将相关缓存或内存资源释放到预置存储位置。
[0081]
可以理解的是,在该目标应用进程处于暂停运行状态后,通过对该目标应用进程占用的应用资源释放,并将该目标应用进程相关的缓存资源和/或内存资源释放到预置存储位置,可以减少由于目标应用进程仍在内存中运行所导致的硬件和内存资源的耗费。
[0082]
作为一种可选方式,本申请在释放目标应用进程的硬件资源以及内存或缓存等资源的同时,本申请还可以通过该操作系统或预置驱动程序将与目标应用进程不同的其他应用进程占用的硬件资源进行释放,并将该其他应用进程相关的缓存资源和/或内存资源释放至预置存储位置。
[0083]
其中,与该目标应用进程不同的其他应用进程可以是电子设备中前台运行的应用进程,也可以是后台运行的应用进程。
[0084]
可以理解的是,考虑到目标应用进程的显示窗口处于电子设备的显示部件的顶层等情况下,目标应用进程进入暂停运行状态,则用户可能会由于离开电子设备等原因而暂时不需要使用电子设备,因此,在该种情况下,将该目标应用进程与其他应用进程所占用的硬件以及内存等资源释放,可以进一步减少资源耗费。
[0085]
可以理解的是,图2是以至少对与该目标应用进程相关的系统资源进行优化的一种方式为例说明。在实际应用中,本申请对目标应用进程相关的系统资源进行优化还可以为:通过操作系统或预置驱动程序调低供该目标应用进程运行的硬件部件的运行参数。
[0086]
其中,硬件部件的运行参数可以影响到电子设备资源耗费的各种运行参数,如硬件部件可以为cpu以及内部存储器等等,相应的,运行参数可以运行该目标应用进程所需的cpu的运行速率,内部存储器的存储速度等等。
[0087]
如,调低硬件部件的运行参数可以通过向相应的硬件部件下发控制指令,以指示硬件部件调低自身的运行参数。当然,还可以有其他可能实现方式,对此不加限制。
[0088]
可以理解的是,在目标应用进程向操作系统发送了进入暂停运行状态的通知后,通过调低供该目标应用进程运行的硬件部件的运行参数,可以降低电子设备的性能,从而减少暂停目标应用进程后所需耗费的资源。
[0089]
作为一种可选方式,在电子设备的操作系统获得来自目标应用进程发送的进入暂停运行状态的第一通知后,对目标应用进程相关的系统资源进行优化还可以是:通过操作系统或预置驱动程序调低供该目标应用进程和与该目标应用进程不同的其他应用进程运行的硬件部件的运行参数。
[0090]
其中,供其他应用进程运行的硬件部件的运行参数以及调整方式可以参见上面介绍,在此不再赘述。
[0091]
可以理解的是,在本申请以上实施例中,在电子设备的操作系统获得第一通知之后,如果电子设备的操作系统获得来自目标应用进程发送的恢复运行状态的第二通知,控制电子设备从当前的第二运行模式调至第一运行模式。
[0092]
其中,第二通知实际上目标应用进程请求由暂停运行状态恢复到正常运行状态的通知。
[0093]
通过控制电子设备从第二运行模式调整到第一运行模式可以提高电子设备的性
能,以有利于目标应用进程的运行性能。
[0094]
如,目标应用进程发送恢复运行状态的第二通知可以是目标应用进程从暂停运行状态转换为恢复运行状态后,该目标应用进程向操作系统发送的通知,以使得操作系统控制恢复目标应用进程运行所需的相关系统资源进行恢复,使得系统资源恢复到优化前的状态,使得目标应用进程恢复到正常运行状态。
[0095]
与获得第一通知类似,在一种可能的实现方式中,如果获得作用于电子设备的输入部件的第二预设操作,通知该目标应用进程,以使该目标应用进程进入恢复运行状态并向该操作系统发送进入恢复运行状态的第二通知。
[0096]
其中,该第二预设操作用于使目标应用进程进入继续运行状态。
[0097]
如,第二预设操作可以是点击电子设备的鼠标或者键盘中的指定按键。在通过点击鼠标等预设操作触发目标应用进程进入暂停运行状态后,再次通过点击鼠标等预设操作可以触发目标应用进程从暂停运行状态恢复到正常的运行状态。
[0098]
其中,获得该第二预设操作以及通知该目标应用进程过程与电子设备获得第一预设操作并通知目标应用进程的过程相似,在此不再赘述。
[0099]
可以理解的是,如果目标应用进程获得作用于该目标应用进程的显示窗口上的虚拟按键的第二预设操作,为了使得目标应用进程能够恢复正常运行,该目标应用进程也会向该操作系统发送该第二通知。
[0100]
在又一种可能的实现方式中,目标应用进程也可以在检测到用户从离开到回到电子设备前,或者是检测到用户的输入操作,则目标应用进程进入恢复运行状态,并向操作系统发送第二通知。
[0101]
可以理解的是,目标应用进程进入暂停运行状态,该目标应用进程会暂停更新显示界面或者一些子进程的运行。如果目标应用进程确认检测到第二预设操作,目标应用程序会重新恢复更新显示界面或者暂停的子进程的运行,同时,为了保证目标应用程序的子进程可以在内存中正常运行,该目标应用进程会向操作系统发送该第二通知,以使得操作系统恢复目标应用程序运行相关的处理。
[0102]
可以理解的是,在操作系统获得第二通知之后,操作系统或者预置驱动程序控制电子设备从第二运行模式调整到第一运行模式可以为目标应用进程恢复到正常运行状态提供可能。进一步的,为了使得目标应用进程恢复到正常运行状态,在操作系统获得第二通知以后,还可以将目标应用进程相关的内存资源或者缓存资源回调到内存或者缓存中;或者是,调回供该目标应用进程运行的硬件部件的运行参数。
[0103]
为了便于理解,以一种可能的情况为例说明,如图3所示,其示出了本申请一种控制方法又一个实施例的流程示意图,本实施例的方法可以包括:
[0104]
s301,在运行应用进程的过程中,电子设备的操作系统获得来自目标应用进程发送的进入暂停运行状态的第一通知。
[0105]
s302,响应于该第一通知,通过该操作系统或预置驱动程序对目标应用进程占用的硬件资源进行释放,并将相关的缓存资源和/或内存资源释放至预置存储位置。
[0106]
如上步骤s301和s302可以参见前面实施例的相关介绍,在此不再赘述。
[0107]
s303,如果电子设备的操作系统获得来自目标应用进程发送的恢复运行状态的第二通知,通过操作系统或预置驱动程序至少将释放至预置存储位置的且与该目标应用进程
相关的缓存资源和/或内存资源加载至电子设备的缓存和/或内存。
[0108]
在本实施例中,在目标应用进程进入暂停运行状态并向操作系统发送第一通知后,操作系统或者预置驱动程序将该目标应用进程相关的缓存资源和内存资源中的一种或者两种释放至预置存储位置,以挂起该目标应用进程。在需要恢复该目标应用进程的正常运行状态的情况下,操作系统或者预置的驱动程序会将该预置存储位置中与该目标应用进程相关的缓存或内存资源重新加载到该缓存和/或内存,以使得该目标应用进程可以重新正常运行。
[0109]
其中,重新加载到缓存和/或内存中资源与释放前该目标应用进程相关的缓存和/或内存资源可以保持一致。
[0110]
如,如果目标应用进程挂起前,仅仅存在内存资源,则在挂起该目标应用进程时,将该目标应用进程的内存释放到该预置存储位置。相应的,在需要恢复该目标应用进程的正常运行时,可以将预置存储位置中该目标应用进程的内存资源加载到内存中。
[0111]
可以理解的是,在将目标应用进程相关的缓存和/或内存资源重新加载到缓存和/或内存资源后,还可以恢复该目标应用进程所占据的硬件资源。
[0112]
在一种可选方式中,如果在将目标应用进程相关的缓存资源和/或内存资源释放到预置存储位置的同时,也将该目标应用进程之外的其他应用进程相关的缓存资源和/或内存资源释放到预置存储位置,那么在执行该步骤s303的同时,还可以将该预置存储位置中与该目标应用进程之外的其他应用进程的缓存资源和/或内存资源重新加载到缓存和/或内存中。
[0113]
可以理解的是,在本实施例中,在获得第二通知之后,仍会控制电子设备从当前的第二运行模式调至第一运行模式。在此基础上,将目标应用进程对应的已释放的资源重新加载的内存或者缓存中,可以更为可靠的保证目标应用进程恢复到正常运行状态。
[0114]
下面以获得第二通知之后,电子设备调回供目标应用程序运行的硬件部件的运行参数为例说明,如图4所示,其示出了本申请一种控制方法又一个实施例的流程示意图,本实施例的方法可以包括:
[0115]
s401,在运行应用进程的过程中,如果电子设备的操作系统获得来自目标应用进程发送的进入暂停运行状态的第一通知,通过该操作系统或预置驱动程序调低供目标应用进程运行的硬件部件的运行参数。
[0116]
其中,获得第一通知的过程可以参见前面实施例的相关介绍,在此不再赘述。
[0117]
s402,如果获得作用于电子设备的输入部件的第二预设操作,通知该目标应用进程,以使该目标应用进程进入恢复运行状态并向该操作系统发送进入恢复运行状态的第二通知。
[0118]
为了便于理解,本实施例以通过作用于电子设备的输入部件的第二预设操作来触发目标应用进程进入恢复运行状态为例说明,但是对于前面提到的其他情况,本申请同样适用,对此不加限制。
[0119]
s403,响应于第二通知,通过操作系统或预置驱动程序调回供该目标应用进程运行的硬件部件的运行参数。
[0120]
在本实施例中,如果目标应用进程进入暂停运行状态,操作系统或者操作系统预置的驱动程序至少会调低该目标应用进程运行的硬件部件的运行参数,以减少目标应用进
程进入暂停运行状态下仍需耗费的资源。相应的,在需要恢复该目标应用进程的运行状态时,可以回调相应的硬件部件的运行参数,以满足目标应用进程的正常运行需求。
[0121]
在一种可选实现方式中,如果操作系统获得第一通知后,通过操作系统或者预置驱动程序调低供目标应用进程以及目标应用进程之外的其他应用进程运行的硬件部件的运行参数,那么在操作系统获得第二通知后,可以通过操作系统或者预置驱动程序调回供该目标应用进程及该其他应用进程运行的硬件部件的运行参数。
[0122]
需要说明的是,在本实施例中,在获得第二通知之后,仍可以控制电子设备从当前的第二运行模式调至第一运行模式。
[0123]
可以理解的是,在本申请以上任意一个实施例中,在操作系统获得该第一通知以后,如果预设时间段内未获得任何通知或获得作用于电子设备的第三预设操作,还可以控制电子设备从当前的第二运行模式调至第三运行模式。其中,该电子设备在第二运行模式下的功耗高于其在第三运行模式下的功耗。
[0124]
如,第二运行模式下可以暂停目标应用进程在内存中的运行,而如果长时间操作系统未接收到任何通知或者检测到任意操作,则说明用户较为时间未操作电子设备,在该种情况下,可以将电子设备调整为更低功能的休眠模式等。
[0125]
为了便于理解本申请的方案,下面结合一种应用场景进行介绍。以运行的应用进程包括游戏应用的游戏进程为例。如图5所示,其示出了本申请一种控制方法应用于游戏场景中的一种流程交互示意图,本实施例的方法应用于电子设备,该电子设备中运行有至少一个游戏应用,可以包括:
[0126]
s501,在运行游戏应用进程的过程中,如果获得作用于电子设备的输入部件的第一预设操作,通知该游戏应用进程。
[0127]
在本实施例中,游戏应用进程的显示窗口当前位于电子设备的显示部件的最前端。在该种情况下,电子设备检测到鼠标或者键盘等输入部件的第一预设操作之后,操作系统可以向游戏进程通知存在该第一预设操作。
[0128]
s502,游戏应用进程暂停显示窗口的更新。
[0129]
在本实施例中,游戏应用进程基于第一预设操作可以确认用户输入暂停游戏的指令,在该种情况下,游戏应用控制自身进入暂停状态,停止向显示窗口(游戏窗口)更新游戏数据。
[0130]
如,通过鼠标使得光标位于正在运行的游戏应用的游戏窗口,并通过鼠标点击,与生成用于触发游戏窗口暂停的第一预设操作。或者,通过触摸屏在运行中的游戏应用的游戏窗口上点击,以使得操作系统检测到该第一预设操作。
[0131]
s503,游戏应用进程向操作系统发送进入暂停运行状态的第一通知。
[0132]
游戏应用进程接收到用户输入的暂停指示的情况下,仅仅是游戏应用进程暂停游戏窗口的数据更新,操作系统无法获得游戏已经暂停,游戏应用进程仍运行在内存中,仍然需要耗费内存等资源。
[0133]
基于此,本申请中,游戏应用暂停显示显示窗口的更新的同时,还会向操作系统发送进入暂停运行状态的通知,以使得操作系统可以控制暂停内存中游戏应用进程的运行。
[0134]
s504,操作系统对游戏应用进程相关的内存资源释放至预置存储位置。
[0135]
如,操作系统可以通过对游戏应用进程进行挂起,以暂时将游戏应用进程从内存
中调离。
[0136]
可以理解的是,对于单机游戏而言,游戏运行过程中不涉及到与服务器侧的数据交互,在该种情况下,本申请可以将游戏应用进程相关的所有内存资源释放到预置存储位置,以使得游戏应用进程在内存中全部子进程均停止运行。
[0137]
如果游戏应用为在线网络游戏等,为了保证在游戏能够与服务器通信,以使得游戏从暂停状态恢复到正常状态后,仍能够与服务器的数据同步,本申请还可以将游戏应用进程中除了用于负责数据通信处理的进程之外的其他进程相关的内存资源释放,而仅仅在内存中运行负责数据通信处理的进程。
[0138]
如图6,本申请的方案应用于游戏场景中的一种实现原理示意图。
[0139]
在图6中,在游戏场景中,用于控制游戏操作的手柄或者键盘中设置有用于暂停以及恢复游戏的暂停按键。
[0140]
如果用户希望暂停游戏,则可以点击该手柄或者键盘中的该暂停按键,在该种情况中,电子设备的bios或者ec可以感应到该暂停按键被触按的事件并通知给游戏应用进程。
[0141]
游戏应用进程在获得该暂停按键被触按的通知后,暂停游戏应用进程的游戏窗口的更新。同时,该游戏应用进程会向操作系统发送进入暂停运行状态的第一通知。在该种情况下,该操作系统或者预置驱动程序(图中未示出)会控制挂起内存中运行的该游戏应用进程,即释放内存中该游戏应用进程的内存资源到预置存储位置。
[0142]
当然,本实施例中,操作系统获得该第一通知后,还可以是通过操作系统或者预置驱动程序调低供该游戏应用进程运行的硬件设备的硬件参数。如,可以降低cpu主频;还可以是释放内存中该游戏进程相关内存资源到预置位置的同时,降低cpu主频等相关硬件的硬件参数。
[0143]
s505,如果操作系统获得作用于电子设备的输入部件的第二预设操作,通知该目标应用进程。
[0144]
s506,游戏应用进程进入恢复运行状态,向该操作系统发送进入恢复运行状态的第二通知。
[0145]
其中,所述第二预设操作用于使目标应用进程进入继续运行状态。
[0146]
如,在通过鼠标点击游戏窗口,以使得游戏应用的游戏窗口暂停的情况下,还可以通过鼠标点击该游戏窗口,以使得操作系统检测到第二预设操作,并通知游戏应用,使得游戏应用中止执行暂停游戏窗口的更新的暂停操作,且为了使得游戏应用的相关进程仍能够在后台运行,还需要通知操作系统,以使得操作系统将挂起的游戏应用进程重新调回内存。
[0147]
s507,通过该操作系统或预置驱动程序至少将释放至预置存储位置的与所述目标应用进程相关的内存资源加载至电子设备的内存。
[0148]
经研究发现,与现有游戏应用检测到第一预测操作仅仅暂停游戏窗口的更新相比,通过本实施例的方案可以使得电子设备的cpu使用率从67%左右,降低为3%左右,大大降低了内存资源以及cpu等硬件资源的消耗。
[0149]
对应本申请的一种控制方法,本申请还提供了一种控制装置。
[0150]
如图7所示,其示出了本申请一种控制装置一个实施例的组成结构示意图,本实施例的装置可以包括:
[0151]
通知接收单元701,用于通过操作系统获得来自目标应用进程发送的进入暂停运行状态的第一通知;
[0152]
模式控制单元702,用于在运行应用进程过程中,如果电子设备的操作系统获得来自目标应用进程发送的进入暂停运行状态的第一通知,控制电子设备从当前的第一运行模式调至第二运行模式,其中,所述电子设备在第一运行模式下的性能高于其在第二运行模式下的性能。
[0153]
在一种可能的实现方式中,通知接收单元具体为,用于如果获得作用于电子设备的输入部件的第一预设操作,通知所述目标应用进程,以使所述目标应用进程进入暂停运行状态并向所述操作系统发送进入暂停运行状态的第一通知,所述第一预设操作用于使目标应用进程进入暂停运行状态,其中,所述目标应用进程至少包括显示窗口当前位于电子设备的显示部件的最前端的应用进程。
[0154]
可选的,目标应用进程进入暂停运行状态,包括:
[0155]
目标应用进程的全部子进程进入暂停运行状态;且/或,
[0156]
暂停目标应用进程的显示窗口的更新。
[0157]
在又一种可能的实现方式中,模式控制单元包括:
[0158]
资源优化单元,用于在运行应用进程过程中,如果电子设备的操作系统获得来自目标应用进程发送的进入暂停运行状态的第一通知,由所述操作系统或预置驱动程序至少对与所述目标应用进程相关的系统资源进行优化,以使得电子设备从当前的第一运行模式调至第二运行模式。
[0159]
在一种可选方式中,资源优化单元包括:
[0160]
第一资源释放单元,用于在运行应用进程过程中,如果电子设备的操作系统获得来自目标应用进程发送的进入暂停运行状态的第一通知,通过所述操作系统或预置驱动程序对所述目标应用进程占用的硬件资源进行释放,并将相关的缓存资源和/或内存资源释放至预置存储位置;
[0161]
或者,
[0162]
第二资源释放单元,用于运行应用进程过程中,如果电子设备的操作系统获得来自目标应用进程发送的进入暂停运行状态的第一通知,通过所述操作系统或预置驱动程序对所述目标应用进程和与所述目标应用进程不同的其他应用进程占用的硬件资源进行释放,并将相关的缓存资源和/或内存资源释放至预置存储位置;
[0163]
或者,
[0164]
第一参数调低单元,用于通过所述操作系统或预置驱动程序调低供所述目标应用进程运行的硬件部件的运行参数;
[0165]
或者,
[0166]
第二参数调低单元,用于通过所述操作系统或预置驱动程序调低供所述目标应用进程和与所述目标应用进程不同的其他应用进程运行的硬件部件的运行参数。
[0167]
在有一种可能的实现方式中,在以上任意一个装置实施例中还包括:
[0168]
模式回调单元,用于在获得所述第一通知以后,如果电子设备的操作系统获得来自目标应用进程发送的恢复运行状态的第二通知,控制电子设备从当前的第二运行模式调至第一运行模式。
[0169]
在一种可选方式中,模式回调单元包括:
[0170]
通知获得子单元,用于在获得所述第一通知以后,如果获得作用于电子设备的输入部件的第二预设操作,通知所述目标应用进程,以使所述目标应用进程进入恢复运行状态并向所述操作系统发送进入恢复运行状态的第二通知,其中,所述第二预设操作用于使目标应用进程进入继续运行状态;
[0171]
模式回调子单元,用于如操作系统获得第二通知,控制电子设备从当前的第二运行模式调至第一运行模式。
[0172]
在一种可选方式中,该装置还包括:
[0173]
第一模式回调子单元,用于在获得所述第一通知以后,如果电子设备的操作系统获得来自目标应用进程发送的恢复运行状态的第二通知,通过所述操作系统或预置驱动程序至少将释放至预置存储位置的与所述目标应用进程相关的缓存资源和/或内存资源加载至电子设备的内存和/或缓存;
[0174]
或,
[0175]
第二模式回调子单元,用于在获得所述第一通知以后,如果电子设备的操作系统获得来自目标应用进程发送的恢复运行状态的第二通知,通过所述操作系统或预置驱动程序调回供所述目标应用进程运行的硬件部件的运行参数。
[0176]
在又一种可能的实现方式中,本申请以上任意一个装置中,还包括:
[0177]
模式变动单元,用于在获得所述第一通知以后,如果预设时间段内未获得任何通知或获得作用于电子设备的第三预设操作,控制电子设备从当前的第二运行模式调至第三运行模式,其中,所述电子设备在第二运行模式下的功耗高于其在第三运行模式下的功耗。
[0178]
另一方面,本申请还提供了一种电子设备,如,该电子设备可以为前面提到的第二电子设备的具体结构。如图8所示,其示出了本申请一种电子设备的组成结构示意图,本实施例的电子设备至少包括:处理器801和存储器802。
[0179]
其中,该处理器用于执行如上任意一个实施例的控制方法。
[0180]
该存储器用于存储处理器执行操作所需的程序。
[0181]
该存储器还可以用于操作系统以及bios程序等。
[0182]
可以理解的是,该电子设备还包括其他部件,如图8所示,该电子设备还可以包括显示器803、电子设备连接的输入装置804以及通信总线805。该处理器、存储器和显示器以及输入装置之间可以通过通信总线相连。
[0183]
当然,电子设备还可以包括比如图8更多或者更少的部件,对此不加限制。
[0184]
又一方面,本申请还提供了一种存储介质,用于存储程序,该程序被执行时,用于实现如上任意一个实施例所述的控制方法。
[0185]
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。同时,本说明书中各实施例中记载的特征可以相互替换或者组合,使本领域专业技术人员能够实现或使用本申请。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0186]
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的
一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1