具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、***、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
本申请实施例所涉及到的移动终端可以包括各种具有无线通信功能的手持设备、车载设备、可穿戴设备、计算设备或连接到无线调制解调器的其他处理设备,以及各种形式的用户设备(User Equipment,UE),移动台(Mobile Station,MS),终端设备(terminaldevice)等等。为方便描述,上面提到的设备统称为移动终端。本发明实施例所涉及到的操作***是对硬件资源进行统一管理,并向用户提供业务接口的软件***。
如图1A所示,目前智能手机等移动终端一般设置有程序运行空间,该程序运行空间包括用户空间和操作***空间,其中,用户空间运行有一个或多个应用程序,该一个或多个应用程序为移动终端安装的第三方应用程序,操作***空间运行有移动终端的操作***。该移动终端具体可以运行安卓Android***、苹果公司开发的移动操作***iOS等,此处不做唯一限定。如图1B所示,以上述移动终端运行有Android***为例,对应的用户空间包括该Android***中的应用层(Applications),操作***空间可以包括该Android***中的应用程序框架层(Application Framework)、***运行库层(包括***运行库层Libraries和Android运行时Android Runtime)、Linux内核层(Linux Kernel)。其中,应用层上包括各类与用户直接交互的应用程序,或由Java语言编写的运行于后台的服务程序。例如,智能手机上实现的常见基本功能的程序,诸如短消息业务(Short Messaging Service,SMS)短信,电话拨号,图片浏览器,日历,游戏,地图,万维网(World Wide Web,Web)浏览器等程序,以及开发人员开发的其他应用程序。应用程序框架层提供开发Android应用程序所需的一系列类库,能够用于重用组件,也可以通过继承实现个性化的扩展。***运行库层是应用程序框架的支撑,为Android***中的各个组件提供服务。***运行库层由***类库和Android运行时构成。Android运行时包含核心库和Dalvik虚拟机两部分。Linux内核层用于实现硬件设备驱动,进程和内存管理,网络协议栈,电源管理,无线通信等核心功能。
上述第三方应用程序所创建的进程一开始是运行在用户空间的,当它要执行网络发送数据、读取磁盘资源等动作时,必须通过调用write、send等由操作***提供的标准接口函数来完成,即由CPU调用操作***空间的代码来完成用户的请求操作。可见,第三方应用程序想要调用操作***提供的功能,只能调用其提供的标准接口函数。同时,操作***不知道第三方应用程序具体在执行哪些功能,目标应用程序也不能命令操作***执行特殊的操作,这两者是相互独立的,这使得操作***无法区分目标应用程序的内部运行场景,只能使用一套标准的参数去适配,无法针对目标应用程序的内部运行场景进行针对性的性能优化。
针对上述情况,本申请实施例提出一种针对移动终端的目标应用程序的资源配置方法,该方法中,操作***接收正在运行的目标应用程序发送的场景数据包,场景数据包包括目标应用程序的应用类型标识和场景标识;操作***根据应用类型标识和场景标识确定目标应用程序的性能提升策略;操作***按照性能提升策略调整目标应用程序的***资源的分配。实现由操作***针对目标应用程序在运行过程中的内部运行场景的性能进行优化,有利于提高移动终端控制目标应用程序进行性能优化的实时性和精确度。
下面结合附图对本申请实施例进行介绍。
请参阅图2,图2是本申请实施例提供了一种资源配置方法的流程示意图,应用于移动终端,上述移动终端上运行有操作***以及一个或多个应用程序,如图所示,本资源配置方法包括:
S201,上述操作***接收正在运行的上述目标应用程序发送的场景数据包,上述场景数据包包括目标应用程序的应用类型标识和场景标识。
其中,目标应用程序是指安装在移动终端的用户空间的第三方应用程序,该第三方应用程序例如可以是即时通讯类应用、游戏类应用等,该第三方应用程序可以由用户安装,也可以由开发人员在移动终端出厂前预装,此处不做唯一限定。
其中,场景数据包可以包括正在运行的目标应用程序的应用类型标识和场景标识,还可以包括以下至少一种:关键性能参数、数据格式标识、启动信息、资源更新信息、账号登陆信息、界面类型信息、目标应用程序的行为信息(如数据发送行为信息、数据接收行为信息等)等,此处不做唯一限定。此外,场景数据包的格式例如可以是Java脚本对象标记(JavaScript Object Notation,JSON)、协议缓冲区(ProtocolBuffer,Protobuf)、自定义格式等数据传输格式,此处不做唯一限定。
在一个可能的示例中,上述目标应用程序和上述操作***之间包括预设数据通道;上述操作***接收正在运行的上述目标应用程序发送的场景数据包,包括:上述操作***接收通过上述预设数据通道接收上述正在运行的上述目标应用程序发送的场景数据包。
其中,上述预设数据通道为目标应用程序正在运行时,目标应用程序与操作***之间建立的有效的数据传输链路,目标应用程序不在运行后,该数据传输链路会被清除。
在本可能的示例中,上述目标应用程序包括数据连接模块,上述操作***包括数据连接管理模块;上述方法还包括:上述数据连接管理模块与上述数据连接模块建立上述预设数据通道。
在本可能的示例中,目标应用程序还可以包括数据收集模块、数据整理模块、优先级管理模块、数据接收模块,其中,数据接收模块用于收集目标应用程序在运行时的关键信息;数据整理模块用于整理收集到的关键信息,如合并重复的信息,删除冗余的信息等;优先级管理模块用于根据关键信息的重要程度对收集到的关键信息进行分类,优先处理优先级高的关键信息,过滤优先级较低的关键信息,或者在数据包生成过程中减少优先级较低的关键信息的使用;数据接收模块用于接收并解析操作***发送的数据,并将其传递给目标应用程序内部。
S202,上述操作***根据上述应用类型标识和上述场景标识确定上述目标应用程序的性能提升策略。
其中,性能提升策略是指用于提高上述正在运行的目标应用程序的运行性能的资源配置策略,如CPU资源调整策略、GPU资源调整策略、内存带宽资源调整策略、磁盘资源调整策略、网络资源调整策略等,此处不做唯一限定。
S203,上述操作***按照上述性能提升策略调整上述目标应用程序的***资源的分配。
在一个可能的示例中,上述资源包括上述移动终端的以下资源中的至少一种:CPU资源、GPU资源、内存带宽资源、磁盘资源、网络资源。其中,网络资源包括移动终端的数据网络的网络资源、无线保真Wi-Fi网络的网络资源、蓝牙模块的控制参数资源等。
其中,在上述***资源为CPU资源、GPU资源内存带宽资源、磁盘资源中的至少一种时,操作***可以通过直连通信方式与操作***空间的内核层通信,调整该***资源的配置,直连通信方式是指通过抽象的应用程序编程接口(Application ProgrammingInterface,API)直接通信。
其中,在上述***资源为网络资源时,操作***可以通过间接通信方式与操作***空间的内核层通信,调整该***资源的配置,间接通信方式是指通过调用代理服务来间接通信,如网络资源中的Wi-Fi子***或者数据网络子***与操作***不运行在同一个***内,需要通过一些代理的方式,间接访问这些***资源,操作***中提供了Wi-Fi的代理服务,通过调用该代理服务的接口来间接和Wi-Fi子***通信。
可以看出,本申请实施例中,移动终端的操作***空间的操作***首先接收正在运行的目标应用程序发送的场景数据包,场景数据包包括正在运行的目标应用程序的应用类型标识和场景标识,其次,操作***根据应用类型标识和场景标识确定正在运行的目标应用程序的性能提升策略,最后,操作***按照性能提升策略调整正在运行的目标应用程序的***资源的分配。由于场景数据包包括目标应用程序的应用类型标识和场景标识,且场景数据包由正在运行的目标应用程序发送,操作***能够根据应用类型标识准确确定适用的策略模块,进而调用该策略模块根据场景标识精细化确定目标应用程序的当前的内部运行场景的性能提升策略,并由操作***按照该性能提升策略实时调整目标应用程序的***资源的配置,实现了由操作***对运行过程中的目标应用程序进行实时的性能优化,有利于提高移动终端控制目标应用程序进行性能优化的实时性和精确度。
在一个可能的示例中,上述操作***包括管理模块和多个策略模块,每个策略模块用于确定相同应用类型的至少一个应用程序中的应用程序的性能提升策略;上述操作***根据上述应用类型标识和上述场景标识确定上述目标应用程序的性能提升策略,包括:上述管理模块确定上述场景数据包中的上述应用类型标识和上述场景标识;上述管理模块确定上述多个策略模块中与上述应用类型标识对应的策略模块;上述策略模块确定上述场景标识对应的性能提升策略为上述目标应用程序的性能提升策略。
其中,多个策略模块中的每个策略模块可适用于同一种类型的应用,如第一策略模块适用于游戏类应用,第二策略模块适用于即时通讯类应用等。
其中,上述管理模块确定上述多个策略模块中与上述应用类型标识对应的策略模块,包括:上述管理模块以应用类型标识为查询标识,查询预设的策略模块和应用类型标识之间的映射关系,确定场景数据包中的应用类型标识对应的策略模块。
可见,本示例中,通过划分多个策略模块能够实现对不同类型应用的精细化控制,且移动终端无需同时加载全部策略模块,仅需要加载移动终端前台运行的目标应用程序对应的策略模块,有利于降低资源占用,提高资源利用率和控制效率。
在一个可能的示例中,上述场景数据包包括数据格式标识;上述管理模块确定上述场景数据包中的上述应用类型标识和上述场景标识,包括:上述管理模块按照数据格式标识所指示的数据格式解析上述场景数据包以确定上述应用类型标识和上述场景标识。
其中,数据格式标识例如可以是上述JSON、Protobuf等,此处不做限定。
可见,本示例中,由于数据格式标识能够使得操作***在接收到场景数据包后,快速识别出该场景数据包所使用的数据传输格式,从而实时解析该场景数据包中的应用类型标识和场景标识,降低处理时延,有利于提高数据处理效率,提高针对运行中的目标应用程序进行资源调整的实时性。
在一个可能的示例中,上述操作***包括管理模块和策略模块;上述操作***根据上述应用类型标识和上述场景标识确定上述目标应用程序的性能提升策略,包括:上述策略模块获取上述场景数据包中的上述应用类型标识和上述场景标识;上述策略模块确定上述应用类型标识对应的性能提升策略包;上述策略模块确定上述性能提升策略包中与上述场景标识对应的性能提升策略为上述目标应用程序的性能提升策略。
可见,本示例中,由于操作***包括管理模块和策略模块,该管理模块和策略模块配合起来能够确认目标应用程序的性能提升策略,即采用模块化方式来完成性能提升策略的确定过程,每个模块都执行相应划分的功能,单个模块出错时不会影响另外一个模块的状态,有利于提高移动终端控制目标应用程序进行运行优化的稳定性。
在一个可能的示例中,上述场景数据包包括数据格式标识;上述策略模块获取上述场景数据包中的上述应用类型标识和上述场景标识,包括:
上述管理模块按照上述数据格式标识所指示的数据格式解析上述场景数据包,确定上述目标应用程序的上述应用类型标识和上述场景标识,并向上述策略模块发送上述应用类型标识和上述场景标识;可见,由管理模块对场景数据包进行统一处理,策略模块仅需要直接接收管理模块的处理结果,如此设置有利于轻量化和精细化策略模块的功能,便于对策略模块进行维护、添加等操作,提高***稳定性。
或者,
上述管理模块向上述策略模块发送上述场景数据包;上述策略模块按照上述数据格式标识所指示的数据格式解析上述场景数据包,确定上述目标应用程序的上述应用类型标识和上述场景标识;其中,上述管理模块向上述策略模块发送上述场景数据包之后,可以进入休眠状态以降低功耗;可见,管理模块只对场景数据包进行传输处理,直接将其传递给策略模块进行处理,从而策略模块在传递场景数据包后无需持续启用,可以快速休眠,有利于降低操作***的整体功耗,提高效率。
或者,
上述管理模块确定上述策略模块关联的第一数据格式,在检测到上述第一数据格式和上述场景数据包的第二数据格式不一致时,转换上述场景数据包的第二数据格式为上述第一数据格式,并向上述策略模块发送上述转换后的上述场景数据包;上述策略模块按照上述第一数据格式解析上述转换后的上述场景数据包,确定上述目标应用程序的上述应用类型标识和上述场景标识。可见,管理模块能够将策略模块无法识别的场景数据包转换成策略模块可以识别的场景数据包,并传递给策略模块进行处理,避免因格式差异无法正确确定出应用类型标识和场景标识,有利于提高移动终端为运行中的目标应用程序进行准确资源配置的成功率。
在一个可能的示例中,上述策略模块确定上述应用类型标识对应的性能提升策略包,包括:上述策略模块以上述应用类型标识为查询标识,查询预设的性能提升策略包与应用类型标识之间的映射关系,确定上述应用类型标识对应的性能提升策略包;
上述策略模块确定上述性能提升策略包中与上述场景标识对应的性能提升策略为上述目标应用程序的性能提升策略,包括:上述策略模块以上述场景标识为查询标识,查询预设的上述性能提升策略包中的性能提升策略与场景标识之间的映射关系,确定上述场景标识对应的性能提升策略为上述目标应用程序的性能提升策略。
其中,一个性能提升策略包可以包括不同场景标识对应的不同的性能提升策略,如以游戏类型应用为例,应用类型标识对应的性能提升策略包可以包括游戏应用运行过程中的登陆过程场景对应的性能提升策略,或者游戏应用运行过程中主界面场景对应的性能提升策略等,此处不做唯一限定。
可见,本示例中,应用类型标识用于确定对应的性能提升策略包,场景标识用于进一步精细化定位到具体的适配该场景的性能提升策略,仅需要通过简单的查找算法即可根据应用类型标识和场景标识快速定位到具体的性能提升策略,延时低,准确度高,有利于提高移动终端控制目标应用程序进行运行优化的实时性和准确度。
与上述图2所示的实施例一致的,请参阅图3,图3是本申请实施例提供的一种资源配置方法的流程示意图,应用于移动终端,上述移动终端上运行有操作***以及一个或多个应用程序,上述操作***包括管理模块和多个策略模块,每个策略模块用于确定相同应用类型的至少一个应用程序中的应用程序的性能提升策略。如图所示,本资源配置方法包括:
S301,上述操作***接收正在运行的上述目标应用程序发送的场景数据包,上述场景数据包包括目标应用程序的应用类型标识和场景标识。
其中,上述操作***包括管理模块和多个策略模块,每个策略模块用于确定相同应用类型的至少一个应用程序中的应用程序的性能提升策略。
S302,上述管理模块按照上述数据格式标识所指示的数据格式解析上述场景数据包以确定上述应用类型标识和上述场景标识。
S303,上述管理模块确定上述多个策略模块中与上述应用类型标识对应的策略模块。
S304,上述策略模块确定上述场景标识对应的性能提升策略为上述目标应用程序的性能提升策略。
S305,上述操作***按照上述性能提升策略调整上述目标应用程序的***资源的分配。
可以看出,本申请实施例中,移动终端的操作***空间的操作***首先接收正在运行的目标应用程序发送的场景数据包,场景数据包包括正在运行的目标应用程序的应用类型标识和场景标识,其次,操作***根据应用类型标识和场景标识确定正在运行的目标应用程序的性能提升策略,最后,操作***按照性能提升策略调整正在运行的目标应用程序的***资源的分配。由于场景数据包包括目标应用程序的应用类型标识和场景标识,且场景数据包由正在运行的目标应用程序发送,操作***能够根据应用类型标识准确确定适用的策略模块,进而调用该策略模块根据场景标识精细化确定目标应用程序的当前的内部运行场景的性能提升策略,并由操作***按照该性能提升策略实时调整目标应用程序的***资源的配置,实现了由操作***对运行过程中的目标应用程序进行实时的性能优化,有利于提高移动终端控制目标应用程序进行性能优化的实时性和精确度。
此外,通过划分多个策略模块能够实现对不同类型应用的精细化控制,且移动终端无需同时加载全部策略模块,仅需要加载移动终端前台运行的目标应用程序对应的策略模块,有利于降低移动终端的资源占用,提高资源利用率和控制效率。
此外,由于数据格式标识能够使得操作***在接收到场景数据包后,快速识别出该场景数据包所使用的数据传输格式,从而实时解析该场景数据包中的应用类型标识和场景标识,降低处理时延,有利于提高数据处理效率,提高针对运行中的目标应用程序进行资源调整的实时性。
与上述图2所示的实施例一致的,请参阅图4,图4是本申请实施例提供的一种资源配置方法的流程示意图,应用于移动终端,上述移动终端上运行有操作***和一个或多个目标应用程序,上述操作***包括管理模块、多个策略模块和数据连接管理模块,每个策略模块用于确定相同应用类型的至少一个应用程序中的应用程序的性能提升策略,上述目标应用程序包括数据连接模块,上述场景数据包包括目标应用程序的应用类型标识和场景标识,上述场景数据包包括数据格式标识。如图所示,本资源配置方法包括:
S401,上述数据连接管理模块与上述数据连接模块建立数据通道。
S402,上述数据连接管理模块通过上述数据通道接收上述目标应用程序发送的场景数据包。
S403,上述管理模块按照上述数据格式标识所指示的数据格式解析上述场景数据包,确定上述目标应用程序的上述应用类型标识和上述场景标识。
S404,上述管理模块确定上述多个策略模块中与上述应用类型标识对应的策略模块,并向上述策略模块发送上述应用类型标识和上述场景标识。
S405,上述策略模块以上述应用类型标识为查询标识,查询预设的性能提升策略包与应用类型标识之间的映射关系,确定上述应用类型标识对应的性能提升策略包。
S406,上述策略模块以上述场景标识为查询标识,查询预设的上述性能提升策略包中的性能提升策略与场景标识之间的映射关系,确定上述场景标识对应的性能提升策略为上述目标应用程序的性能提升策略。
S407,上述操作***按照上述性能提升策略调整上述目标应用程序的***资源的分配。
可以看出,本申请实施例中,移动终端的操作***空间的操作***首先接收正在运行的目标应用程序发送的场景数据包,场景数据包包括正在运行的目标应用程序的应用类型标识和场景标识,其次,操作***根据应用类型标识和场景标识确定正在运行的目标应用程序的性能提升策略,最后,操作***按照性能提升策略调整正在运行的目标应用程序的***资源的分配。由于场景数据包包括目标应用程序的应用类型标识和场景标识,且场景数据包由正在运行的目标应用程序发送,操作***能够根据应用类型标识准确确定适用的策略模块,进而调用该策略模块根据场景标识精细化确定目标应用程序的当前的内部运行场景的性能提升策略,并由操作***按照该性能提升策略实时调整目标应用程序的***资源的配置,实现了由操作***对运行过程中的目标应用程序进行实时的性能优化,有利于提高移动终端控制目标应用程序进行性能优化的实时性和精确度。
此外,通过划分多个策略模块能够实现对不同类型应用的精细化控制,且移动终端无需同时加载全部策略模块,仅需要加载移动终端前台运行的目标应用程序对应的策略模块,有利于降低移动终端的资源占用,提高资源利用率和控制效率。
此外,由管理模块对场景数据包进行统一处理,策略模块仅需要直接接收策略模块的处理结果,如此设置有利于轻量化和精细化策略模块的功能,便于对策略模块进行维护、添加等操作,提高***稳定性。
此外,应用类型标识用于确定对应的性能提升策略包,场景标识用于进一步精细化定位到具体的适配该场景的性能提升策略,仅需要通过简答的查找算法即可根据应用类型标识和场景标识快速定位到具体的性能提升策略,延时低,准确度高,有利于提高移动终端控制目标应用程序进行运行优化的实时性和准确度。
与上述图2、图3、图4所示的实施例一致的,请参阅图5,图5是本申请实施例提供的一种移动终端的结构示意图,该移动终端运行有一个或多个应用程序和操作***,如图所示,该移动终端包括处理器、存储器、通信接口以及一个或多个程序,其中,上述一个或多个程序不同于上述一个或多个应用程序,且上述一个或多个程序被存储在上述存储器中,并且被配置由上述处理器执行,上述程序包括用于执行以下步骤的指令:
控制上述操作***接收正在运行的上述目标应用程序发送的场景数据包,上述场景数据包包括目标应用程序的应用类型标识和场景标识;
控制上述操作***根据上述应用类型标识和上述场景标识确定上述目标应用程序的性能提升策略;
控制上述操作***按照上述性能提升策略调整上述目标应用程序的***资源的分配。
可以看出,本申请实施例中,移动终端的操作***空间的操作***首先接收正在运行的目标应用程序发送的场景数据包,场景数据包包括正在运行的目标应用程序的应用类型标识和场景标识,其次,操作***根据应用类型标识和场景标识确定正在运行的目标应用程序的性能提升策略,最后,操作***按照性能提升策略调整正在运行的目标应用程序的***资源的分配。由于场景数据包包括目标应用程序的应用类型标识和场景标识,且场景数据包由正在运行的目标应用程序发送,操作***能够根据应用类型标识准确确定适用的策略模块,进而调用该策略模块根据场景标识精细化确定目标应用程序的当前的内部运行场景的性能提升策略,并由操作***按照该性能提升策略实时调整目标应用程序的***资源的配置,实现了由操作***对运行过程中的目标应用程序进行实时的性能优化,有利于提高移动终端控制目标应用程序进行性能优化的实时性和精确度。
在一个可能的示例中,上述操作***包括管理模块和多个策略模块,每个策略模块用于确定相同应用类型的至少一个应用程序中的应用程序的性能提升策略;在上述控制上述操作***根据上述应用类型标识和上述场景标识确定上述目标应用程序的性能提升策略方面,上述程序中的指令具体用于执行以下操作:控制上述管理模块确定上述场景数据包中的上述应用类型标识和上述场景标识;以及控制上述管理模块确定上述多个策略模块中与上述应用类型标识对应的策略模块;以及控制上述策略模块确定上述场景标识对应的性能提升策略为上述目标应用程序的性能提升策略。
在一个可能的示例中,上述场景数据包包括数据格式标识;在上述控制上述管理模块确定上述场景数据包中的上述应用类型标识和上述场景标识方面,上述程序中的指令具体用于执行以下操作:控制上述管理模块按照上述数据格式标识所指示的数据格式解析上述场景数据包以确定上述应用类型标识和上述场景标识。
在一个可能的示例中,上述操作***包括管理模块和策略模块;在上述控制上述操作***根据上述应用类型标识和上述场景标识确定上述目标应用程序的性能提升策略方面,上述程序中的指令具体用于执行以下操作:控制上述策略模块获取上述场景数据包中的上述应用类型标识和上述场景标识;以及控制上述策略模块确定上述应用类型标识对应的性能提升策略包;以及控制上述策略模块确定上述性能提升策略包中与上述场景标识对应的性能提升策略为上述目标应用程序的性能提升策略。
在一个可能的示例中,在上述控制上述策略模块获取上述场景数据包中的上述应用类型标识和上述场景标识方面,上述程序中的指令具体用于执行以下操作:控制上述管理模块按照上述数据格式标识所指示的数据格式解析上述场景数据包,确定上述目标应用程序的上述应用类型标识和上述场景标识,并向上述策略模块发送上述应用类型标识和上述场景标识;或者,
控制上述管理模块向上述策略模块发送上述场景数据包;以及控制上述策略模块按照上述数据格式标识所指示的数据格式解析上述场景数据包,确定上述目标应用程序的上述应用类型标识和上述场景标识;或者,
控制上述管理模块确定上述策略模块关联的第一数据格式,在检测到上述第一数据格式和上述场景数据包的第二数据格式不一致时,转换上述场景数据包的第二数据格式为上述第一数据格式,并向上述策略模块发送上述转换后的上述场景数据包;以及控制上述策略模块按照上述第一数据格式解析上述转换后的上述场景数据包,确定上述目标应用程序的上述应用类型标识和上述场景标识。
在一个可能的示例中,在上述控制上述策略模块确定上述应用类型标识对应的性能提升策略包方面,上述程序中的指令具体用于执行以下操作:控制上述策略模块以上述应用类型标识为查询标识,查询预设的性能提升策略包与应用类型标识之间的映射关系,确定上述应用类型标识对应的性能提升策略包;
在上述控制上述策略模块确定上述性能提升策略包中与上述场景标识对应的性能提升策略为上述目标应用程序的性能提升策略方面,上述程序中的指令具体用于执行以下操作:控制上述策略模块以上述场景标识为查询标识,查询预设的上述性能提升策略包中的性能提升策略与场景标识之间的映射关系,确定上述场景标识对应的性能提升策略为上述目标应用程序的性能提升策略。
在一个可能的示例中,上述目标应用程序包括数据连接模块,上述操作***包括数据连接管理模块;在上述控制上述操作***接收正在运行的上述目标应用程序发送的场景数据包方面,上述程序中的指令具体用于执行以下操作:控制上述数据连接管理模块与上述数据连接模块建立数据通道;以及控制上述数据连接管理模块通过上述数据通道接收上述目标应用程序发送的场景数据包。
在一个可能的示例中,上述资源包括上述移动终端的以下资源中的至少一种:CPU资源、GPU资源、内存带宽资源、磁盘资源、网络资源。
上述主要从方法侧执行过程的角度对本申请实施例的方案进行了介绍。可以理解的是,移动终端为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对移动终端进行功能单元的划分,例如,可以对应各个功能划分各个功能单元,也可以将两个或两个以上的功能集成在一个处理单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。需要说明的是,本申请实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
在采用集成的单元的情况下,图6示出了上述实施例中所涉及的资源配置装置的一种可能的功能单元组成框图。资源配置装置600应用于移动终端,上述移动终端上运行有操作***以及一个或多个应用程序,上述资源配置装置600包括:处理单元602和通信单元603。处理单元602用于对资源配置装置的动作进行控制管理,例如,处理单元602用于支持资源配置装置执行图2中的步骤S201-S203、图3中的步骤S301-S305、图4中的步骤S401-S407和/或用于本文所描述的技术的其它过程。资源配置装置还可以包括存储单元601,用于存储程序代码和数据。
上述处理单元602,用于控制上述操作***通过上述通信单元603接收正在运行的上述目标应用程序发送的场景数据包,上述场景数据包包括目标应用程序的应用类型标识和场景标识;以及用于控制上述操作***根据上述应用类型标识和上述场景标识确定上述目标应用程序的性能提升策略;以及用于控制上述操作***按照上述性能提升策略调整上述目标应用程序的***资源的分配。
在一个可能的示例中,上述操作***包括管理模块和多个策略模块,每个策略模块用于确定相同应用类型的至少一个应用程序中的应用程序的性能提升策略;在上述控制上述操作***根据上述应用类型标识和上述场景标识确定上述目标应用程序的性能提升策略方面,上述处理单元602具体用于:控制上述管理模块确定上述场景数据包中的上述应用类型标识和上述场景标识;以及控制上述管理模块确定上述多个策略模块中与上述应用类型标识对应的策略模块;以及控制上述策略模块确定上述场景标识对应的性能提升策略为上述目标应用程序的性能提升策略。
在一个可能的示例中,上述场景数据包包括数据格式标识;在上述控制上述管理模块确定上述场景数据包中的上述应用类型标识和上述场景标识方面,上述处理单元602具体用于:控制上述管理模块按照上述数据格式标识所指示的数据格式解析上述场景数据包以确定上述应用类型标识和上述场景标识。
在一个可能的示例中,上述操作***包括管理模块和策略模块;在上述控制上述操作***根据上述应用类型标识和上述场景标识确定上述目标应用程序的性能提升策略方面,上述处理单元602具体用于:控制上述策略模块获取上述场景数据包中的上述应用类型标识和上述场景标识;以及控制上述策略模块确定上述应用类型标识对应的性能提升策略包;以及控制上述策略模块确定上述性能提升策略包中与上述场景标识对应的性能提升策略为上述目标应用程序的性能提升策略。
在一个可能的示例中,在上述控制上述策略模块获取上述场景数据包中的上述应用类型标识和上述场景标识方面,上述处理单元602具体用于:控制上述管理模块按照上述数据格式标识所指示的数据格式解析上述场景数据包,确定上述目标应用程序的上述应用类型标识和上述场景标识,并向上述策略模块发送上述应用类型标识和上述场景标识;或者,
控制上述管理模块向上述策略模块发送上述场景数据包;以及控制上述策略模块按照上述数据格式标识所指示的数据格式解析上述场景数据包,确定上述目标应用程序的上述应用类型标识和上述场景标识;或者,
控制上述管理模块确定上述策略模块关联的第一数据格式,在检测到上述第一数据格式和上述场景数据包的第二数据格式不一致时,转换上述场景数据包的第二数据格式为上述第一数据格式,并向上述策略模块发送上述转换后的上述场景数据包;以及控制上述策略模块按照上述第一数据格式解析上述转换后的上述场景数据包,确定上述目标应用程序的上述应用类型标识和上述场景标识。
在一个可能的示例中,在上述控制上述策略模块确定上述应用类型标识对应的性能提升策略包方面,上述处理单元602具体用于:控制上述策略模块以上述应用类型标识为查询标识,查询预设的性能提升策略包与应用类型标识之间的映射关系,确定上述应用类型标识对应的性能提升策略包;
在上述控制上述策略模块确定上述性能提升策略包中与上述场景标识对应的性能提升策略为上述目标应用程序的性能提升策略方面,上述处理单元602具体用于:控制上述策略模块以上述场景标识为查询标识,查询预设的上述性能提升策略包中的性能提升策略与场景标识之间的映射关系,确定上述场景标识对应的性能提升策略为上述目标应用程序的性能提升策略。
在一个可能的示例中,上述目标应用程序和上述操作***之间包括预设数据通道;在上述通过上述通信单元603接收正在运行的上述目标应用程序发送的场景数据包方面,上述处理单元602具体用于:通过上述通信单元603通过上述预设数据通道接收上述正在运行的上述目标应用程序发送的场景数据包。
其中,上述目标应用程序包括数据连接模块,上述操作***包括数据连接管理模块;上述资源配置装置还包括通道建立单元,上述通道建立单元,用于控制数据连接管理模块与上述数据连接模块建立上述预设数据通道。
在一个可能的示例中,上述资源包括上述移动终端的以下资源中的至少一种:CPU资源、GPU资源、内存带宽资源、磁盘资源、网络资源。
其中,处理单元602可以是处理器或控制器,通信单元603可以是处理器和程序运行空间之间的内部通信接口,如处理器与操作***空间的通信接口,或者处理器与用户空间的通信接口等,存储单元601可以是存储器。
请参阅图7,图7是本申请实施例提供了一种智能手机700的结构示意图,上述智能手机700包括:壳体710、触控显示屏720、主板730、电池740和副板750,主板730上设置有前置摄像头731、处理器732、存储器733、电源管理芯片734等,副板上设置有振子751、一体音腔752、VOOC闪充接口753和指纹识别模组754。
其中,该智能手机包括目标应用程序和操作***,目标应用程序运行于用户空间,操作***运行于操作***空间,操作***包括操作***。操作***接收正在运行的目标应用程序发送的场景数据包,场景数据包包括目标应用程序的应用类型标识和场景标识;操作***根据应用类型标识和场景标识确定目标应用程序的性能提升策略;操作***按照性能提升策略调整目标应用程序的***资源的分配。
上述处理器732是智能手机的控制中心,利用各种接口和线路连接整个智能手机的各个部分,通过运行或执行存储在存储器733内的软件程序和/或模块,以及调用存储在存储器733内的数据,执行智能手机的各种功能和处理数据,从而对智能手机进行整体监控。可选的,处理器732可包括一个或多个处理单元;优选的,处理器732可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作***、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器732中。该处理器732例如可以是中央处理器(Central Processing Unit,CPU),通用处理器,数字信号处理器(Digital Signal Processor,DSP),专用集成电路(Application-Specific Integrated Circuit,ASIC),现场可编程门阵列(Field Programmable GateArray,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。上述处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。
上述存储器733可用于存储软件程序以及模块,处理器732通过运行存储在存储器733的软件程序以及模块,从而执行智能手机的各种功能应用以及数据处理。存储器733可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序等;存储数据区可存储根据智能手机的使用所创建的数据等。此外,存储器733可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。该存储器733例如可以是随机存取存储器(RandomAccess Memory,RAM)、闪存、只读存储器(Read Only Memory,ROM)、可擦除可编程只读存储器(Erasable Programmable ROM,EPROM)、电可擦可编程只读存储器(ElectricallyEPROM,EEPROM)、寄存器、硬盘、移动硬盘、只读光盘(CD-ROM)或者本领域熟知的任何其它形式的存储介质。
本申请实施例还提供一种计算机存储介质,其中,该计算机存储介质存储用于电子数据交换的计算机程序,该计算机程序使得计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤,上述计算机包括移动终端。
本申请实施例还提供一种计算机程序产品,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤。该计算机程序产品可以为一个软件安装包,上述计算机包括移动终端。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例上述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取器(英文:Random Access Memory,简称:RAM)、磁盘或光盘等。
以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。