进程管理方法和装置、电子设备与流程

文档序号:25543381发布日期:2021-06-18 20:40

技术特征:

1.一种进程管理方法,其特征在于,包括:

在进行binder进程间调用时,确定被调用进程是否为处于挂起状态的进程;

若所述被调用进程为处于挂起状态的进程,则根据预设的基于binder进程间调用的通信类型的唤醒策略确定是否唤醒所述被调用进程,以用于进程调用;

若所述被调用进程为处于非挂起状态的进程,则执行进程调用。

2.根据权利要求1所述的进程管理方法,其特征在于,根据预设的基于binder进程间调用的通信类型的唤醒策略确定是否唤醒所述被调用进程,以用于进程调用,包括:

确定所述binder进程间调用的通信类型;所述通信类型包括binder同步调用和binder异步调用;

若所述binder进程间调用的通信类型为binder同步调用,则根据预设的binder进程间调用的优先类型确定是否唤醒所述被调用进程以用于进程调用;

若所述binder进程间调用的通信类型为binder异步调用,则缓存所述binder进程间调用,并基于缓存的针对所述被调用进程的累积程度是否达到预设的累积程度标准或所述被调用进程的状态是否发生变化,以确定是否唤醒所述被调用进程以用于进程调用。

3.根据权利要求2所述的进程管理方法,其特征在于,所述优先类型包括易用性优先,且若所述binder进程间调用的优先类型为易用性优先,则唤醒所述被调用进程以用于进程调用。

4.根据权利要求3所述的进程管理方法,其特征在于,满足以下任一条件的所述binder进程间调用的优先类型为易用性优先:

所述被调用进程或调用所述被调用进程的调用进程对应的应用为通过用户界面被选择为允许后台活动的应用;

所述被调用进程或调用所述被调用进程的调用进程对应的应用为通过用户界面被选择为忽略功耗影响的应用;

所述被调用进程或调用所述被调用进程的调用进程对应的应用为通过用户界面被选择为忽略内存影响的应用。

5.根据权利要求2所述的进程管理方法,其特征在于,所述优先类型包括功耗优先,且若所述binder进程间调用的优先类型为功耗优先,则判断调用所述被调用进程的调用进程是否为核心进程,若所述调用进程为核心进程,则唤醒所述被调用进程;若所述调用进程为非核心进程,则不唤醒所述被调用进程。

6.根据权利要求5所述的进程管理方法,其特征在于,满足以下任一条件的所述调用进程为核心进程:

所述调用进程对应的应用为通过应用白名单配置的应用;

所述调用进程为前台进程,且被用户正在前台使用;

操作系统中所述调用进程的adj值小于前台进程的adj值;

操作系统中所述调用进程为不在后台进程调度分组中的进程;

所述调用进程对应的应用的uid小于预设的uid;

所述调用进程为操作系统中前台服务的进程;

所述调用进程为当前进行后台可感知业务的进程。

7.根据权利要求5所述的进程管理方法,其特征在于,若所述调用进程为非核心进程,则不唤醒所述被调用进程,并进一步还包括:将所述调用进程的状态标识为挂起状态,和/或将所述调用进程对应的应用的状态标识为挂起状态。

8.根据权利要求2所述的进程管理方法,其特征在于,缓存所述binder进程间调用,包括:缓存针对所述被调用进程的调用关系至异步调用缓存器中。

9.根据权利要求8所述的进程管理方法,其特征在于,若缓存的针对所述被调用进程的缓存的累积程度达到预设的累积程度标准,或所述被调用进程的状态由挂起状态转换为活跃状态,则唤醒所述被调用进程。

10.根据权利要求9所述的进程管理方法,其特征在于,缓存的针对所述被调用进程的缓存的累积程度达到预设的累积程度标准,包括:

针对所述被调用进程的所述异步调用缓存器的存储总量超过预设的存储阈值;或

针对所述被调用进程的所述异步调用缓存器的可用存储空间小于预设的存储空间阈值;或

针对所述被调用进程的缓存调用次数达到预设的缓存调用次数阈值;或

针对所述被调用进程的缓存调用时间达到预设的缓存调用时间阈值。

11.根据权利要求1所述的进程管理方法,其特征在于,所述被调用进程被唤醒后,还包括:将所述被调用进程的状态由挂起状态转换为活跃状态,且将所述被调用进程对应的应用的状态由挂起状态转换为活跃状态。

12.根据权利要求1-11任一项所述的进程管理方法,其特征在于,确定所述被调用进程是否为处于挂起状态的进程,包括:

判断所述被调用进程的进程标识信息是否位于预设的管理进程列表中;所述管理进程列表包括与处于挂起状态的应用对应的进程的进程标识信息;

若所述被调用进程的进程标识信息位于所述管理进程列表中,则所述被调用进程为处于挂起状态的进程;若所述被调用进程的进程标识信息未位于所述管理进程列表中,则所述被调用进程为处于非挂起状态的进程。

13.根据权利要求12所述的进程管理方法,其特征在于,所述进程标识信息包括进程id和/或与进程对应的应用的uid。

14.根据权利要求12所述的进程管理方法,其特征在于,所述处于挂起状态的应用,包括:进入后台后,在预设时间内无可感知业务的应用。

15.根据权利要求12所述的进程管理方法,其特征在于,进一步包括,处于挂起状态的进程的状态转换为活跃状态后,将所述进程的进程标识信息从所述管理进程列表中移除;和/或

处于挂起状态的应用的状态转换为活跃状态后,将所述应用对应的进程的进程标识信息从所述管理进程列表中移除。

16.一种进程管理装置,其特征在于,包括:binder进程间调用管理模块,

所述binder进程间调用管理模块用于在进行binder进程间调用时,确定被调用进程是否为处于挂起状态的进程;并在确定所述被调用进程为处于挂起状态的进程时,根据预设的基于binder进程间调用的通信类型的唤醒策略确定是否唤醒所述被调用进程以用于进程调用;在确定所述被调用进程为处于非挂起状态的进程时,执行进程调用。

17.根据权利要求16所述的进程管理装置,其特征在于,还包括:应用模块和应用管理模块;

所述应用管理模块用于确定所述应用模块中进入后台的应用在预设时间内是否无可感知业务,若无,则将所述应用的状态标识为挂起状态;若有,则将所述应用的状态标识为活跃状态;

针对标识为挂起状态的应用,所述应用管理模块还用于将所述应用对应的进程的状态标识为挂起状态,并通知所述binder进程间调用管理模块将处于挂起状态的进程的进程标识信息加入所述binder进程间调用管理模块中预设的管理进程列表中。

18.根据权利要求17所述的进程管理装置,其特征在于,所述应用管理模块还用于:当所述被调用进程被唤醒后,通知所述binder进程间调用管理模块将所述被调用进程的进程标识信息从所述管理进程列表中删除。

19.根据权利要求18所述的进程管理装置,其特征在于,所述应用管理模块还用于:当所述被调用进程被唤醒后,将所述被调用进程的状态由挂起状态转换为活跃状态,和/或将所述被调用进程对应的应用的状态由挂起状态转换为活跃状态。

20.根据权利要求16所述的进程管理装置,其特征在于,所述应用管理模块还用于:当调用所述被调用进程的调用进程的状态被标识为挂起状态时,将所述调用进程对应的应用的状态标识为挂起状态。

21.一种电子设备,其特征在于,包括:

存储器,用于存储计算机程序,所述计算机程序包括程序指令;

处理器,用于执行所述程序指令,以使所述电子设备执行如权利要求1-15任一项所述的进程管理方法。

22.一种计算机可读取存储介质,其特征在于,所述计算机可读取存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令被计算机运行以使计算机执行如权利要求1-15任一项所述的进程管理方法。


技术总结
本申请公开了一种进程管理方法,包括:在进行Binder进程间调用时,确定被调用进程是否为处于挂起状态的进程;若被调用进程为处于挂起状态的进程,则根据预设的基于Binder进程间调用的通信类型的唤醒策略确定是否唤醒被调用进程,以用于进程调用;若被调用进程为处于非挂起状态的进程,则执行进程调用。即对于不同的Binder进程间调用的通信类型,在需要唤醒时唤醒该被调用进程以用于进程调用,在不需要唤醒时,则可以不用唤醒该被调用进程,由此,可以有效地减少处于挂起状态的被调用进程的唤醒,以避免进程被频繁唤醒,存在内存和功耗资源的消耗的问题。本申请还公开了一种进程管理装置及电子设备。

技术研发人员:黄文;赵京
受保护的技术使用者:华为技术有限公司
技术研发日:2019.12.17
技术公布日:2021.06.18
再多了解一些
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1