CN104023147B - 一种可使移动终端稳定休眠的方法及系统 - Google Patents

一种可使移动终端稳定休眠的方法及系统 Download PDF

Info

Publication number
CN104023147B
CN104023147B CN201410301414.8A CN201410301414A CN104023147B CN 104023147 B CN104023147 B CN 104023147B CN 201410301414 A CN201410301414 A CN 201410301414A CN 104023147 B CN104023147 B CN 104023147B
Authority
CN
China
Prior art keywords
application
dormancy
pid
mobile terminal
cpu
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201410301414.8A
Other languages
English (en)
Other versions
CN104023147A (zh
Inventor
张强
陈胜利
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangdong Oppo Mobile Telecommunications Corp Ltd filed Critical Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority to CN201410301414.8A priority Critical patent/CN104023147B/zh
Publication of CN104023147A publication Critical patent/CN104023147A/zh
Application granted granted Critical
Publication of CN104023147B publication Critical patent/CN104023147B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Abstract

本发明公开了一种可使移动终端稳定休眠的方法及系统,方法包括下述步骤:S1、在手机准备进入休眠状态的时候,检测CPU锁是否被释放掉;S2、启动一个定时器,设置定时时间T,在达到该定时时间后,如果该CPU锁仍没有被释放,则说明该应用可能出现某种故障,就会导致系统无法休眠;S3、获取该应用的PID,即该应用的进程号,由于是该进程导致系统无法休眠,那么强制杀掉该应用。系统包括顺序连接的检测模块、定时模块以及应用关闭模块。运用本发明之后,在系统睡眠的时候,可以检测到哪些应用导致系统无法休眠,从而杀掉该应用,让系统正常休眠,减少不必要的功耗。

Description

一种可使移动终端稳定休眠的方法及系统
技术领域
本发明涉及移动终端休眠的研究领域,特别涉及一种可使移动终端稳定休眠的方法及系统。
背景技术
在日常的使用过程中,我们偶尔会碰到手机过了一个晚上,电池电被消耗的差不多了的情况,本来以为手机休眠了,但是实际上,虽然屏幕熄灭了,但系统并没有真正地休眠。这样,就会导致电池耗电很快,给用户带来很大的困扰。某个应用获取到CPU锁,如果在睡眠的时候,没有释放掉该锁,或者在系统休眠的时候还在不断地申请该CPU锁,那么就会引起系统无法休眠,导致大量耗电。本发明通过检测CPU锁的释放情况,来检测是那个应用获取的CPU锁,从而解决掉无法休眠的问题。
中国发明专利公开了一种终端休眠方法及终端(公开号为CN101631337A)该技术方案是:对于终端内的每个业务,根据业务的业务信息确定对应的网络保持时间和中央处理器CPU保持时间;对于每个业务,启动所述业务对应的第一定时器和第二定时器,其中,所述第一定时器的时长为所述CPU保持时间,所述第二定时器的时长为所述网络保持时间;在所述每个业务的第一定时器都到时的情况下,使CPU的休眠功能使能;在所述每个业务的第二定时器都到时的情况下,使无线模块的休眠功能使能;其中,所述网络保持时间为所述业务需要连续使用网络的时长,所述CPU保持时间为所述业务需要CPU连续运行的时长。但是,上述技术方案仍然不能充分解决在手机休眠时完全关掉应用的问题。
发明内容
本发明的主要目的在于克服现有技术的缺点与不足,提供一种可使移动终端稳定休眠的方法。
本发明的另一目的在于,提供一种可使移动终端稳定休眠的系统。
为了达到上述第一目的,本发明采用以下技术方案:
一种可使移动终端稳定休眠的方法,包括下述步骤:
S1、在移动终端准备进入休眠状态的时候,检测CPU锁是否被释放掉;
S2、启动一个定时器,设置定时时间T,在达到该定时时间后,如果该CPU锁仍没有被释放,则说明该应用可能出现某种故障,就会导致系统无法休眠;
S3、获取该应用的PID,即该应用的进程号,由于是该进程导致系统无法休眠,那么强制杀掉该应用。
优选的,步骤S1中,检测CPU锁是否被释放掉的具体方法为:
S1.1、在系统休眠的时候,利用接口函数检测当前CPU锁是否被持有;
S1.2、同时检测是哪个应用持有该CPU锁,即如果某个应用调用这个接口函数,那么则说明该应用申请了这把CPU锁。
优选的,步骤S2中,定时时间T为60S-120S。
优选的,步骤S3中,关闭该进程的方法为:
S3.1、获取binder通信对端的PID;
S3.2、向问题PID发送sig9信号从而杀掉进程。
优选的,如果系统不断的申请CPU锁,则进行如下操作:
S4.1、在休眠后,如果系统被频繁唤醒,那系统也是无法休眠的,可以在每次唤醒时,记录下唤醒的应用与唤醒的时间,并维护一张表,记录近N次的记录;
S4.2、如果在表中查询到有某一个应用多次唤醒,并且时间间隔都较短;说明该应用处于异常状态;
S4.3、获取该应用的PID,即该应用的进程号,由于是该进程导致系统无法休眠,那么强制杀掉该应用。
优选的,步骤S4.1中,维护一张表的具体方法为:
通过数组的形式记录每个PID的申请cpu锁的次数,并保存到一个表格中;
如果PID在某个时间段内,申请cpu锁的次数超过设定次数,那么说明这个PID的应用异常了,则强制杀掉该应用。
优选的,所述移动终端为手机、电子书、掌上电脑或人机交互终端。
为了达到上述第二目的,本发明采用以下技术方案:
一种可使移动终端稳定休眠的系统,包括:
检测模块,用于在移动终端准备进入休眠状态的时候,检测CPU锁是否被释放掉;
定时模块,用于启动一个定时器,设置定时时间T,在达到该定时时间后,如果该CPU锁仍没有被释放,则说明该应用可能出现某种故障,就会导致系统无法休眠;
应用关闭模块,用于获取该应用的PID,由于是该进程导致系统无法休眠,那么强制杀掉该应用。
优选的,所述检测模块包括CPU锁检测模块,所述CPU锁检测模块用于在系统休眠的时候,利用接口函数检测当前CPU锁是否被持有,并同时检测是哪个应用持有该CPU锁,即如果某个应用调用这个接口函数,那么则说明该应用申请了这把CPU锁。
优选的,所述应用关闭模块包括PID获取模块和信号发送模块;
所述PID获取模块,用于获取binder通信对端的PID;
所述信号发送模块,用于向问题PID发送sig9信号,从而杀掉进程。
本发明与现有技术相比,具有如下优点和有益效果:
1、运用本发明之后,在系统睡眠的时候,可以检测到哪些应用导致系统无法休眠,从而杀掉该应用,让系统正常休眠,减少不必要的功耗。
2、本发明的方法应用广泛,可以在手机、平板电脑或者其他智能手持终端上运用,具有通用性。
3、本发明的方法在移动终端上使用时,可以减少手机的发烫,提升用户使用体验。
附图说明
图1是本发明实施例1的方法流程图;
图2是本发明实施例2的方法流程图。
具体实施方式
下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
实施例1
如图1所示,本实施例一种可使移动终端稳定休眠的方法,包括下述步骤:
S1、在移动终端准备进入休眠状态的时候,检测CPU锁(PARTIAL_WAKE_LOCK)是否被释放掉;
S2、启动一个定时器,设置定时时间T,在达到该定时时间后,如果该CPU锁仍没有被释放,则说明该应用可能出现某种故障,就会导致系统无法休眠;
S3、获取该应用的PID,即该应用的进程号,由于是该进程导致系统无法休眠,那么强制杀掉该应用。
步骤S1中,检测CPU锁是否被释放掉的具体方法为:
S1.1、在系统休眠的时候,利用接口函数检测当前CPU锁是否被持有;
S1.2、同时检测是哪个应用持有该CPU锁,即如果某个应用调用这个接口函数,那么则说明该应用申请了这把CPU锁。
步骤S2中,定时时间T为60S-120S;以选定120S为例进行说明,在该定时时间到后,如果该锁仍没有被释放,即说明该应用可能出现某种故障(比如说没有收到某些返回值等等),这样,就一定会导致系统无法休眠;所以采取本发明的方法来解决上述问题。在通常情况下,应用持有该CPU锁的时间往往都不超过60S。
步骤S3中,关闭该进程的方法为:
S3.1、获取binder通信对端的PID;
S3.2、向问题PID发送sig9信号从而杀掉进程。
当然,本实施例中所述的移动终端可以是手机、电子书、个人数字助理(PDA)、掌上电脑、人机交互终端或其他具有显示功能的手持式终端设备。
本实施例一种可使移动终端稳定休眠的系统,包括:
检测模块,用于在移动终端准备进入休眠状态的时候,检测CPU锁是否被释放掉;
定时模块,用于启动一个定时器,设置定时时间T,在达到该定时时间后,如果该CPU锁仍没有被释放,则说明该应用可能出现某种故障,就会导致系统无法休眠;
应用关闭模块,用于获取该应用的PID,由于是该进程导致系统无法休眠,那么强制杀掉该应用。
所述检测模块包括CPU锁检测模块,所述CPU锁检测模块用于在系统休眠的时候,利用接口函数检测当前CPU锁是否被持有,并同时检测是哪个应用持有该CPU锁,即如果某个应用调用这个接口函数,那么则说明该应用申请了这把CPU锁。
所述应用关闭模块包括PID获取模块和信号发送模块;
所述PID获取模块,用于获取binder通信对端的PID;
所述信号发送模块,用于向问题PID发送sig9信号,从而杀掉进程。
实施例2
本实施例除了下述技术特征之外,其它技术特征与实施例1相同:
如图2所示,还存在这样一种情况,如果系统不断的申请CPU锁,则进行如下操作:
S4.1、在休眠后,如果系统被频繁唤醒(比如说2秒1次),那系统也是无法休眠的,可以在每次唤醒时,记录下唤醒的应用与唤醒的时间,并维护一张表,记录近N次的记录,其中N的取值可以根据实际的情况进行选定;
S4.2、如果在表中查询到有某一个应用多次唤醒(比如10次),并且时间间隔都较短;说明该应用处于异常状态;
S4.3、获取该应用的PID,即该应用的进程号,由于是该进程导致系统无法休眠,那么强制杀掉该应用。
步骤S4.1中,维护一张表的具体方法为:
通过数组的形式记录每个PID的申请cpu锁的次数,并保存到一个表格中;
如果PID在某个时间段内,申请cpu锁的次数超过设定次数,那么说明这个PID的应用异常了,则强制杀掉该应用。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

Claims (7)

1.一种可使移动终端稳定休眠的方法,其特征在于,包括下述步骤:
S1、在移动终端准备进入休眠状态的时候,检测CPU锁是否被释放掉;
S2、启动一个定时器,设置定时时间T,在达到该定时时间后,如果该CPU锁仍没有被释放,则说明某个应用可能出现某种故障,就会导致系统无法休眠;
S3、获取该应用的PID,即该应用的进程号,由于是该应用的进程导致系统无法休眠,那么强制杀掉该应用;
如果系统不断的申请CPU锁,则进行如下操作:
S4.1、在休眠后,如果系统被频繁唤醒,那系统也是无法休眠的,可以在每次唤醒时,记录下唤醒的应用与唤醒的时间,并维护一张表,记录近N次的记录;
S4.2、如果在表中查询到有某一个应用多次唤醒,并且时间间隔都较短;说明该应用处于异常状态;
S4.3、获取该应用的PID,即该应用的进程号,由于是该应用的进程导致系统无法休眠,那么强制杀掉该应用;
步骤S1中,检测CPU锁是否被释放掉的具体方法为:
S1.1、在系统休眠的时候,利用接口函数检测当前CPU锁是否被持有;
S1.2、同时检测是哪个应用持有该CPU锁,即如果某个应用调用这个接口函数,那么则说明该应用申请了这把CPU锁。
2.根据权利要求1所述的可使移动终端稳定休眠的方法,其特征在于,步骤S2中,定时时间T为60S-120S。
3.根据权利要求1所述的可使移动终端稳定休眠的方法,其特征在于,步骤S3中,关闭该进程的方法为:
S3.1、获取binder通信对端的PID;
S3.2、向问题PID发送sig9信号从而杀掉进程。
4.根据权利要求1所述的可使移动终端稳定休眠的方法,其特征在于,步骤S4.1中,维护一张表的具体方法为:
通过数组的形式记录每个PID的申请cpu锁的次数,并保存到一个表格中;
如果PID在某个时间段内,申请cpu锁的次数超过设定次数,那么说明这个PID的应用异常了,则强制杀掉该应用。
5.根据权利要求1-4中任一项所述的可使移动终端稳定休眠的方法,其特征在于,所述移动终端为手机、电子书、掌上电脑或人机交互终端。
6.一种可使移动终端稳定休眠的系统,其特征在于,包括:
检测模块,用于在移动终端准备进入休眠状态的时候,检测CPU锁是否被释放掉;
定时模块,用于启动一个定时器,设置定时时间T,在达到该定时时间后,如果该CPU锁仍没有被释放,则说明某个应用可能出现某种故障,就会导致系统无法休眠;
应用关闭模块,用于获取该应用的PID,由于是该应用的进程导致系统无法休眠,那么强制杀掉该应用;
所述检测模块包括CPU锁检测模块,所述CPU锁检测模块用于在系统休眠的时候,利用接口函数检测当前CPU锁是否被持有,并同时检测是哪个应用持有该CPU锁,即如果某个应用调用这个接口函数,那么则说明该应用申请了这把CPU锁;
如果系统不断的申请CPU锁,则进行如下操作:
在休眠后,如果系统被频繁唤醒,那系统也是无法休眠的,可以在每次唤醒时,记录下唤醒的应用与唤醒的时间,并维护一张表,记录近N次的记录;
如果在表中查询到有某一个应用多次唤醒,并且时间间隔都较短;说明该应用处于异常状态;
获取该应用的PID,即该应用的进程号,由于是该应用的进程导致系统无法休眠,那么强制杀掉该应用。
7.根据权利要求6所述的可使移动终端稳定休眠的系统,其特征在于,所述应用关闭模块包括PID获取模块和信号发送模块;
所述PID获取模块,用于获取binder通信对端的PID;
所述信号发送模块,用于向问题PID发送sig9信号,从而杀掉进程。
CN201410301414.8A 2014-06-27 2014-06-27 一种可使移动终端稳定休眠的方法及系统 Expired - Fee Related CN104023147B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410301414.8A CN104023147B (zh) 2014-06-27 2014-06-27 一种可使移动终端稳定休眠的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410301414.8A CN104023147B (zh) 2014-06-27 2014-06-27 一种可使移动终端稳定休眠的方法及系统

Publications (2)

Publication Number Publication Date
CN104023147A CN104023147A (zh) 2014-09-03
CN104023147B true CN104023147B (zh) 2016-05-11

Family

ID=51439709

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410301414.8A Expired - Fee Related CN104023147B (zh) 2014-06-27 2014-06-27 一种可使移动终端稳定休眠的方法及系统

Country Status (1)

Country Link
CN (1) CN104023147B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106020962B (zh) 2016-05-31 2019-05-21 Oppo广东移动通信有限公司 一种进程控制方法及终端设备
CN106095645A (zh) * 2016-06-21 2016-11-09 广东欧珀移动通信有限公司 一种应用程序查找方法和装置
CN106686633A (zh) * 2017-02-20 2017-05-17 苏州蜗牛数字科技股份有限公司 一种阻止wifi恶意频繁唤醒的方法
CN107291212A (zh) * 2017-06-16 2017-10-24 深圳天珑无线科技有限公司 电源锁处理方法及装置
CN109947484A (zh) * 2019-02-25 2019-06-28 努比亚技术有限公司 一种唤醒锁的控制方法、终端及计算机可读存储介质
CN110572866B (zh) * 2019-07-26 2021-03-30 华为技术有限公司 一种唤醒锁的管理方法及电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101408861A (zh) * 2007-10-11 2009-04-15 鸿富锦精密工业(深圳)有限公司 应用程序实时监控系统及方法
CN102946486A (zh) * 2012-11-20 2013-02-27 惠州Tcl移动通信有限公司 一种基于手机的后台应用自动清理方法及手机
CN103324519A (zh) * 2013-06-17 2013-09-25 华为技术有限公司 一种恶意耗电应用的清理方法、装置及用户终端
JP5324340B2 (ja) * 2009-06-29 2013-10-23 ルネサスエレクトロニクス株式会社 マイクロコンピュータ

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120209413A1 (en) * 2011-02-14 2012-08-16 Microsoft Corporation Background Audio on Mobile Devices

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101408861A (zh) * 2007-10-11 2009-04-15 鸿富锦精密工业(深圳)有限公司 应用程序实时监控系统及方法
JP5324340B2 (ja) * 2009-06-29 2013-10-23 ルネサスエレクトロニクス株式会社 マイクロコンピュータ
CN102946486A (zh) * 2012-11-20 2013-02-27 惠州Tcl移动通信有限公司 一种基于手机的后台应用自动清理方法及手机
CN103324519A (zh) * 2013-06-17 2013-09-25 华为技术有限公司 一种恶意耗电应用的清理方法、装置及用户终端

Also Published As

Publication number Publication date
CN104023147A (zh) 2014-09-03

Similar Documents

Publication Publication Date Title
CN104023147B (zh) 一种可使移动终端稳定休眠的方法及系统
US9970966B2 (en) Method, device and computer storage medium for detecting power consumption of an application
CN104244381B (zh) 唤醒控制方法、装置和终端设备
KR101171533B1 (ko) 모바일 네트워크 장치 배터리 보존 시스템 및 방법들
WO2020224658A1 (zh) 待机优化方法、装置、计算机设备和存储介质
EP2728471B1 (en) Method and terminal for managing application
CN103402027A (zh) 一种移动终端和使移动终端进入睡眠状态的方法
CN109803359A (zh) 一种唤醒终端系统的方法及终端
CN107317924B (zh) 移动终端和移动终端的休眠方法
EP3190771A1 (en) Method and device for managing instant communication application program, and mobile terminal thereof
US8659563B2 (en) Electronic device with a page turning function during a sleep mode of the electronic device
CN105867577A (zh) 一种终端唤醒方法及终端
WO2015172283A1 (zh) 一种降低功耗的方法、装置及移动终端
CN105281965B (zh) 基于ios系统的流量获取方法和装置
CN102833830A (zh) 一种唤醒移动智能终端方法及移动智能终端
CN104184907A (zh) 终端应用软件在待机状态下的唤醒数据的检测方法及终端
CN106484075A (zh) 调整应用程序唤醒时间的方法及装置
CN104836869A (zh) 一种移动通信终端和移动通信终端开机方法
EP2805549A1 (en) Wireless scan and advertisement in electronic devices background
CN103309429A (zh) 信息处理方法和电子设备
CN108616906A (zh) 一种lte基站节能方法和装置
CN104063316A (zh) 一种应用的测试方法及装置
CN104869617A (zh) 一种终端的控制方法
CN102833833A (zh) Drx周期配置方法、设备及系统
TWI656441B (zh) 待機異常耗電偵測系統及方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: Changan town in Guangdong province Dongguan 523860 usha Beach Road No. 18

Patentee after: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS Corp.,Ltd.

Address before: Changan town in Guangdong province Dongguan 523860 usha Beach Road No. 18

Patentee before: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS Corp.,Ltd.

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160511