信息处理方法、装置、计算机设备和计算机可读存储介质与流程

文档序号:18188504发布日期:2019-07-17 05:28阅读:131来源:国知局
信息处理方法、装置、计算机设备和计算机可读存储介质与流程

本申请涉及计算机技术领域,特别是涉及一种信息处理方法、装置、计算机设备和计算机可读存储介质。



背景技术:

随着智能计算机设备的发展和用户需求的不断提升,越来越多的智能计算机设备的屏幕越来越大,可运行的应用程序越来越多,智能计算机设备的功耗也越来越大。为了节省智能计算机设备的功耗,智能计算机设备可对运行的应用程序进行资源限制,限制应用程序可用的系统资源。



技术实现要素:

本申请实施例提供一种信息处理方法、装置、计算机设备和计算机可读存储介质,可以根据触发应用程序由前台切换到后台的按键方式对应用程序进行资源限制。

一种信息处理方法,包括:

若接收到应用程序由前台切换到后台的操作指令,获取与所述操作指令对应的按键信息;所述按键信息是触发所述操作指令的按键方式;

查找与所述按键信息对应的资源限制等级;

根据所述资源限制等级对进入后台的所述应用程序进行资源限制。

一种信息处理装置,包括:

获取模块,用于若接收到应用程序由前台切换到后台的操作指令,获取与所述操作指令对应的按键信息;

查找模块,用于查找与所述按键信息对应的资源限制等级;

处理模块,用于根据所述资源限制等级对进入后台的所述应用程序进行资源限制。

一种计算机设备,包括存储器及处理器,所述存储器中储存有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如上所述的方法的步骤。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的方法的步骤。

本申请实施例中,当应用程序由前台退出进入后台时,根据按键信息的不同可对应用程序进行不同的资源限制,可实现根据用户操作的不同对应用程序实现不同的资源限制,对应用程序的资源限制方式更加智能化。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为一个实施例中计算机设备的内部结构示意图;

图2为一个实施例中计算机设备的部分架构图;

图3为一个实施例中信息处理方法的流程图;

图4为另一个实施例中信息处理方法的流程图;

图5为另一个实施例中信息处理方法的流程图;

图6为一个实施例中信息处理装置的结构框图;

图7为另一个实施例中信息处理装置的结构框图;

图8为另一个实施例中信息处理装置的结构框图;

图9与本申请实施例提供的计算机设备相关的手机的部分结构的框图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

图1为一个实施例中计算机设备的内部结构示意图。如图1所示,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该处理器用于提供计算和控制能力,支撑整个计算机设备的运行。存储器用于存储数据、程序等,存储器上存储至少一个计算机程序,该计算机程序可被处理器执行,以实现本申请实施例中提供的适用于计算机设备的信息处理方法。存储器可包括非易失性存储介质及内存储器。非易失性存储介质存储有操作系统和计算机程序。该计算机程序可被处理器所执行,以用于实现以下各个实施例所提供的一种信息处理方法。内存储器为非易失性存储介质中的操作系统计算机程序提供高速缓存的运行环境。网络接口可以是以太网卡或无线网卡等,用于与外部的计算机设备进行通信。该计算机设备可以是手机、平板电脑或者个人数字助理或穿戴式设备等。

本领域技术人员可以理解,图1中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。如该计算机设备还包括通过系统总线连接的网络接口,网络接口可以是以太网卡或无线网卡等,用于与外部的计算机设备进行通信,比如可用于同服务器进行通信。

图2为一个实施例中计算机设备的部分架构图。如图2所示,计算机设备的架构系统中包括java空间层210、本地框架层220以及内核(kernel)空间层230。java空间层中包括冻结和解冻模块212,上述冻结和解冻模块212用于实现对各个应用程序的冻结策略,例如对后台耗电的应用程序进行冻结等。

本地框架层220中包括资源优先级和限制管理模块222、平台冻结管理模块224。上述资源优先级和限制管理模块222可对不同的应用程序进行不同的资源限制,使不同的应用程序处于不同的资源优先级中。资源优先级和限制管理模块222还可根据上层的需求调整应用程序的资源优先级,使得计算机设备可合理应用程序可使用资源。平台冻结管理模块224可根据应用程序进入后台的时长来确定对进程应用程序进行资源限制的等级,平台冻结管理模块224可预设不同的资源限制的等级,应用程序进入后台的时间越长,平台冻结管理模块224对应用程序进行资源限制的等级越高,即对应用程序的资源限制程度越高。可选地,上述资源限制等级可包括:cpu限制睡眠模式、cpu冻结睡眠模式和进程深度冻结模式。上述cpu限制睡眠模式是指对应用程序的进程可使用的中央处理器(centralprocessingunit,cpu)资源进行限制,使应用程序的进程可使用较少的cpu资源;在cpu限制睡眠模式下还可进一步限制应用程序的进程可使用的网络资源和输入/输出接口(input/output,i/o)资源。cpu冻结睡眠模式是指禁止应用程序的进程使用cpu资源、网络资源和i/o资源,但对应用程序的进程占用的内存资源不进行回收,上述cpu冻结睡眠模式是对应用程序可使用资源的深度限制模式。进程深度冻结模式是指禁止应用程序的进程使用cpu资源、网络资源和i/o资源,同时回收应用程序的进程占用的内存资源。其中,本地框架层220的接口模块包含开发给上层的binder接口,上层的框架或应用程序通过上述binder接口可发送资源限制指令给资源限制管理模块222、发送冻结指令给平台冻结管理模块224。

内核空间层230中包括uid管理模块231、cgroup模块232、binder管控模块233、进程内存回收模块234和超时冻结退出模块235。当前对应用程序的进程管理是基于进程识别号(processidentification,pid)来实现的,进程与应用程序没有对应,不利于统一管理一个应用程序的所有进程对应的资源。上述uid管理模块231可通过应用程序的用户身份标识(useridentifier,uid)来管理应用程序的资源,也可通过应用程序的uid对应用程序进行冻结。cgroup模块232可提供基于cpu、cpuset、内存(memory)、i/o资源和net相关的资源限制机制。binder管控模块233可用于限制后台进程间binder通信的优先级。进程内存回收模块234用于实现进程深度冻结模式,在进程进入进程深度冻结模式时,释放掉进程的文件区,从而实现节省内存,加快进程对应的应用程序下次启动时的速度。超时冻结退出模块235用于解决进程在冻结超时发生异常的问题。

通过上述的架构,可实现本申请各个实施例中的信息处理方法。

图3为一个实施例中信息处理方法的流程图。如图3所示,一种信息处理方法,包括:

步骤302,若接收到应用程序由前台切换到后台的操作指令,获取与操作指令对应的按键信息;按键信息是触发操作指令的按键方式。

计算机设备可对计算机设备中运行的应用程序进行监控,检测是否接收到应用程序由前台切换到后台的操作指令,若接收到上述应用程序由前台切换到后台的操作指令,将前台运行的应用程序切换到后台。计算机设备可通过activitymanager.runningappprocessinfo检测应用程序是否进入后台或应用程序是否由后台返回到前台。

计算机设备在接收到应用程序由前台切换到后台的操作指令时,可获取与上述操作指令对应的按键信息。上述按键信息即为用户触发应用程序由前台切换到后台的操作指令的按键方式,上述按键方式包括:触发的按键类型,包括实体键和虚拟键;按键的按键标识,上述按键标识是唯一标识按键的字符串。在计算机设备中,用户触发多个按键均可使应用程序由前台退回到后台。例如,以android系统为例,用户可点击返回键退出应用程序回到桌面,此时应用程序由前台退回到后台,上述返回键可为实体按键或虚拟按键;用户也可直接点击桌面键返回桌面,应用程序由前台切换到后台。

步骤304,查找与按键信息对应的资源限制等级。

计算机设备中可预存与按键信息对应的资源限制等级,在获取到应用程序由前台切换到后台的操作指令后,获取上述操作指令中对应的按键信息,再查找上述按键信息对应的资源限制等级。上述资源限制等级是对应用程序的资源限制等级,可选地,上述资源限制等级可包括:cpu限制睡眠模式、cpu冻结睡眠模式和进程深度冻结模式。上述cpu限制睡眠模式是指对应用程序的进程可使用的cpu资源进行限制,使应用程序的进程可使用较少的cpu资源;在cpu限制睡眠模式下还可进一步限制应用程序的进程可使用的i/o资源。cpu冻结睡眠模式是指禁止应用程序的进程使用cpu资源、网络资源和i/o资源,但对应用程序的进程占用的内存资源不进行回收,上述cpu冻结睡眠模式是对应用程序可使用资源的深度限制模式。进程深度冻结模式是指禁止应用程序的进程使用cpu资源、网络资源和i/o资源,同时回收应用程序的进程占用的内存资源。其中,当应用程序的进程处于进程深度冻结模式时,即应用程序处于冻结状态。

步骤306,根据资源限制等级对进入后台的应用程序进行资源限制。

计算机设备在获取到按键信息对应的资源限制等级后,可根据上述按键信息对应的资源限制等级对进入后台的应用程序进行资源限制。例如,当用户点击桌面键使应用程序退出前台时,计算机设备获取到应用程序由前台切换到后台的操作指令,并获取上述操作指令中按键信息为:实体键、桌面键,则计算机设备可查找到按键类型对应的资源限制等级为cpu限制睡眠模式,则对由前台退出到后台的应用程序进行cpu资源限制,例如将应用程序可使用的cpu资源限制为总cpu资源的10%。当用户点击返回键使应用程序退出前台时,计算机设备获取到应用程序由前台切换到后台的操作指令,并获取上述操作指令中按键信息为:虚拟键,返回键,则计算机设备可查找到按键类型对应的资源限制等级为进程深度冻结模式,则可禁止上述由前台退出到后台的应用程序使用cpu资源、网络资源和i/o资源,同时回收应用程序占用的内存资源。

本申请实施例中方法,当应用程序由前台退出进入后台时,根据按键信息的不同可对应用程序进行不同的资源限制,可实现根据用户操作的不同对应用程序实现不同的资源限制,对应用程序的资源限制方式更加智能化。

在一个实施例中,根据资源限制等级对进入后台的应用程序进行资源限制包括:

(1)获取与应用程序的应用程序标识,查找与应用程序标识对应的用户组。

通常情况下,在移动操作系统中,各种资源是以进程为单位进行管理的。例如,cpu资源、内存资源、网络资源、i/o资源等。在计算机设备中应用程序在前后台切换时,应用程序对应的所有进程也会对应的调度。在对应用程序占用的资源进行限制时,需要通过上层遍历cpuacct或proc来获取应用程序对应的所有进程,进而对应用程序对应的所有进程进行资源限制。

用户组是进程的属性,在创建进程时计算机设备内核会为进程分配对应的用户组,在销毁进程时计算机设备内核会释放进程对应的用户组。通常情况下,同一应用程序对应的多个进程的用户组相同。

(2)在用户组对进程的映射关系中查找用户组对应的多个进程。

计算机设备在对应用程序进行资源限制时,可先获取应用程序的应用程序标识,上述应用程序标识是用于唯一标识应用程序的字符串。计算机设备可根据上述应用程序标识查找应用程序对应的用户组,即应用程序的所有进程对应的用户组。计算机设备在查找到上述应用程序对应的用户组后,可根据用户组对进程的映射关系查找用户组对应的多个进程。

计算机设备中还预存用户组对进程的映射关系,上述用户组对进程的映射关系是根据用户组与进程的对应关系获取的。上述用户组对进程的映射关系中记录了计算机设备中各个用户组对应的多个进程。计算机设备可根据上述用户组对进程的映射关系查找用户组对应的多个进程,上述用户组对应的多个进程中包括即为应用程序的进程。由于用户组是进程的属性,而同一应用程序对应的多个进程的用户组相同,则计算机设备在获取应用程序标识对应的用户组后,再查找到的用户组对应的多个进程即为同一个应用程序对应的多个进程。计算机设备也可通过遍历acct的方式来查找用户组对应的多个进程。

(3)根据资源限制等级对用户组对应的多个进程进行资源限制。

在获取到用户组对应的多个进程后,计算机设备可对用户组对应的多个进程进行资源限制,即可对同一应用程序的多个进程进行资源限制。

在常用的移动操作系统中,以android系统为例,一个应用程序通常包括多个进程,而android系统在进行资源管理时,各种资源是以进程为单位进行管理的。在对进程进行资源管理时,若只冻结一个应用程序中单个进程,则这个应用程序中其他处于未冻结状态的进程可通过进程间通信唤醒被冻结的进程。为了避免应用程序的进程间相互唤醒而浪费系统资源,计算机设备在对应用程序进行资源限制时,需要对同一应用程序下所有进程进行资源限制。

本申请实施例中方法,计算机设备可直接获取同一应用程序对应的多个进程,相对于通过上层遍历获取用户组对应的进程的方式,上述方法大大节省了查找用户组对应的进程的时间,提高了查找用户组对应的进程的效率,有利于更快捷的对用户组对应的进程进行资源限制处理。

在一个实施例中,上述方法还包括:

步骤308,获取应用程序的异常信息,异常信息包括对应用程序进行资源限制时异常信息和应用程序处于资源限制状态时异常信息。

步骤310,若获取到同一应用程序的异常信息的次数达到预设次数,不再对应用程序进行资源限制。

计算机设备在对应用程序进行资源限制时,可获取应用程序在进行资源限制时异常信息。上述异常信息可包括应用程序在进行资源限制时异常信息和在资源限制过程中异常信息。上述异常信息可包括:对应用程序进行冻结时应用程序无响应、对应用程序进行冻结时应用程序闪退、对应用程序进行冻结时应用程序自动关闭、将处于冻结状态的应用程序唤醒时卡顿、将处于冻结状态的应用程序唤醒时闪退、处于冻结状态的应用程序在被唤醒时无响应等。上述对应用程序冻结即为将应用程序切换到进程深度冻结模式,限制应用程序使用系统资源。上述应用程序冻结失败即为对应用程序进行冻结时,应用程序无法进入冻结状态。

计算机设备在获取到上述应用程序的异常信息后,可检测同一应用程序获取到异常信息的次数是否达到预设次数,如3次,若同一应用程序获取到异常信息的次数达到预设次数,将应用程序设置为不可进行资源限制状态,即对应用程序不再进行资源限制。

本申请实施例中方法,对资源限制反复出现异常的应用程序不再进行资源限制,避免应用程序多次出现异常降低用户体验,提高了用户粘性。

在一个实施例中,资源限制等级包括冻结模式,冻结模式是指禁止应用程序使用系统资源。上述方法还包括:

(1)若接收到对处于冻结状态的应用程序的唤醒消息,获取应用程序对应的唤醒时长。

(2)若当前时刻与应用程序上一次被唤醒时刻之间的时间差不小于唤醒时长,根据唤醒消息将应用程序唤醒。

计算机设备在对应用程序进行资源限制时,若将应用程序切换到进程深度冻结模式,则应用程序处于冻结状态。当应用程序处于冻结状态时,应用程序无法使用系统资源,因此无法响应其他应用程序的通信消息。上述冻结唤醒时长即为计算机设备预设的两次将应用程序由冻结状态唤醒的时间差。

当计算机设备接收到对处于冻结状态的应用程序的通信消息或系统消息时,可将计算机设备由冻结状态切换到可使用系统资源的状态,使得应用程序可响应上述通信消息或系统消息。其中,将应用程序由冻结状态切换到可使用系统资源的状态可为将应用程序由进程冻结状态切换到cpu限制睡眠状态,使得应用程序可使用系统资源。计算机设备也可对应用程序进行解冻,不限制应用程序使用系统资源。

在接收到对处于冻结状态的后台应用程序的唤醒消息后,计算机设备不会在每次接收到唤醒消息时就将后台应用程序唤醒。计算机设备可将当前时刻与后台应用程序上一次被唤醒时刻之间的时间差与上述唤醒时长进行对比。若上述时间差大于或等于唤醒时长,则计算机设备根据上述唤醒消息立刻将后台应用程序唤醒。若上述时间差小于唤醒时长,则计算机设备在当前时刻与上述后台应用程序上一次被唤醒的时刻之间的时间差等于上述唤醒时长时,将上述后台应用程序唤醒。即计算机设备在检测到当前时刻与上一次应用程序被唤醒时刻之间的时间差小于上述唤醒时长时,将在唤醒时长内接收到的唤醒消息积累,在当前时刻与上述后台应用程序上一次被唤醒的时刻之间的时间差等于上述唤醒时长时,根据积累的唤醒消息唤醒后台应用程序。若在上一次应用程序被唤醒后,在唤醒时长内未接收到唤醒消息,则在超过唤醒时长后接收到唤醒消息时,计算机设备可立即将上述后台应用程序唤醒。

通常情况下,为了节省计算机设备功耗和提高前台应用程序的可用资源,会对后台应用程序可用的资源进行限制,例如,对后台应用程序进行冻结。计算机设备在接收到对上述后台应用程序的唤醒消息时,需要将上述后台应用程序唤醒,否则上述后台应用程序会发生无响应的错误,但是频繁的将后台应用程序唤醒会导致计算机设备对后台应用程序的资源限制率降低,无法提高前台应用程序可用的资源。

本申请实施例中方法,计算机设备可对对于冻结状态的应用程序设置唤醒时长,使得应用程序不会频繁被唤醒而浪费计算机设备功耗,又避免了应用程序长期处于冻结状态无响应的问题。

在一个实施例中,上述方法还包括:若接收到对处于冻结状态的应用程序的终止命令,对应用程序进行解冻,将解冻后应用程序设置为不可冻结状态,根据终止命令终止解冻后应用程序。

若计算机设备资源紧缺,计算机设备会对处于冻结状态的应用程序发送终止命令,关闭上述处于冻结状态的应用程序,释放上述应用程序占用的系统资源。但当应用程序处于冻结状态时,应用程序无法接收到任何消息,即使处于冻结状态的应用程序被唤醒,唤醒后应用程序也会快速恢复到冻结状态,因此计算机设备无法关闭处于冻结状态的应用程序。通常情况下,计算机设备会使用两套代码来终止应用程序,其中一套代码用于终止冻结状态应用程序,另一套代码用于终止其他应用程序。

当计算机设备接收到对处于冻结状态的应用程序的终止命令时,若检测到上述应用程序处于冻结状态的处于冻结状态,对上述处于冻结状态的应用程序进行解冻,并将解冻后应用程序设置为不可冻结状态,则解冻后的应用程序可对上述终止命令正确响应,即上述解冻后的应用程序可被关闭。其中,对应用程序进行解冻可为不再限制应用程序使用的系统资源,也可为将应用程序由不可使用系统资源的状态切换到可使用系统资源的状态,如将应用程序切换到cpu限制睡眠模式。

本申请实施例中方法,可安全终止处于冻结状态的应用程序,避免出现应用程序无法终止的情况,计算机设备可根据统一的终止指令来终止处于冻结状态的应用程序和其他应用程序,实现了终止处于冻结状态的应用程序和其他应用程序的兼容性,减少了软件开发的困难,方便对移动操作系统进行维护。

在一个实施例中,上述方法还包括:获取应用程序进入后台的时长,根据应用程序进入后台的时长调整对应用程序进行资源限制的资源限制等级。

计算机设备可获取应用程序进入后台的时长,并根据应用程序进入后台的时长调整对应用程序进行资源限制的资源限制等级。具体地,计算机设备可对应用程序进入后台的时长设定不同的阈值。可选地,可设定第一阈值和第二阈值。当应用程序进入后台的时长达到第一阈值时,对应用程序的资源限制等级提高,例如,将应用程序由cpu限制睡眠模式切换到cpu冻结睡眠模式。当应用程序进入后台的时长达到第二阈值时,对应用程序的资源限制等级再次提高,例如,将应用程序由cpu冻结睡眠模式切换到进程深度冻结模式。计算机设备可根据应用程序进入后台的时长调整对应用程序的资源限制等级,直到对应用程序的资源限制等级达到最高级,例如,对应用程序的资源限制等级为进程深度冻结模式。

本申请实施例中方法,根据应用程序进入后台的时长来调整对应用程序进行资源限制的资源限制等级,可实现逐步释放应用程序占用的系统资源,释放应用程序占用的系统资源的方式更加智能化。

在一个实施例中,上述方法还包括:

步骤312,对应用程序设置对应的资源优先级。

步骤314,若检测到后台应用程序与前台应用程序具有通信机制和同步机制中至少一种,将后台应用程序作为被依赖应用程序。

步骤316,若检测到被依赖应用程序的资源优先级低于前台应用程序的资源优先级,提高被依赖应用程序的资源优先级。

计算机设备可对应用程序设置资源优先级。其中,计算机设备可根据应用程序的类型、应用程序的使用频次等对应用程序设定资源优先级。上述资源优先级是指对应用程序可使用资源的限制等级,应用程序对应的资源优先级不同,则应用程序可使用的资源的限制等级不同。应用程序对应的资源优先级越高,对应用程序可使用的资源的限制越少。上述可使用资源包括:cpu资源、内存资源、i/o资源和网络资源。例如,计算机设备可对应用程序设置5级优先级包括:第1级、第2级、第3级、第4级和第5级。其中,第1级优先级最高,第5级优先级最低。当应用程序处于第1级优先级时,各项资源可使用的比例为80%,即可使用cpu资源为总cpu资源的80%,可使用的内存资源为总内存资源的80%,可使用的i/o资源为总i/o资源的80%,可使用网络资源为总网络资源的80%。当应用程序处于第2级优先级时,各项资源可使用的比例为60%;当应用程序处于第3级优先级时,各项资源可使用的比例为40%;当应用程序处于第4级优先级时,各项资源可使用的比例为20%;当应用程序处于第5级优先级时,各项资源可使用的比例为10%。

应用程序的进程间通信机制包括socket、binder、共享内存等。网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket。binder是一种进程间通信机制,提供远程过程调用功能。共享内存就是允许两个不相关的进程访问同一个逻辑内存,共享内存是在两个正在运行的进程之间共享和传递数据的一种非常有效的方式,不同进程之间共享的内存通常安排为同一段物理内存。应用程序的进程间同步机制是指并发程序设计中,各进程对公共变量的访问必须加以制约,这种制约称为同步。在操作系统中,用户态(usermode)的同步机制可通过调用futex系统调用实现。其中,用户态指非特权状态。同步机制包括信号量、互斥锁等。当通过futex系统调用检测到与前台应用程序的进程存在任意一种同步机制的后台应用程序的进程时,可将检测到的后台应用程序作为被依赖应用程序。当后台应用程序与前台应用程序具有通信机制和同步机制中一种或多种时,可认为后台应用程序是前台应用程序的被依赖应用程序,即前台应用程序需要调用后台应用程序的数据才能顺利执行。

通常情况下,计算机设备对前台应用程序设定的资源优先级较高,对后台应用程序设定的资源优先级较低。当计算机设备检测到后台应用程序是前台应用程序所依赖的应用程序时,可检测后台应用程序的资源优先级与前台应用程序的资源优先级是否相同,若后台应用程序的资源优先级低于前台应用程序的资源优先级,则计算机设备可将后台应用程序的资源优先级提升到前台应用程序的资源优先级。

本申请实施例中方法,当检测到后台应用程序是前台应用程序所依赖的应用程序时,可提高后台应用程序的资源优先级,后台应用程序可使用的资源增加,加快了后台应用程序响应前台应用程序的速度。

在一个实施例中,还包括:当检测到前台应用程序结束对后台应用程序的依赖,降低上述后台应用程序的资源优先级。当后台应用程序不再是前台应用程序所依赖的应用程序时,将后台应用程序的资源优先级恢复到调整前较低的资源优先级。

在一个实施例中,一种信息处理方法,包括:

(1)若接收到应用程序由前台切换到后台的操作指令,获取与操作指令对应的按键信息。按键信息是触发操作指令的按键方式。

(2)查找与按键信息对应的资源限制等级。

(3)根据资源限制等级对进入后台的应用程序进行资源限制。

可选地,根据资源限制等级对进入后台的应用程序进行资源限制包括:获取与应用程序的应用程序标识,查找与应用程序标识对应的用户组,在用户组对进程的映射关系中查找用户组对应的多个进程,根据资源限制等级对用户组对应的多个进程进行资源限制。

可选地,上述方法还包括:获取应用程序的异常信息,异常信息包括对应用程序进行资源限制时异常信息和应用程序处于资源限制状态时异常信息,若获取到同一应用程序的异常信息的次数达到预设次数,不再对应用程序进行资源限制。

可选地,资源限制等级包括冻结模式,冻结模式是指禁止应用程序使用系统资源。上述方法还包括:若接收到对处于冻结状态的应用程序的唤醒消息,获取应用程序对应的唤醒时长,若当前时刻与应用程序上一次被唤醒时刻之间的时间差不小于唤醒时长,根据唤醒消息将应用程序唤醒。

可选地,上述方法还包括:若接收到对处于冻结状态的应用程序的终止命令,对应用程序进行解冻,将解冻后应用程序设置为不可冻结状态,根据终止命令终止解冻后应用程序。

可选地,上述方法还包括:获取应用程序进入后台的时长,根据应用程序进入后台的时长调整对应用程序进行资源限制的资源限制等级。

可选地,上述方法还包括:对应用程序设置对应的资源优先级,若检测到后台应用程序与前台应用程序具有通信机制和同步机制中至少一种,将后台应用程序作为被依赖应用程序,若检测到被依赖应用程序的资源优先级低于前台应用程序的资源优先级,提高被依赖应用程序的资源优先级。

应该理解的是,虽然上述流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

图6为一个实施例中信息处理装置的结构框图。如图6所示,一种信息处理装置,包括:

获取模块602,用于若接收到应用程序由前台切换到后台的操作指令,获取与操作指令对应的按键信息。

查找模块604,用于查找与按键信息对应的资源限制等级。

处理模块606,用于根据资源限制等级对进入后台的应用程序进行资源限制。

在一个实施例中,处理模块606根据资源限制等级对进入后台的应用程序进行资源限制包括:获取与应用程序的应用程序标识,查找与应用程序标识对应的用户组,在用户组对进程的映射关系中查找用户组对应的多个进程,根据资源限制等级对用户组对应的多个进程进行资源限制。

在一个实施例汇总,获取模块602还用于获取应用程序的异常信息,异常信息包括对应用程序进行资源限制时异常信息和应用程序处于资源限制状态时异常信息。处理模块606还用于若获取到同一应用程序的异常信息的次数达到预设次数,不再对应用程序进行资源限制。

图7为另一个实施例中信息处理装置的结构框图。如图7所示,一种信息处理装置,包括:获取模块702、查找模块704、处理模块706和唤醒模块708。其中,获取模块702、查找模块704、处理模块706与图6中对应的模块功能相同。

资源限制等级包括冻结模式,冻结模式是指禁止应用程序使用系统资源。

获取模块702还用于若接收到对处于冻结状态的应用程序的唤醒消息,获取应用程序对应的唤醒时长。

唤醒模块708,用于若当前时刻与应用程序上一次被唤醒时刻之间的时间差不小于唤醒时长,根据唤醒消息将应用程序唤醒。

图8为另一个实施例中信息处理装置的结构框图。如图8所示,一种信息处理装置,包括:获取模块802、查找模块804、处理模块806、解冻模块808和终止模块810。其中,获取模块802、查找模块804、处理模块806与图6中对应的模块功能相同。

解冻模块808,用于若接收到对处于冻结状态的应用程序的终止命令,对应用程序进行解冻。

终止模块810,用于将解冻后应用程序设置为不可冻结状态,根据终止命令终止解冻后应用程序。

在一个实施例中,处理模块806还用于获取应用程序进入后台的时长,根据应用程序进入后台的时长调整对应用程序进行资源限制的资源限制等级。

在一个实施例中,处理模块806还用于对应用程序设置对应的资源优先级,若检测到后台应用程序与前台应用程序具有通信机制和同步机制中至少一种,将后台应用程序作为被依赖应用程序,若检测到被依赖应用程序的资源优先级低于前台应用程序的资源优先级,提高被依赖应用程序的资源优先级。

上述信息处理装置中各个模块的划分仅用于举例说明,在其他实施例中,可将信息处理装置按照需要划分为不同的模块,以完成上述信息处理装置的全部或部分功能。

关于信息处理装置的具体限定可以参见上文中对于信息处理方法的限定,在此不再赘述。上述信息处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

本申请实施例中提供的信息处理装置中的各个模块的实现可为计算机程序的形式。该计算机程序可在终端或服务器上运行。该计算机程序构成的程序模块可存储在终端或服务器的存储器上。该计算机程序被处理器执行时,实现本申请实施例中所描述方法的步骤。

本申请实施例还提供了一种计算机可读存储介质。一个或多个包含计算机可执行指令的非易失性计算机可读存储介质,当计算机可执行指令被一个或多个处理器执行时,使得处理器执行本申请实施例中信息处理方法的步骤。

一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行本申请实施例中信息处理方法的步骤。

本申请实施例还提供了一种计算机设备。如图9所示,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请实施例方法部分。该计算机设备可以为包括手机、平板电脑、pda(personaldigitalassistant,个人数字助理)、pos(pointofsales,销售终端)、车载电脑、穿戴式设备等任意终端设备,以计算机设备为手机为例:

图9为与本申请实施例提供的计算机设备相关的手机的部分结构的框图。参考图9,手机包括:射频(radiofrequency,rf)电路910、存储器920、输入单元930、显示单元940、传感器950、音频电路960、无线保真(wirelessfidelity,wifi)模块970、处理器980、以及电源990等部件。本领域技术人员可以理解,图9所示的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

其中,rf电路910可用于收发信息或通话过程中,信号的接收和发送,可将基站的下行信息接收后,给处理器980处理;也可以将上行的数据发送给基站。通常,rf电路包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(lownoiseamplifier,lna)、双工器等。此外,rf电路910还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(globalsystemofmobilecommunication,gsm)、通用分组无线服务(generalpacketradioservice,gprs)、码分多址(codedivisionmultipleaccess,cdma)、宽带码分多址(widebandcodedivisionmultipleaccess,wcdma)、长期演进(longtermevolution,lte))、电子邮件、短消息服务(shortmessagingservice,sms)等。

存储器920可用于存储软件程序以及模块,处理器980通过运行存储在存储器920的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器920可主要包括程序存储区和数据存储区,其中,程序存储区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能的应用程序、图像播放功能的应用程序等)等;数据存储区可存储根据手机的使用所创建的数据(比如音频数据、通讯录等)等。此外,存储器920可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

输入单元930可用于接收输入的数字或字符信息,以及产生与手机900的用户设置以及功能控制有关的键信号输入。具体地,输入单元930可包括触控面板931以及其他输入设备932。触控面板931,也可称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板931上或在触控面板931附近的操作),并根据预先设定的程式驱动相应的连接装置。在一个实施例中,触控面板931可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器980,并能接收处理器980发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板931。除了触控面板931,输入单元930还可以包括其他输入设备932。具体地,其他输入设备932可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)等中的一种或多种。

显示单元940可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元940可包括显示面板941。在一个实施例中,可以采用液晶显示器(liquidcrystaldisplay,lcd)、有机发光二极管(organiclight-emittingdiode,oled)等形式来配置显示面板941。在一个实施例中,触控面板931可覆盖显示面板941,当触控面板931检测到在其上或附近的触摸操作后,传送给处理器980以确定触摸事件的类型,随后处理器980根据触摸事件的类型在显示面板941上提供相应的视觉输出。虽然在图9中,触控面板931与显示面板941是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板931与显示面板941集成而实现手机的输入和输出功能。

手机900还可包括至少一种传感器950,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板941的亮度,接近传感器可在手机移动到耳边时,关闭显示面板941和/或背光。运动传感器可包括加速度传感器,通过加速度传感器可检测各个方向上加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换)、振动识别相关功能(比如计步器、敲击)等;此外,手机还可配置陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器等。

音频电路960、扬声器961和传声器962可提供用户与手机之间的音频接口。音频电路960可将接收到的音频数据转换后的电信号,传输到扬声器961,由扬声器961转换为声音信号输出;另一方面,传声器962将收集的声音信号转换为电信号,由音频电路960接收后转换为音频数据,再将音频数据输出处理器980处理后,经rf电路910可以发送给另一手机,或者将音频数据输出至存储器920以便后续处理。

wifi属于短距离无线传输技术,手机通过wifi模块970可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图9示出了wifi模块970,但是可以理解的是,其并不属于手机900的必须构成,可以根据需要而省略。

处理器980是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器920内的软件程序和/或模块,以及调用存储在存储器920内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。在一个实施例中,处理器980可包括一个或多个处理单元。在一个实施例中,处理器980可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等;调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器980中。

手机900还包括给各个部件供电的电源990(比如电池),优选的,电源可以通过电源管理系统与处理器980逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。

在一个实施例中,手机900还可以包括摄像头、蓝牙模块等。

在本申请实施例中,该计算机设备所包括的处理器980执行存储在存储器上的计算机程序时执行本申请实施例中信息处理方法的步骤。

本申请所使用的对存储器、存储、数据库或其它介质的任何引用可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram),它用作外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)。

以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1