CN105224861B - 一种智能设备的死机状态处理方法及*** - Google Patents

一种智能设备的死机状态处理方法及*** Download PDF

Info

Publication number
CN105224861B
CN105224861B CN201410262828.4A CN201410262828A CN105224861B CN 105224861 B CN105224861 B CN 105224861B CN 201410262828 A CN201410262828 A CN 201410262828A CN 105224861 B CN105224861 B CN 105224861B
Authority
CN
China
Prior art keywords
memory usage
time
threshold value
smart machine
subprocess
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.)
Active
Application number
CN201410262828.4A
Other languages
English (en)
Other versions
CN105224861A (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.)
TCL Corp
Original Assignee
TCL Corp
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 TCL Corp filed Critical TCL Corp
Priority to CN201410262828.4A priority Critical patent/CN105224861B/zh
Publication of CN105224861A publication Critical patent/CN105224861A/zh
Application granted granted Critical
Publication of CN105224861B publication Critical patent/CN105224861B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本发明公开一种智能设备的死机状态处理方法及***,其中,方法包括步骤:C、在日志信息内搜索程序列表数据中的各应用程序的名称,并统计各应用程序出现的次数;D、判断出现次数最多的应用程序为子进程或父进程,当是子进程时,强制退出该子进程,并检测内存占用率,当内存占用率低于内存占用率阈值时,则处理流程结束;当是父进程时,则强制退出该父进程,并转入步骤E;E、重新启动父进程,并检测内存占用率,当内存占用率低于内存占用率阈值时,则处理流程结束。本发明可在不断电的情况下,友好的关闭引起故障的应用程序,最大限度地保护***的稳定。

Description

一种智能设备的死机状态处理方法及***
技术领域
本发明涉及智能设备领域,尤其涉及一种智能设备的死机状态处理方法及***。
背景技术
当前智能电视、智能手机等智能设备越来越普及,在智能设备上可以安装大量的第三方应用,但是第三方应用有可能给***带来不稳定性,常常使得***死机或者重启等恶劣情况发生。面对死机状态,用户将束手无策,目前***死机状态的唯一解决办法就是强制断电,这种方式无疑会对***稳定性造成破坏,同时也给用户带来极大不便,严重影响产品的口碑。
因此,现有技术还有待于改进和发展。
发明内容
鉴于上述现有技术的不足,本发明的目的在于提供一种智能设备的死机状态处理方法及***,旨在解决现有的智能设备出现死机状态处理方法容易对***稳定性造成破坏、且处理方式不友好的问题。
本发明的技术方案如下:
一种智能设备的死机状态处理方法,其中,包括步骤:
A、监控程序读取程序列表数据;
B、保存从第一时间到第二时间的日志信息,所述第一时间为当前时间减去第一时间阈值,第二时间为当前时间加上第二时间阈值;
C、在日志信息内搜索程序列表数据中的各应用程序的名称,并统计各应用程序出现的次数;
D、判断出现次数最多的应用程序为子进程或父进程,当是子进程时,强制退出该子进程,并检测内存占用率,当内存占用率低于内存占用率阈值时,则处理流程结束;当是父进程时,则强制退出该父进程,并转入步骤E;
E、重新启动父进程,并检测内存占用率,当内存占用率低于内存占用率阈值时,则处理流程结束。
所述的智能设备的死机状态处理方法,其中,所述步骤A之前还包括:
A0、当***出现死机状态时,监控程序接收用户消息,并分析用户消息命令类型,当用户消息的命令类型为自动处理时,转入步骤A。
所述的智能设备的死机状态处理方法,其中,所述步骤D中,在强制退出该子进程后,当内存占用率不低于内存占用率阈值时,则返回步骤B。
所述的智能设备的死机状态处理方法,其中,所述步骤E中,当内存占用率依然不低于内存占用率阈值时,则返回步骤A0。
所述的智能设备的死机状态处理方法,其特征在于,所述第一时间阈值为3s~7s。
所述的智能设备的死机状态处理方法,其中,所述第一时间阈值与第二时间阈值相同。
所述的智能设备的死机状态处理方法,其中,所述内存占用率阈值为70%。
一种智能设备的死机状态处理***,其中,包括:
列表数据读取模块,用于读取程序列表数据;
日志信息保存模块,用于保存从第一时间到第二时间的日志信息,所述第一时间为当前时间减去第一时间阈值,第二时间为当前时间加上第二时间阈值;
出现次数记录模块,用于在日志信息内搜索程序列表数据中的各应用程序的名称,并统计各应用程序出现的次数;
程序强制退出模块,用于判断出现次数最多的应用程序为子进程或父进程,当是子进程时,强制退出该子进程,并检测内存占用率,当内存占用率低于内存占用率阈值时,则处理流程结束;当是父进程时,则强制退出该父进程;
程序重启模块,用于重新启动父进程,并检测内存占用率,当内存占用率低于内存占用率阈值时,则处理流程结束。
所述的智能设备的死机状态处理***,其中,还包括:
用户消息分析模块,用于当***出现死机状态时,监控程序接收用户消息,并分析用户消息命令类型,当用户消息的命令类型为自动处理时,转入列表数据读取模块。
所述的智能设备的死机状态处理***,其中,所述程序强制退出模块还用于:在强制退出该子进程后,当内存占用率不低于内存占用率阈值时,则返回日志信息保存模块。
有益效果:本发明通过对日志信息进行分析,将出现次数最高的程序强制终止,若是子进程,还要确保内存占用率低于内存占用率阈值,若是父进程,则还要重启父进程,使***恢复正常,本发明的方法可以在不断电的情况下,友好的关闭引起故障的应用程序,最大限度地保护***的稳定。
附图说明
图1为本发明一种智能设备的死机状态处理方法较佳实施例的流程图。
图2为本发明一种智能设备的死机状态处理***较佳实施例的结构框图。
具体实施方式
本发明提供一种智能设备的死机状态处理方法及***,为使本发明的目的、技术方案及效果更加清楚、明确,以下对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参阅图1,图1为本发明一种智能设备的死机状态处理方法较佳实施例的流程图,如图所示,其包括步骤:
S101、当***出现死机状态时,监控程序接收到用户消息,并判断用户消息命令类型,当用户消息的命令类型为自动处理时,转入步骤S102;当用户消息的命令类型为手动处理时,转入步骤S103;
首先在此步骤S101中,当***出现死机状态时,用户可选择死机状态的处理方式,例如手动处理或者自动处理,当用户选择了相应的处理方式后,监控程序接收到用户消息,并分析用户消息的命令类型,判断其为自动处理还是手动处理。若手动处理的话,则由用户进行处理,若自动处理的话,则由***按照流程处理。
本发明实施例中的死机状态,某个程序或某些程序出现故障,比如:1、程序由于各种原因导致运行混乱,重复运行,无法正常释放内存,并且随着运行内存占用率越来越高,导致***内存崩溃,对用户输入无响应;2、由于程序运行遇到空指针等情况,导致程序运行错误,停止不同,从而导致***停滞;3、***运行速度过慢,对用户响应过慢。
死机状态大多是由于上层应用程序导致,所以对用户输入这种底层消息,***在处于死机状态时还是可以接收,比如死机时,用户操作鼠标、键盘某个特定按键,***会上报event事件,而用户消息就是在底层处理,所以本发明实施例可通过这种接收底层消息的方式来处理死机状态。
另外,本发明更优选的实施例中,还可以设置一个自动处理的阈值,例如将该阈值设置为10分钟,当超过阈值(10分钟)还未收到用户消息,则***自动处理死机状态,即相当于用户输入的用户消息为自动处理。
S102、监控程序读取程序列表数据,保存从第一时间到第二时间的日志信息,所述第一时间为当前时间减去第一时间阈值,第二时间为当前时间加上第二时间阈值,并转入步骤S104;
其中的第一时间阈值可以是5s,当然该大小并不限于此,可根据***本身日志的冗余量来调整第一时间阈值的大小,如果***本身日志打印内容过多,可以适当减少第一时间阈值为3s,防止生成过多的日志信息;如果***本身日志打印内容不多,则可以增加第一时间阈值为7s,以增加更多的日志信息,该第一时间阈值可以在设备出厂时设置好,也可以由用户在使用过程中进行调整。该第二时间阈值的大小与第一时间阈值的大小可设置为相同,当然也可根据日志的冗余量来进行调整。
S103、监控程序读取程序列表数据,并将读取到的程序列表数据进行显示,由用户手动选择强制终止程序,同时转入步骤S109;
若用户选择的处理方式是手动处理的话,则由监控程序读取程序列表数据,然后将程序列表数据显示给用户,供用户手动选择需要终止的程序,用户可手动强制终止某个程序,直到***恢复正常,然后转入到步骤S109流程结束。
S104、在日志信息内搜索程序列表数据中的各应用程序名称,并且统计各应用程序出现的次数;
每个应用程序在启动初期,都需要自动去程序列表登记,而生成程序列表数据,登记的内容有程序名称、功能简介、依赖程序及终极依赖程序等,其中的依赖程序是指与启动的程序具有直接依赖关系的程序,终极依赖程序(也称父进程),则是指启动的程序层层调用后的最顶层应用程序,终极依赖程序是***启动后自动运行的主线程,负责***的基本功能,如终极依赖程序终止,将自动重启,并重新初始化。
在获得了日志信息后,可以在日志信息内搜索程序列表数据中的各应用程序的名称,以统计出各应用程序在日志信息内的出现次数,并统计各应用程序的出现次数,一般来说,出现次数最多的应用程序是引起***死机的故障程序,需要终止该程序,所以本步骤事先统计各应用程序的出现次数。
S105、判断出现次数最多的应用程序为子进程或父进程,当是子进程时,进入步骤S106,当是父进程时,进入步骤S107;
出现次数最多的程序有可能是子进程,即非终极依赖程序,也有可能是父进程,针对程序类型不同,处理方式不同,当是子进程时,进入步骤S106,当是父进程时,进入步骤S107。
其中父进程与子进程的关系是管理和被管理的关系,当父进程终止时,子进程也随之而终止,但子进程终止,父进程并不一定终止,当被某个父进程或子进程占用资源过多时,应该终止相应的进程,以保护***的稳定安全运行。
S106、强制退出该子进程,并检测内存占用率,判断内存占用率是否低于内存占用率阈值,当内存占用率低于内存占用率阈值时,则转入步骤S109,当内存占用率不低于内存占用率阈值时,则返回步骤S102;
在本步骤中,由于出现次数最多的应用程序为子进程,所以强制退出该子进程,然后检测内容占用率,判断内存占用率是否低于一定的阈值(内存占用率阈值),在小于内存占用率阈值时,则说明***恢复正常,流程结束,若不小于内存占用率阈值,则说明***还未恢复正常,需要重新保存日志信息,查找到出现次数最多的应用程序,即返回到步骤S102中重新执行流程。
其中的内存占用率阈值可以是70%,显然这个值是可以根据***正常运行时的内存占用率进行估算调整,例如在设备出厂前,将***正常运行时的内存占用率作为内存占用率阈值。
S107、强制退出该父进程,并转入步骤S108;
在出现次数最多的程序为父进程的情况下,可强制终止该父进程。
S108、重新启动父进程,判断内存占用率是否低于内存占用率阈值,当是时进入步骤S109,否则返回步骤S101;
父进程在被终止后,会重新启动,在父进程重新启动后,判断内存占用率是否低于内存占用率阈值,当内存占用率低于内存占用率阈值时,则流程结束,即进入步骤S109,否则说明***还是处于死机状态,则转入到步骤S101,由用户再次选择处理方式,重新处理一遍。
S109、处理流程结束。
基于上述方法,本发明还提供一种智能设备的死机状态处理***较佳实施例,如图2所示,其包括:
列表数据读取模块100,用于读取程序列表数据;
日志信息保存模块200,用于保存从第一时间到第二时间的日志信息,所述第一时间为当前时间减去第一时间阈值,第二时间为当前时间加上第二时间阈值;
出现次数记录模块300,用于在日志信息内搜索程序列表数据中的各应用程序的名称,并统计各应用程序出现的次数;
程序强制退出模块400,用于判断出现次数最多的应用程序为子进程或父进程,当是子进程时,强制退出该子进程,并检测内存占用率,当内存占用率低于内存占用率阈值时,则处理流程结束;当是父进程时,则强制退出该父进程;
程序重启模块500,用于重新启动父进程,并检测内存占用率,当内存占用率低于内存占用率阈值时,则处理流程结束。
还包括:用户消息分析模块,用于当***出现死机状态时,监控程序接收用户消息,并分析用户消息命令类型,当用户消息的命令类型为自动处理时,转入列表数据读取模块。
进一步,所述程序强制退出模块400还用于:在强制退出该子进程后,当内存占用率不低于内存占用率阈值时,则返回日志信息保存模块。
关于上述模块单元的技术细节在前面的方法中已有详述,故不再赘述。
综上所述,本发明通过对日志信息进行分析,将出现次数最高的程序强制终止,若是子进程,还要确保内存占用率低于内存占用率阈值,若是父进程,则还要重启父进程,使***恢复正常,本发明的方法可以在不断电的情况下,友好的关闭引起故障的应用程序,最大限度地保护***的稳定。
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。

Claims (10)

1.一种智能设备的死机状态处理方法,其特征在于,包括步骤:
A、监控程序读取程序列表数据;
B、保存从第一时间到第二时间的日志信息,所述第一时间为当前时间减去第一时间阈值,第二时间为当前时间加上第二时间阈值;
C、在日志信息内搜索程序列表数据中的各应用程序的名称,并统计各应用程序出现的次数;
D、判断出现次数最多的应用程序为子进程或父进程,当是子进程时,强制退出该子进程,并检测内存占用率,当内存占用率低于内存占用率阈值时,则处理流程结束;当是父进程时,则强制退出该父进程,并转入步骤E;
E、重新启动父进程,并检测内存占用率,当内存占用率低于内存占用率阈值时,则处理流程结束。
2.根据权利要求1所述的智能设备的死机状态处理方法,其特征在于,所述步骤A之前还包括:
A0、当***出现死机状态时,监控程序接收用户消息,并分析用户消息命令类型,当用户消息的命令类型为自动处理时,转入步骤A。
3.根据权利要求1所述的智能设备的死机状态处理方法,其特征在于,所述步骤D中,在强制退出该子进程后,当内存占用率不低于内存占用率阈值时,则返回步骤B。
4.根据权利要求2所述的智能设备的死机状态处理方法,其特征在于,所述步骤E中,当内存占用率依然不低于内存占用率阈值时,则返回步骤A0。
5.根据权利要求1所述的智能设备的死机状态处理方法,其特征在于,所述第一时间阈值为3s~7s。
6.根据权利要求1所述的智能设备的死机状态处理方法,其特征在于,所述第一时间阈值与第二时间阈值相同。
7.根据权利要求1所述的智能设备的死机状态处理方法,其特征在于,所述内存占用率阈值为70%。
8.一种智能设备的死机状态处理***,其特征在于,包括:
列表数据读取模块,用于读取程序列表数据;
日志信息保存模块,用于保存从第一时间到第二时间的日志信息,所述第一时间为当前时间减去第一时间阈值,第二时间为当前时间加上第二时间阈值;
出现次数记录模块,用于在日志信息内搜索程序列表数据中的各应用程序的名称,并统计各应用程序出现的次数;
程序强制退出模块,用于判断出现次数最多的应用程序为子进程或父进程,当是子进程时,强制退出该子进程,并检测内存占用率,当内存占用率低于内存占用率阈值时,则处理流程结束;当是父进程时,则强制退出该父进程;
程序重启模块,用于重新启动父进程,并检测内存占用率,当内存占用率低于内存占用率阈值时,则处理流程结束。
9.根据权利要求8所述的智能设备的死机状态处理***,其特征在于,还包括:
用户消息分析模块,用于当***出现死机状态时,监控程序接收用户消息,并分析用户消息命令类型,当用户消息的命令类型为自动处理时,转入列表数据读取模块。
10.根据权利要求8所述的智能设备的死机状态处理***,其特征在于,所述程序强制退出模块还用于:在强制退出该子进程后,当内存占用率不低于内存占用率阈值时,则返回日志信息保存模块。
CN201410262828.4A 2014-06-13 2014-06-13 一种智能设备的死机状态处理方法及*** Active CN105224861B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410262828.4A CN105224861B (zh) 2014-06-13 2014-06-13 一种智能设备的死机状态处理方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410262828.4A CN105224861B (zh) 2014-06-13 2014-06-13 一种智能设备的死机状态处理方法及***

Publications (2)

Publication Number Publication Date
CN105224861A CN105224861A (zh) 2016-01-06
CN105224861B true CN105224861B (zh) 2018-04-06

Family

ID=54993824

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410262828.4A Active CN105224861B (zh) 2014-06-13 2014-06-13 一种智能设备的死机状态处理方法及***

Country Status (1)

Country Link
CN (1) CN105224861B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114996013B (zh) * 2022-06-09 2023-06-02 河南省肿瘤医院 一种基于嵌入式的微波治疗设备

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101996106A (zh) * 2010-12-17 2011-03-30 南京中兴力维软件有限公司 一种对软件运行状态进行监控的方法
CN102141942A (zh) * 2011-04-01 2011-08-03 奇智软件(北京)有限公司 一种设备的监控保护方法及装置
US8230429B2 (en) * 2008-05-30 2012-07-24 International Business Machines Corporation Detecting a deadlock condition by monitoring firmware inactivity during the system IPL process
CN102929761A (zh) * 2012-11-16 2013-02-13 赛尔网络有限公司 一种应对崩溃性错误的***及方法
CN102968352A (zh) * 2012-12-14 2013-03-13 杨晓松 进程监控及多级恢复***和方法
CN103377074A (zh) * 2012-04-28 2013-10-30 Tcl集团股份有限公司 一种在java环境中执行程序的方法及***
CN103870747A (zh) * 2014-03-31 2014-06-18 可牛网络技术(北京)有限公司 一种应用程序的监控及处理方法及装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8230429B2 (en) * 2008-05-30 2012-07-24 International Business Machines Corporation Detecting a deadlock condition by monitoring firmware inactivity during the system IPL process
CN101996106A (zh) * 2010-12-17 2011-03-30 南京中兴力维软件有限公司 一种对软件运行状态进行监控的方法
CN102141942A (zh) * 2011-04-01 2011-08-03 奇智软件(北京)有限公司 一种设备的监控保护方法及装置
CN103377074A (zh) * 2012-04-28 2013-10-30 Tcl集团股份有限公司 一种在java环境中执行程序的方法及***
CN102929761A (zh) * 2012-11-16 2013-02-13 赛尔网络有限公司 一种应对崩溃性错误的***及方法
CN102968352A (zh) * 2012-12-14 2013-03-13 杨晓松 进程监控及多级恢复***和方法
CN103870747A (zh) * 2014-03-31 2014-06-18 可牛网络技术(北京)有限公司 一种应用程序的监控及处理方法及装置

Also Published As

Publication number Publication date
CN105224861A (zh) 2016-01-06

Similar Documents

Publication Publication Date Title
CN109726072B (zh) WebLogic服务器的监控告警方法、装置、***及计算机存储介质
CN109918141B (zh) 线程执行方法、装置、终端及存储介质
US10545807B2 (en) Method and system for acquiring parameter sets at a preset time interval and matching parameters to obtain a fault scenario type
EP2733611A1 (en) Internal fault handling method, device and system for virtual machine
CN107783829B (zh) 任务处理方法、装置、存储介质和计算机设备
CN109542744A (zh) 检测终端开机异常问题的方法、装置、存储介质及终端
CN102946468A (zh) 一种手机运行程序异常自动报警的方法及***
CN113010275B (zh) 一种中断处理方法和装置
CN105045708A (zh) 软件运行错误处理方法及***
CN106454498B (zh) Android平台管理USB设备的方法
CN106095413B (zh) 一种蓝牙驱动程序的配置方法及装置
CN113409555B (zh) 一种基于物联网的实时报警联动方法及***
CN106951321B (zh) 虚拟机cpu资源的管理方法及装置
WO2020211253A1 (zh) 分布式***中主机数量弹性伸缩方法、装置和计算机设备
CN110659147B (zh) 一种基于模块自检行为的自修复方法和***
CN111831467A (zh) java进程内存溢出自熔断的方法、***和电子设备
CN103902401B (zh) 基于监控的虚拟机容错方法及装置
CN103354990A (zh) 处理云平台中的虚拟机的***和方法
CN105224861B (zh) 一种智能设备的死机状态处理方法及***
CN107911229B (zh) 运行状态改变的提醒方法、装置、电子设备及存储介质
US20230409391A1 (en) Thread priority adjusting method, terminal, and computer-readable storage medium
CN106874126A (zh) 一种软件开发中主进程异常检测方法
CN106020426B (zh) 一种唤醒锁的释放方法和装置
CN117149482A (zh) 一种对线程状态进行检测的方法和装置、电子设备、介质
CN104166599A (zh) 一种arm设备重启恢复出厂配置的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant