首页 > 专利 > 努比亚技术有限公司 > 基于MDSS的重启定位方法、移动终端及可读存储介质专利详情

基于MDSS的重启定位方法、移动终端及可读存储介质   0    0

有效专利 查看PDF
专利申请流程有哪些步骤?
专利申请流程图
申请
申请号:指国家知识产权局受理一件专利申请时给予该专利申请的一个标示号码。唯一性原则。
申请日:提出专利申请之日。
2017-12-28
申请公布
申请公布指发明专利申请经初步审查合格后,自申请日(或优先权日)起18个月期满时的公布或根据申请人的请求提前进行的公布。
申请公布号:专利申请过程中,在尚未取得专利授权之前,国家专利局《专利公报》公开专利时的编号。
申请公布日:申请公开的日期,即在专利公报上予以公开的日期。
2019-02-26
授权
授权指对发明专利申请经实质审查没有发现驳回理由,授予发明专利权;或对实用新型或外观设计专利申请经初步审查没有发现驳回理由,授予实用新型专利权或外观设计专利权。
2022-03-18
预估到期
发明专利权的期限为二十年,实用新型专利权期限为十年,外观设计专利权期限为十五年,均自申请日起计算。专利届满后法律终止保护。
2037-12-28
基本信息
有效性 有效专利 专利类型 发明专利
申请号 CN201711472473.1 申请日 2017-12-28
公开/公告号 CN108108257B 公开/公告日 2022-03-18
授权日 2022-03-18 预估到期日 2037-12-28
申请年 2017年 公开/公告年 2022年
缴费截止日
分类号 G06F11/07G06F11/34 主分类号 G06F11/07
是否联合申请 独立申请 文献类型号 B
独权数量 1 从权数量 7
权利要求数量 8 非专利引证数量 0
引用专利数量 2 被引证专利数量 0
非专利引证
引用专利 US2013227356A1、CN107515808A 被引证专利
专利权维持 4 专利申请国编码 CN
专利事件 事务标签 公开、实质审查、授权
申请人信息
申请人 第一申请人
专利权人 努比亚技术有限公司 当前专利权人 努比亚技术有限公司
发明人 周龙 第一发明人 周龙
地址 广东省深圳市南山区高新区北环大道9018号大族创新大厦A区6-8层、10-11层、B区6层、C区6-10层 邮编 518057
申请人数量 1 发明人数量 1
申请人所在省 广东省 申请人所在市 广东省深圳市
代理人信息
代理机构
专利代理机构是经省专利管理局审核,国家知识产权局批准设立,可以接受委托人的委托,在委托权限范围内以委托人的名义办理专利申请或其他专利事务的服务机构。
深圳协成知识产权代理事务所 代理人
专利代理师是代理他人进行专利申请和办理其他专利事务,取得一定资格的人。
章小燕
摘要
本发明公开了一种基于MDSS的重启定位方法、移动终端及可读存储介质,该方法包括以下步骤:当监测到移动终端Kernel层MDSS管理模块中的预设关键信息点对应位置的直接内存访问处于异常状态后,读取直接内存访问对应的异常标识;将异常标识与预存的日志标识进行匹配;若异常标识与日志标识匹配成功,则根据日志标识查找与日志标识关联的日志信息,并获取与直接内存访问对应进程的进程信息;根据进程信息和日志信息生成重启日志,以根据重启日志定位移动终端重启原因。本发明提高了定位移动终端发生重启操作的原因的效率,以及减少了人力成本。
  • 摘要附图
    基于MDSS的重启定位方法、移动终端及可读存储介质
  • 说明书附图:图1
    基于MDSS的重启定位方法、移动终端及可读存储介质
  • 说明书附图:图2
    基于MDSS的重启定位方法、移动终端及可读存储介质
  • 说明书附图:图3
    基于MDSS的重启定位方法、移动终端及可读存储介质
  • 说明书附图:图4
    基于MDSS的重启定位方法、移动终端及可读存储介质
  • 说明书附图:图5
    基于MDSS的重启定位方法、移动终端及可读存储介质
  • 说明书附图:图6
    基于MDSS的重启定位方法、移动终端及可读存储介质
法律状态
序号 法律状态公告日 法律状态 法律状态信息
1 2022-03-18 授权
2 2019-02-26 实质审查的生效 IPC(主分类): G06F 11/07 专利申请号: 201711472473.1 申请日: 2017.12.28
3 2018-06-01 公开
权利要求
权利要求书是申请文件最核心的部分,是申请人向国家申请保护他的发明创造及划定保护范围的文件。
1.一种基于MDSS的重启定位方法,其特征在于,所述重启定位方法应用于移动终端,所述重启定位方法包括以下步骤:
当监测到移动终端Kernel层MDSS管理模块中的预设关键信息点对应位置的直接内存访问处于异常状态后,读取所述直接内存访问对应的异常标识;
将所述异常标识与预存的日志标识进行匹配;
若所述异常标识与所述日志标识匹配成功,则根据所述日志标识查找与所述日志标识关联的日志信息,并获取与所述直接内存访问对应进程的进程信息;
根据所述进程信息和所述日志信息生成重启日志,以根据所述重启日志定位所述移动终端重启原因;
其中,关键信息点为预先设置在MDSS管理模块对应的调用流程和其内部基本功能时序逻辑中的信息点,用来监测调用流程和时序逻辑是否处于异常状态的信息点。

2.如权利要求1所述的基于MDSS的重启定位方法,其特征在于,所述当监测到移动终端Kernel层MDSS管理模块中的预设关键信息点对应位置的直接内存访问处于异常状态后,读取所述直接内存访问对应的异常标识的步骤包括:
当检测到监测移动终端Kernel层MDSS管理模块中的预设关键信息点的监测指令后,根据所述监测指令读取所述关键信息点的状态值;
根据所述状态值确定所述关键信息点对应位置的直接内存访问是否处于异常状态;
若所述直接内存访问处于异常状态,则读取所述直接内存访问对应的异常标识。

3.如权利要求1所述的基于MDSS的重启定位方法,其特征在于,根据所述进程信息和所述日志信息生成重启日志,以根据所述重启日志定位所述移动终端重启原因的步骤之前,还包括:
判断在获取到所述进程信息后的第一预设时间内是否再次监测到所述关键信息点对应位置的直接内存访问处于异常状态;
若在所述第一预设时间内再次监测到所述关键信息点对应位置的直接内存访问处于异常状态,则存储所述进程信息。

4.如权利要求1所述的基于MDSS的重启定位方法,其特征在于,根据所述进程信息和所述日志信息生成重启日志,以根据所述重启日志定位所述移动终端重启原因的步骤之后,还包括:
存储所述重启日志,并确定在第二预设时间内存储的所述重启日志;
对所述第二预设时间内存储的日志信息执行去冗余操作,以节省存储空间。

5.如权利要求1至4任一项所述的基于MDSS的重启定位方法,其特征在于,所述当监测到移动终端Kernel层MDSS管理模块中的预设关键信息点对应位置的直接内存访问处于异常状态后,读取所述直接内存访问对应的异常标识的步骤之前,还包括:
确定所述Kernel层中MDSS管理模块调用流程的识别节点、加载节点、初始化节点、运行节点、指令调配节点、跨进程数据通信节点、卸载节点、资源申请和释放节点、以及磁盘读写操作节点;
在所述识别节点、加载节点、初始化节点、运行节点、指令调配节点、跨进程数据通信节点、卸载节点、资源申请和释放节点、以及磁盘读写操作节点中设置关键信息点。

6.如权利要求1至4任一项所述的基于MDSS的重启定位方法,其特征在于,所述当监测到移动终端Kernel层MDSS管理模块中的预设关键信息点对应位置的直接内存访问处于异常状态后,读取所述直接内存访问对应的异常标识的步骤之前,还包括:
确定监测所述关键信息点对应位置的直接内存访问是否处于异常状态的线程,并将所述线程部署在所述Kernel层的kthreadd进程和kernel进程中。

7.一种移动终端,其特征在于,所述移动终端包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于MDSS的重启定位程序,所述基于MDSS的重启定位程序被所述处理器执行时实现如权利要求1至6中任一项所述的基于MDSS的重启定位方法的步骤。

8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有基于MDSS的重启定位程序,所述基于MDSS的重启定位程序被处理器执行时实现如权利要求1至6中任一项所述的基于MDSS的重启定位方法的步骤。
说明书

技术领域

[0001] 本发明涉及通信技术领域,尤其涉及一种基于MDSS的重启定位方法、移动终端及可读存储介质。

背景技术

[0002] 随着终端技术的快速发展,手机及平板电脑等移动终端已成为人们工作和生活的必备工具。用户在使用移动终端的过程中,会出现移动终端自动重启的现象,而导致移动终端自动重启的原因可能是在移动终端上市之前已存在的,只是开发人员没有发现的。此时,用户需要将该移动终端返厂,由测试人员进行大量的测试工作,以确定导致移动终端出现重启的原因。
[0003] 目前,在测试领域,对移动终端操作系统进行重启压力测试的方法依然是采用人工测试的方法,手动重启手机,随后进行压力测试。然而,这种测试方法过于耗费人力和时间,尤其是对漏洞BUG复现率较低的移动终端,例如,移动终端重启1000次可能就只出现一次或几次BUG,时间和人力的投入过大而产出很小,很显然,这种分析移动终端发生重启操作原因的做法是极其低效的。因此,如何快速定位移动终端发生重启操作的原因是目前亟待解决的问题。

发明内容

[0004] 本发明的主要目的在于提出一种基于MDSS的重启定位方法、移动终端及可读存储介质,旨在解决如何快速定位移动终端发生重启操作的原因的技术问题。
[0005] 为实现上述目的,本发明提供了一种基于MDSS的重启定位方法,所述基于MDSS的重启定位方法包括:
[0006] 当监测到移动终端Kernel层MDSS管理模块中的预设关键信息点对应位置的直接内存访问处于异常状态后,读取所述直接内存访问对应的异常标识;
[0007] 将所述异常标识与预存的日志标识进行匹配;
[0008] 若所述异常标识与所述日志标识匹配成功,则根据所述日志标识查找与所述日志标识关联的日志信息,并获取与所述直接内存访问对应进程的进程信息;
[0009] 根据所述进程信息和所述日志信息生成重启日志,以根据所述重启日志定位所述移动终端重启原因。
[0010] 可选地,所述当监测到移动终端Kernel层MDSS管理模块中的预设关键信息点对应位置的直接内存访问处于异常状态后,读取所述直接内存访问对应的异常标识的步骤包括:
[0011] 当检测到监测移动终端Kernel层MDSS管理模块中的预设关键信息点的监测指令后,根据所述监测指令读取所述关键信息点的状态值;
[0012] 根据所述状态值确定所述关键信息点对应位置的直接内存访问是否处于异常状态;
[0013] 若所述直接内存访问处于异常状态,则读取所述直接内存访问对应的异常标识。
[0014] 可选地,根据所述监测指令读取所述关键信息点的状态值的步骤包括:
[0015] 根据所述监测指令按照第一读取频率读取所述关键信息点预设数量的第一状态值;
[0016] 若根据预设数量的所述第一状态值都确定所述直接内存访问处于正常状态,则按照第二读取频率读取所述关键信息点预设数量的第二状态值;
[0017] 若根据预设数量的所述第二状态值都确定所述直接内存访问处于正常状态,则按照第三读取频率读取所述关键信息点的第三状态值,其中,所述第二读取频率大于所述第一读取频率,小于所述第三读取频率。
[0018] 可选地,根据所述监测指令按照第一读取频率读取所述关键信息点预设数量的第一状态值的步骤之后,还包括:
[0019] 若根据一个所述第一状态值确定所述直接内存访问处于异常状态,则检测所述移动终端是否发生重启操作;
[0020] 若所述移动终端未发生重启操作,则按照第四读取频率读取所述关键信息点的状态值。
[0021] 可选地,根据所述进程信息和所述日志信息生成重启日志,以根据所述重启日志定位所述移动终端重启原因的步骤之前,还包括:
[0022] 判断在获取到所述进程信息后的第一预设时间内是否再次监测到所述关键信息点对应位置的直接内存访问处于异常状态;
[0023] 若在所述第一预设时间内再次监测到所述关键信息点对应位置的直接内存访问处于异常状态,则存储所述进程信息。
[0024] 可选地,根据所述进程信息和所述日志信息生成重启日志,以根据所述重启日志定位所述移动终端重启原因的步骤之后,还包括:
[0025] 存储所述重启日志,并确定在第二预设时间内存储的所述重启日志;
[0026] 对所述第二预设时间内存储的日志信息执行去冗余操作,以节省存储空间。
[0027] 可选地,所述当监测到移动终端Kernel层MDSS管理模块中的预设关键信息点对应位置的直接内存访问处于异常状态后,读取所述直接内存访问对应的异常标识的步骤之前,还包括:
[0028] 确定所述Kernel层中MDSS管理模块调用流程的识别节点、加载节点、初始化节点、运行节点、指令调配节点、跨进程数据通信节点、卸载节点、资源申请和释放节点、以及磁盘读写操作节点;
[0029] 在所述识别节点、加载节点、初始化节点、运行节点、指令调配节点、跨进程数据通信节点、卸载节点、资源申请和释放节点、以及磁盘读写操作节点中设置关键信息点。
[0030] 可选地,所述当监测到移动终端Kernel层MDSS管理模块中的预设关键信息点对应位置的直接内存访问处于异常状态后,读取所述直接内存访问对应的异常标识的步骤之前,还包括:
[0031] 确定监测所述关键信息点对应位置的直接内存访问是否处于异常状态的线程,并将所述线程部署在所述Kernel层的kthreadd进程和kernel进程中。
[0032] 此外,为实现上述目的,本发明还提供一种移动终端,所述移动终端包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于MDSS的重启定位程序,所述基于MDSS的重启定位程序被所述处理器执行时实现如上文所述的基于MDSS的重启定位方法的步骤。
[0033] 此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有基于MDSS的重启定位程序,所述基于MDSS的重启定位程序被处理器执行时实现如上文所述的基于MDSS的重启定位方法的步骤。
[0034] 本发明通过当监测到移动终端Kernel层MDSS管理模块中的预设关键信息点对应位置的直接内存访问处于异常状态后,读取所述直接内存访问对应的异常标识;将所述异常标识与预存的日志标识进行匹配;若所述异常标识与所述日志标识匹配成功,则根据所述日志标识查找与所述日志标识关联的日志信息,并获取与所述直接内存访问对应进程的进程信息;根据所述进程信息和所述日志信息生成重启日志,以根据所述重启日志定位所述移动终端重启原因。实现了在移动终端未发生重启操作之前,预先获取移动终端会发生重启操作对应的重启日志,以便于在移动终端发生重启操作后,相应的工作人员可以根据重启日志快速确定导致移动终端重启的原因,提高了定位移动终端发生重启故障的原因的效率,以及减少了人力成本。

实施方案

[0042] 应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0043] 在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。
[0044] 终端可以以各种形式来实施。例如,本发明中描述的终端可以包括诸如手机、平板电脑、笔记本电脑、掌上电脑、个人数字助理(Personal Digital Assistant,PDA)、便捷式媒体播放器(Portable Media Player,PMP)、导航装置、可穿戴设备、智能手环、计步器等移动终端,以及诸如数字TV、台式计算机等固定终端。
[0045] 后续描述中将以移动终端为例进行说明,本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本发明的实施方式的构造也能够应用于固定类型的终端。
[0046] 请参阅图1,其为实现本发明各个实施例的一种移动终端的硬件结构示意图,该移动终端100可以包括:RF(Radio Frequency,射频)单元101、Wi‑Fi模块102、音频输出单元103、传感器105、显示单元106、用户输入单元107、接口单元108、存储器109、处理器110、以及电源111等部件。本领域技术人员可以理解,图1中示出的移动终端100结构并不构成对移动终端100的限定,移动终端100可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
[0047] 下面结合图1对移动终端100的各个部件进行具体的介绍:
[0048] 射频单元101可用于收发信息或通话过程中,信号的接收和发送,具体的,将基站的下行信息接收后,给处理器110处理;另外,将上行的数据发送给基站。通常,射频单元101包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。此外,射频单元101还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于GSM(Global System of Mobile communication,全球移动通讯系统)、GPRS(General Packet Radio Service,通用分组无线服务)、CDMA2000(Code Division Multiple Access 2000,码分多址2000)、WCDMA(Wideband Code Division Multiple Access,宽带码分多址)、TD‑SCDMA(Time Division Synchronous Code Division Multiple Access,时分同步码分多址)、FDD‑LTE(Frequency Division Duplexing‑Long Term Evolution,频分双工长期演进)和TDD‑LTE(Time Division Duplexing‑Long Term Evolution,分时双工长期演进)等。
[0049] Wi‑Fi属于短距离无线传输技术,移动终端100通过Wi‑Fi模块102可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图1示出了Wi‑Fi模块102,但是可以理解的是,其并不属于移动终端100的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
[0050] 音频输出单元103可以在移动终端100处于呼叫信号接收模式、通话模式、记录模式、语音识别模式、广播接收模式等等模式下时,将射频单元101或Wi‑Fi模块102接收的或者在存储器109中存储的音频数据转换成音频信号并且输出为声音。而且,音频输出单元103还可以提供与移动终端100执行的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等等)。音频输出单元103可以包括扬声器、蜂鸣器等等。
[0051] 移动终端100还包括至少一种传感器105,比如光传感器、运动传感器以及其他传感器。具体地,光传感器包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1061的亮度,接近传感器可在移动终端100移动到耳边时,关闭显示面板1061和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的指纹传感器、压力传感器、虹膜传感器、分子传感器、陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
[0052] 显示单元106用于显示由用户输入的信息或提供给用户的信息。显示单元106可包括显示面板1061,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light‑Emitting Diode,OLED)等形式来配置显示面板1061。
[0053] 用户输入单元107可用于接收输入的数字或字符信息,以及产生与移动终端的用户设置以及功能控制有关的键信号输入。具体地,用户输入单元107可包括触控面板1071以及其他输入设备1072。触控面板1071,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1071上或在触控面板1071附近的操作),并根据预先设定的程式驱动相应的连接装置。触控面板1071可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器110,并能接收处理器110发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1071。除了触控面板1071,用户输入单元107还可以包括其他输入设备1072。具体地,其他输入设备1072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种,具体此处不做限定。
[0054] 进一步的,触控面板1071可覆盖显示面板1061,当触控面板1071检测到在其上或附近的触摸操作后,传送给处理器110以确定触摸事件的类型,随后处理器110根据触摸事件的类型在显示面板1061上提供相应的视觉输出。虽然在图1中,触控面板1071与显示面板1061是作为两个独立的部件来实现移动终端的输入和输出功能,但是在某些实施例中,可以将触控面板1071与显示面板1061集成而实现移动终端的输入和输出功能,具体此处不做限定。
[0055] 接口单元108用作至少一个外部装置与移动终端100连接可以通过的接口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(I/O)端口、视频I/O端口、耳机端口等等。接口单元108可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到移动终端100内的一个或多个元件或者可以用于在移动终端100和外部装置之间传输数据。
[0056] 存储器109可用于存储软件程序以及各种数据。存储器109可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器109可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
[0057] 处理器110是移动终端100的控制中心,利用各种接口和线路连接整个移动终端的各个部分,通过运行或执行存储在存储器109内的软件程序和/或模块,以及调用存储在存储器109内的数据,执行移动终端100的各种功能和处理数据,从而对移动终端100进行整体监控。处理器110可包括一个或多个处理单元;优选的,处理器110可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器110中。
[0058] 此外,在图1所示的移动终端中,处理器110用于调用存储器109中存储的基于MDSS的重启定位程序,并执行以下操作:
[0059] 当监测到移动终端100Kernel层MDSS管理模块中的预设关键信息点对应位置的直接内存访问处于异常状态后,读取所述直接内存访问对应的异常标识;
[0060] 将所述异常标识与预存的日志标识进行匹配;
[0061] 若所述异常标识与所述日志标识匹配成功,则根据所述日志标识查找与所述日志标识关联的日志信息,并获取与所述直接内存访问对应进程的进程信息;
[0062] 根据所述进程信息和所述日志信息生成重启日志,以根据所述重启日志定位所述移动终端100重启原因。
[0063] 进一步地,所述当监测到移动终端100Kernel层MDSS管理模块中的预设关键信息点对应位置的直接内存访问处于异常状态后,读取所述直接内存访问对应的异常标识的步骤包括:
[0064] 当检测到监测移动终端100Kernel层MDSS管理模块中的预设关键信息点的监测指令后,根据所述监测指令读取所述关键信息点的状态值;
[0065] 根据所述状态值确定所述关键信息点对应位置的直接内存访问是否处于异常状态;
[0066] 若所述直接内存访问处于异常状态,则读取所述直接内存访问对应的异常标识。
[0067] 进一步地,根据所述监测指令读取所述关键信息点的状态值的步骤包括:
[0068] 根据所述监测指令按照第一读取频率读取所述关键信息点预设数量的第一状态值;
[0069] 若根据预设数量的所述第一状态值都确定所述直接内存访问处于正常状态,则按照第二读取频率读取所述关键信息点预设数量的第二状态值;
[0070] 若根据预设数量的所述第二状态值都确定所述直接内存访问处于正常状态,则按照第三读取频率读取所述关键信息点的第三状态值,其中,所述第二读取频率大于所述第一读取频率,小于所述第三读取频率。
[0071] 进一步地,根据所述监测指令按照第一读取频率读取所述关键信息点预设数量的第一状态值的步骤之后,处理器110还用于调用存储器109中存储的基于MDSS的重启定位程序,以实现以下步骤:
[0072] 若根据一个所述第一状态值确定所述直接内存访问处于异常状态,则检测所述移动终端100是否发生重启操作;
[0073] 若所述移动终端100未发生重启操作,则按照第四读取频率读取所述关键信息点的状态值。
[0074] 进一步地,根据所述进程信息和所述日志信息生成重启日志,以根据所述重启日志定位所述移动终端100重启原因的步骤之前,处理器110还用于调用存储器109中存储的基于MDSS的重启定位程序,以实现以下步骤:
[0075] 判断在获取到所述进程信息后的第一预设时间内是否再次监测到所述关键信息点对应位置的直接内存访问处于异常状态;
[0076] 若在所述第一预设时间内再次监测到所述关键信息点对应位置的直接内存访问处于异常状态,则存储所述进程信息。
[0077] 进一步地,根据所述进程信息和所述日志信息生成重启日志,以根据所述重启日志定位所述移动终端100重启原因的步骤之后,处理器110还用于调用存储器109中存储的基于MDSS的重启定位程序,以实现以下步骤:
[0078] 存储所述重启日志,并确定在第二预设时间内存储的所述重启日志;
[0079] 对所述第二预设时间内存储的日志信息执行去冗余操作,以节省存储空间。
[0080] 进一步地,所述当监测到移动终端100Kernel层MDSS管理模块中的预设关键信息点对应位置的直接内存访问处于异常状态后,读取所述直接内存访问对应的异常标识的步骤之前,处理器110还用于调用存储器109中存储的基于MDSS的重启定位程序,以实现以下步骤:
[0081] 确定所述Kernel层中MDSS管理模块调用流程的识别节点、加载节点、初始化节点、运行节点、指令调配节点、跨进程数据通信节点、卸载节点、资源申请和释放节点、以及磁盘读写操作节点;
[0082] 在所述识别节点、加载节点、初始化节点、运行节点、指令调配节点、跨进程数据通信节点、卸载节点、资源申请和释放节点、以及磁盘读写操作节点中设置关键信息点。
[0083] 进一步地,所述当监测到移动终端100Kernel层MDSS管理模块中的预设关键信息点对应位置的直接内存访问处于异常状态后,读取所述直接内存访问对应的异常标识的步骤之前,处理器110还用于调用存储器109中存储的基于MDSS的重启定位程序,以实现以下步骤:
[0084] 确定监测所述关键信息点对应位置的直接内存访问是否处于异常状态的线程,并将所述线程部署在所述Kernel层的kthreadd进程和kernel进程中。
[0085] 移动终端100还可以包括给各个部件供电的电源111(比如电池),优选的,电源111可以通过电源管理系统与处理器110逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
[0086] 尽管图1未示出,移动终端100还可以包括蓝牙模块等,在此不再赘述。
[0087] 为了便于理解本发明实施例,下面对本发明的移动终端所基于的通信网络系统进行描述。
[0088] 请参阅图2,图2为本发明实施例提供的一种通信网络系统架构图,该通信网络系统为通用移动通信技术的LTE系统,该LTE系统包括依次通讯连接的UE(User Equipment,用户设备)201,E‑UTRAN(Evolved UMTS Terrestrial Radio Access Network,演进式UMTS陆地无线接入网)202,EPC(Evolved Packet Core,演进式分组核心网)203和运营商的IP业务204。
[0089] 具体地,UE201可以是上述移动终端100,此处不再赘述。
[0090] E‑UTRAN202包括eNodeB2021和其它eNodeB2022等。其中,eNodeB2021可以通过回程(backhaul)(例如X2接口)与其它eNodeB2022连接,eNodeB2021连接到EPC203,eNodeB2021可以提供UE201到EPC203的接入。
[0091] EPC203可以包括MME(Mobility Management Entity,移动性管理实体)2031,HSS(Home Subscriber Server,归属用户服务器)2032,其它MME2033,SGW(Serving Gate Way,服务网关)2034,PGW(PDN Gate Way,分组数据网络网关)2035和PCRF(Policy and Charging Rules Function,政策和资费功能实体)2036等。其中,MME2031是处理UE201和EPC203之间信令的控制节点,提供承载和连接管理。HSS2032用于提供一些寄存器来管理诸如归属位置寄存器(图中未示)之类的功能,并且保存有一些有关服务特征、数据速率等用户专用的信息。所有用户数据都可以通过SGW2034进行发送,PGW2035可以提供UE 201的IP地址分配以及其它功能,PCRF2036是业务数据流和IP承载资源的策略与计费控制策略决策点,它为策略与计费执行功能单元(图中未示)选择及提供可用的策略和计费控制决策。
[0092] IP业务204可以包括因特网、内联网、IMS(IP Multimedia Subsystem,IP多媒体子系统)或其它IP业务等。
[0093] 虽然上述以LTE系统为例进行了介绍,但本领域技术人员应当知晓,本发明不仅仅适用于LTE系统,也可以适用于其他无线通信系统,例如GSM、CDMA2000、WCDMA、TD‑SCDMA以及未来新的网络系统等,此处不做限定。
[0094] 基于上述终端硬件结构以及通信网络系统,提出本发明基于MDSS的重启定位方法的各个实施例。
[0095] 本发明提供一种基于MDSS的重启定位方法。
[0096] 参照图3,图3为本发明基于MDSS的重启定位方法第一实施例的流程示意图。
[0097] 在本实施例中,提供了基于MDSS的重启定位方法的实施例,需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
[0098] 在本实施例中,该基于MDSS的重启定位方法包括:
[0099] 步骤S101,当监测到移动终端Kernel层MDSS管理模块中的预设关键信息点对应位置的直接内存访问处于异常状态后,读取直接内存访问对应的异常标识。
[0100] 本发明主要是针对移动终端Kernel层MDSS(Multimedia Display Sub System,多媒体显示子系统)管理模块中需要使用已注册的直接内存访问,即regdma interrupt的场景,在MDSS管理模块中,根据直接内存访问的属性对使用直接内存访问的场景进行分类,并对分类后的直接内存访问进行条件限制,得到MDSS管理模块对应标准化的调用流程和其内部基本功能时序逻辑,具体地分类规则和限制条件可根据具体需要而设置,在此不做具体限制。其中,Kernel层为移动终端的系统内核层,主要用于进行初始化进程管理、内存管理、加载Display(显示)、Camera Driver(相机驱动)和Binder Driver(Binder驱动)等相关工作,并用于创建内核工作线程kworkder、软中断线程ksoftirqd和软中断线程thermal等内核守护进程。
[0101] 当移动终端监测到其Kernel层MDSS管理模块中的预设关键信息点对应位置的直接内存访问处于异常状态后,移动终端读取直接内存访问对应的异常标识。其中,关键信息点为预先设置在MDSS管理模块对应的调用流程和其内部基本功能时序逻辑中的信息点,用来监测调用流程和时序逻辑是否处于异常状态的信息点。当监测到调用流程和/或时序逻辑对应的关键信息点的直接内存访问处于异常状态时,确认对应的调用流程和/或时序逻辑处于异常状态。直接内存访问对应的异常标识为预先设置好的,用来表示直接内存访问处于异常状态的标识。需要说明的是,不同关键信息点对应的直接内存访问的异常标识是不一样的。直接内存访问异常标识的设置规则可根据具体需要而设置,只要保证可以识别出不同关键信息点对应的直接内存访问即可。在本实施例中,直接内存访问处于异常状态为MDSS管理模块中regdma interrupt异常。
[0102] 进一步地,参照图4,步骤S101包括:
[0103] 步骤S1011,当检测到监测移动终端Kernel层MDSS管理模块中的预设关键信息点的监测指令后,根据监测指令读取关键信息点的状态值。
[0104] 步骤S1012,根据状态值确定关键信息点对应位置的直接内存访问是否处于异常状态。
[0105] 步骤S1013,若直接内存访问处于异常状态,则读取直接内存访问对应的异常标识。
[0106] 当移动终端检测到监测其Kernel层MDSS管理模块中的预设关键信息点的监测指令后,根据监测指令读取预设关键信息点的状态值,并根据状态值确定预设关键信息点对应位置的直接内存访问是否处于异常状态。若根据状态值确定关键信息点对应位置的直接内存访问处于异常状态,移动终端则读取直接内存访问对应的异常标识。若根据状态值确定关键信息点对应位置的直接内存访问处于正常状态,则表示直接内存访问不存在对应的异常标识,移动终端读取不到直接内存访问对应的异常标识。
[0107] 其中,状态值与异常状态处于对应关系。在本实施例中,状态值与异常状态之间的对应关系可根据具体需要而限制,在此不做限制。如可设置为当某个关键信息点对应的状态值为“0”时,则确定关键信息点对应位置的直接内存访问处于正常状态;当某个关键信息点对应的状态值为“1”时,则确定关键信息点对应位置的直接内存访问处于异常状态。
[0108] 步骤S102,将异常标识与预存的日志标识进行匹配。
[0109] 步骤S103,若异常标识与日志标识匹配成功,则根据日志标识查找与日志标识关联的日志信息,并获取与直接内存访问对应进程的进程信息。
[0110] 当获取到直接内存访问对应的异常标识后,移动终端将所获取的异常标识与存储重启操作原因数据库中存储的日志标识进行匹配。若异常标识与日志标识匹配成功,移动终端则根据日志标识在存储重启操作原因的数据库中查找与日志标识关联的日志信息,并获取与直接内存访问对应进程进行的进程信息。需要说明的是,该日志标识为导致移动终端重启操作的日志信息对应的标识。其中,日志信息包括但不限于MDSS管理模块中出现直接内存访问异常的节点名称和MDSS管理模块中出现直接内存访问异常的位置。进程信息包括但不限于当直接内存访问处于异常状态时,对应进程的名称,即涉事进程的名称、关联线程的名称、与涉事进程交互或者关联进程的ID(identification,身份标识)和线程ID、以及关键信息点对应的MDSS管理模块的功能节点。
[0111] 在本实施例中,当异常标识与预存的日志标识一致时,则确认异常标识与预存的日志标识匹配成功;若异常标识与预存的日志标识不一致,则确认异常标识与预存的日志标识匹配失败。如当异常标识为a,在数据库中查找到为标识a的日志标识,则确认异常标识与预存的日志标识匹配成功,否则,则确认异常标识与预存的日志标识匹配失败。在其它实施例中,可设置为当异常标识与预存的日志标识相关联时,则确认异常标识与预存的日志标识匹配成功,否则,确认异常标识与预存的日志标识匹配失败。如当设置为与异常标识a1关联的日志标识为a2时,若当某个关键信息点对应直接内存访问的异常标识为a1,且在数据库中查找到标识为a2的日志标识,则确认异常标识与预存的日志标识匹配成功,否则,确认异常标识与预存的日志标识匹配失败。
[0112] 步骤S104,根据进程信息和日志信息生成重启日志,以根据重启日志定位移动终端重启原因。
[0113] 当获取到进程信息和日志信息后,移动终端根据进程信息和日志信息生成重启日志,并将重启日志输出至指定位置,以便于移动终端在发生重启操作后,对应的工作人员可以快速获取该重启日志,根据重启日志快速确定导致移动终端重启操作的重启原因。
[0114] 进一步地,在根据进程信息和日志信息生成重启日志过程中,移动终端根据特定的格式生成重启日志,以便于对应的工作人员根据重启日志可以快速分析出移动终端发生重启操作的原因。
[0115] 进一步地,该基于MDSS的重启定位方法还包括:
[0116] 步骤a,确定监测关键信息点对应位置直接内存访问是否处于异常状态的监测指令对应的线程,并将线程部署在Kernel层的kthreadd进程和kernel进程中。
[0117] 进一步地,移动终端在部署Kernel层的进程时,确定监测其Kernel层MDSS管理模块预设关键点对应位置的直接内存访问是否处于异常状态的监测指令对应线程,并将监测指令对应的线程部署在Kernel层的kthreadd进程和kernel进程中,以便于可以全程监测Kernel层MDSS管理模块中的的直接内存访问是否处于异常状态。需要说明的是,监测指令对应的线程在移动终端中是独立运行的。
[0118] 本实施例通过当监测到移动终端Kernel层MDSS管理模块中的预设关键信息点对应位置的直接内存访问处于异常状态后,读取直接内存访问对应的异常标识;将异常标识与预存的日志标识进行匹配;若异常标识与日志标识匹配成功,则根据日志标识查找与日志标识关联的日志信息,并获取与直接内存访问对应进程的进程信息;根据进程信息和日志信息生成重启日志,以根据重启日志定位移动终端重启原因。实现了在移动终端未发生重启操作之前,预先获取移动终端会发生重启操作对应的重启日志,以便于在移动终端发生重启操作后,相应的工作人员可以根据重启日志快速确定导致移动终端重启的原因,提高了定位移动终端发生重启故障的原因的效率,以及减少了人力成本。
[0119] 进一步地,基于第一实施例提出本发明基于MDSS的重启定位方法的第二实施例。基于MDSS的重启定位方法的第二实施例与基于MDSS的重启定位方法的第一实施例的区别在于,根据监测指令读取关键信息点的状态值的步骤包括:
[0120] 步骤b,根据监测指令按照第一读取频率读取关键信息点预设数量的第一状态值。
[0121] 步骤c,若根据预设数量的第一状态值都确定直接内存访问处于正常状态,则按照第二读取频率读取关键信息点预设数量的第二状态值。
[0122] 步骤d,若根据预设数量的第二状态值都确定直接内存访问处于正常状态,则按照第三读取频率读取关键信息点的第三状态值,其中,第二读取频率大于第一读取频率,小于第三读取频率。
[0123] 移动终端在根据监测指令读取关键信息点的状态值的过程为:移动终端根据监测指令按照第一读取频率读取关键信息点预设数量的第一状态值,并判断所读取的预设数量的第一状态值是否都能确定直接内存访问处于正常状态。若所读取的预设数量的第一状态值都能确定直接内存访问处于正常状态,则按照第二读取频率读取关键信息点预设数量的第二状态值,并判断所读取的预设数量的第二状态值是否都能确定直接内存访问处于正常状态。若所读取的预设数量的第二状态值都能确定直接内存访问处于正常状态,则按照第三读取频率读取关键信息点预设数量的第三状态值,以根据第三状态值确定关键信息点对应位置的直接内存访问是否处于异常状态。
[0124] 其中,第二读取频率大于第一读取频率,且小于第三读取频率。第一读取频率、第二读取频率、第三读取频率和预设数量可根据具体需要而设置,如可将第一读取频率设置为每间隔1秒读取一次,将第二读取频率设置为每间隔3秒读取一次,将第三读取频率设置为每间隔5秒读取一次,预设数量设置为5。即当移动终端根据监测指令在连续5次以1秒间隔读取的状态值都表明直接内存访问处于正常状态后,每间隔3秒连续读取5次关键信息点对应的状态值,若每间隔3秒读取的5个状态值都表明直接内存访问处于正常状态,则每间隔5秒连续读取5次关键信息点对应的状态值,根据每间隔5秒连续读取的5个状态值来确定关键信息点对应位置的直接内存访问是否处于异常状态。
[0125] 需要说明的是,在其它实施例中,可以再增加设置读取关键信息点状态值的读取频率,如若每间隔5秒连续读取的5个状态值都表明直接内存访问处于正常状态时,以每间隔8秒连续读取5次关键信息点对应的状态值。在本实施例中对此不做具体限制。
[0126] 进一步地,该基于MDSS的重启定位方法还包括:
[0127] 步骤e,若根据一个第一状态值确定直接内存访问处于异常状态,则检测移动终端是否发生重启操作。
[0128] 步骤f,若移动终端未发生重启操作,则按照第四读取频率读取关键信息点的状态值。
[0129] 进一步地,若根据监测指令按照第一读取频率读取关键信息点预设数量的第一状态值过程中,根据一个第一状态值确定直接内存访问处于异常状态,移动终端则检测其是否发生重启操作。若移动终端未发生重启操作,移动终端则按照第四读取频率读取关键信息点的状态值。进一步,若移动终端发生重启操作,则表明移动终端已经初始化了,移动终端则检测是否侦测到监测其Kernel层MDSS管理模块中的预设关键信息点状态值的监测指令。其中,第四读取频率可根据具体需要而设置,如第四读取频率可设置为与第一读取频率相等,都设置为每间隔1秒读取一次;或者设置为与第一读取频率不相等,如将第四读取频率设置为每间隔0.8秒读取一次,或者每隔2秒读取一次。
[0130] 为了便于理解,举例说明该过程:当移动终端在根据监测指令按照每间隔1秒连续读取5次关键信息点状态值过程中,若根据第3秒读取的关键信息点的状态值确定对应位置的看门狗处于异常状态,且移动终端未发生重启操作,移动终端则按照每间隔0.8读取一次关键信息点的状态值(此时,第四读取频率设置为0.8秒读取一次)。
[0131] 可以理解的是,若根据一个第二状态值或者第三状态值确定直接内存访问处于异常状态,移动终端则检测是否发生重启操作。
[0132] 本实施例通过设置读取关键信息点的读取频率,以在MDSS管理模块关键信息点对应位置的直接内存访问处于正常状态时,增大读取关键信息点状态值的读取频率,以在直接内存访问处于正常状态时,减少读取关键信息点状态值的次数。
[0133] 进一步地,基于第一实施例提出本发明基于MDSS的重启定位方法的第三实施例。基于MDSS的重启定位方法的第三实施例与基于MDSS的重启定位方法的第一和/或第二实施例的区别在于,参照图5,该基于MDSS的重启定位方法还包括:
[0134] 步骤S105,存储重启日志,并确定在第二预设时间内存储的重启日志。
[0135] 步骤S106,对第二预设时间内存储的日志信息执行去冗余操作,以节省存储空间。
[0136] 当生成重启日志后,移动终端存储重启日志,并确定在第二预设时间内存储的重启日志,并对第二预设时间内存储的重启日志执行去冗余操作,以节省移动终端的存储空间。具体地,在执行去冗余操作过程中,只存储属于同一类重启操作的一条重启日志,删除所存储的该类重启操作对应的其它重启日志,对应记录属于同一类重启操作的重启日志数量,以及对应看门狗是否已经从异常状态转变为正常状态,并记录该看门狗从异常状态转变为正常状态的转变时间。其中,第二预设时间可根据具体需要而设置,如可将第二预设时间设置为45分钟、60分钟、或者100分钟等。需要说明的是,对重启日志进行分类存储过程中,可按照发生重启的原因进行分类存储,也可以按照发生重启的位置进行分类,在此不做限制。
[0137] 如当移动终端在10点至11点这60分钟内出现了直接内存访问异常现象,且移动终端中一共存储了1000条重启日志。此时,移动终端会在直接内存访问从异常状态转变为正常状态之前,将属于同一类别的重启操作的重启日志分为一类。若这1000条重启日志中,有520条重启日志对应A1类重启操作,360条重启日志对应B1类重启操作,120条重启日志对应C1类重启操作,则只存储一条A1类重启操作对应的重启日志,删除其余519条A1类重启操作对应的重启日志,并记录A1类重启操作对应重启日志的数量为520;存储一条B1类重启操作对应的重启日志,删除其余359条B1类重启操作对应的重启日志,并记录B1类重启操作对应的重启日志的数量为360;存储一条C1类重启操作对应的重启日志,删除其余119条C1类重启操作对应的重启日志,并记录C1类重启操作对应的重启日志的数量为120。
[0138] 需要说明的是,该去冗余操作的方案也可以适用于进程信息和日志信息,当对进程信息和日志信息进行去冗余操作时,具体的操作过程和对重启日志的进行去冗余操作过程一致,在此不做赘述。
[0139] 本实施例通过对第二预设时间内存储的重启日志进行去冗余操作,以节省移动终端的存储空间。
[0140] 进一步地,该基于MDSS的重启定位方法还包括:
[0141] 步骤g,判断在获取到进程信息后的第一预设时间内是否再次监测到关键信息点对应位置的直接内存访问处于异常状态。
[0142] 步骤h,若在第一预设时间内再次监测到关键信息点对应位置的直接内存访问处于异常状态,则存储进程信息。
[0143] 进一步地,当移动终端获取到进程信息后,移动终端判断在获取到进程信息后的第一预设时间内是否再次监测到关键信息点对应位置的直接内存访问处于异常状态。若在第一预设时间内再次监测到关键信息点对应位置的直接内存访问处于异常状态,移动终端则存储该进程信息,以根据该进程信息生成重启日志。进一步地,若在第一预设时间内未再次监测到关键信息点对应位置的直接内存访问处于异常状态,移动终端则删除所获取的进程信息。其中,第一预设时间可根据具体需要而设置,如可将第一预设时间设置为3分钟,5分钟,或者8分钟等。
[0144] 在本实施例中,通过判断在第一预设时间内是否再次监测到直接内存访问处于异常状态来提高定位移动终端重启原因的准确率。
[0145] 进一步地,基于第一实施例提出本发明基于MDSS的重启定位方法的第四实施例。基于MDSS的重启定位方法的第四实施例与基于MDSS的重启定位方法的第一和/或第二实施例的区别在于,参照图6,基于MDSS的重启定位方法还包括:
[0146] 步骤S107,确定Kernel层中MDSS管理模块调用流程的识别节点、加载节点、初始化节点、运行节点、指令调配节点、跨进程数据通信节点、卸载节点、资源申请和释放节点、以及磁盘读写操作节点。
[0147] 步骤S108,在识别节点、加载节点、初始化节点、运行节点、指令调配节点、跨进程数据通信节点、卸载节点、资源申请和释放节点、以及磁盘读写操作节点中设置关键信息点。
[0148] 为了可以准确快速定位移动终端Kernel层中MDSS管理模块发生重启操作的原因。移动终端确定其Kernel层中MDSS管理模块调用流程的识别节点、加载节点、初始化节点、运行节点、指令调配节点、跨进程数据通信节点、卸载节点、资源申请和释放节点、以及磁盘读写操作节点,并在识别节点、加载节点、初始化节点、运行节点、指令调配节点、跨进程数据通信节点、卸载节点、资源申请和释放节点、以及磁盘读写操作节点中设置关键信息点,以通过该关键信息点监测对应节点的直接内存访问是否处于异常状态。可以理解的是,识别节点、加载节点、初始化节点、运行节点、指令调配节点、跨进程数据通信节点、卸载节点、资源申请和释放节点、以及磁盘读写操作节点是MDSS管理模块调用流程中比较重要的节点。
[0149] 进一步地,为了可以快速定位移动终端发生重启操作的重启原因,移动终端确定MDSS管理模块中的各个功能的时序逻辑,在时序逻辑对应的各个功能节点中设置关键信息点。如MDSS管理模块中的某个功能的时序逻辑为:A→B→C→D,则在A节点,B节点,C节点和D节点分别设置关键信息点。
[0150] 可以理解的是,由于在移动终端不同模块对应服务的调用流程和时序逻辑中设置的关键信息点,因此,在确定移动终端发生重启操作后,还可以根据该关键信息点确定重启操作的类型,即确定移动终端是由于Java框架层、Native框架层、或者是Kernel层中MDSS管理模块等出现异常导致重启操作。
[0151] 本实施例通过在MDSS管理模块的调用流程的识别节点、加载节点、初始化节点、运行节点、指令调配节点、跨进程数据通信节点、卸载节点、资源申请和释放节点、以及磁盘读写操作节点设置关键信息点,通过监测MDSS管理模块中的各个关键信息点来判断对应直接内存访问是否处于异常状态,以定位移动终端MDSS管理模块调用流程中重要节点发生重启操作的重启原因。
[0152] 此外,本发明实施例还提出一种计算机可读存储介质。
[0153] 所述计算机可读存储介质上存储有基于MDSS的重启定位程序,所述基于MDSS的重启定位程序被处理器执行时实现如下步骤:
[0154] 当监测到移动终端Kernel层MDSS管理模块中的预设关键信息点对应位置的直接内存访问处于异常状态后,读取所述直接内存访问对应的异常标识;
[0155] 将所述异常标识与预存的日志标识进行匹配;
[0156] 若所述异常标识与所述日志标识匹配成功,则根据所述日志标识查找与所述日志标识关联的日志信息,并获取与所述直接内存访问对应进程的进程信息;
[0157] 根据所述进程信息和所述日志信息生成重启日志,以根据所述重启日志定位所述移动终端重启原因。
[0158] 进一步地,所述当监测到移动终端Kernel层MDSS管理模块中的预设关键信息点对应位置的直接内存访问处于异常状态后,读取所述直接内存访问对应的异常标识的步骤包括:
[0159] 当检测到监测移动终端Kernel层MDSS管理模块中的预设关键信息点的监测指令后,根据所述监测指令读取所述关键信息点的状态值;
[0160] 根据所述状态值确定所述关键信息点对应位置的直接内存访问是否处于异常状态;
[0161] 若所述直接内存访问处于异常状态,则读取所述直接内存访问对应的异常标识。
[0162] 进一步地,根据所述监测指令读取所述关键信息点的状态值的步骤包括:
[0163] 根据所述监测指令按照第一读取频率读取所述关键信息点预设数量的第一状态值;
[0164] 若根据预设数量的所述第一状态值都确定所述直接内存访问处于正常状态,则按照第二读取频率读取所述关键信息点预设数量的第二状态值;
[0165] 若根据预设数量的所述第二状态值都确定所述直接内存访问处于正常状态,则按照第三读取频率读取所述关键信息点的第三状态值,其中,所述第二读取频率大于所述第一读取频率,小于所述第三读取频率。
[0166] 进一步地,根据所述监测指令按照第一读取频率读取所述关键信息点预设数量的第一状态值的步骤之后,所述基于MDSS的重启定位程序被处理器执行时实现如下步骤:
[0167] 若根据一个所述第一状态值确定所述直接内存访问处于异常状态,则检测所述移动终端是否发生重启操作;
[0168] 若所述移动终端未发生重启操作,则按照第四读取频率读取所述关键信息点的状态值。
[0169] 进一步地,根据所述进程信息和所述日志信息生成重启日志,以根据所述重启日志定位所述移动终端重启原因的步骤之前,所述基于MDSS的重启定位程序被处理器执行时实现如下步骤:
[0170] 判断在获取到所述进程信息后的第一预设时间内是否再次监测到所述关键信息点对应位置的直接内存访问处于异常状态;
[0171] 若在所述第一预设时间内再次监测到所述关键信息点对应位置的直接内存访问处于异常状态,则存储所述进程信息。
[0172] 进一步地,根据所述进程信息和所述日志信息生成重启日志,以根据所述重启日志定位所述移动终端重启原因的步骤之后,所述基于MDSS的重启定位程序被处理器执行时实现如下步骤:
[0173] 存储所述重启日志,并确定在第二预设时间内存储的所述重启日志;
[0174] 对所述第二预设时间内存储的日志信息执行去冗余操作,以节省存储空间。
[0175] 进一步地,所述当监测到移动终端Kernel层MDSS管理模块中的预设关键信息点对应位置的直接内存访问处于异常状态后,读取所述直接内存访问对应的异常标识的步骤之前,所述基于MDSS的重启定位程序被处理器执行时实现如下步骤:
[0176] 确定所述Kernel层中MDSS管理模块调用流程的识别节点、加载节点、初始化节点、运行节点、指令调配节点、跨进程数据通信节点、卸载节点、资源申请和释放节点、以及磁盘读写操作节点;
[0177] 在所述识别节点、加载节点、初始化节点、运行节点、指令调配节点、跨进程数据通信节点、卸载节点、资源申请和释放节点、以及磁盘读写操作节点中设置关键信息点。
[0178] 进一步地,所述当监测到移动终端Kernel层MDSS管理模块中的预设关键信息点对应位置的直接内存访问处于异常状态后,读取所述直接内存访问对应的异常标识的步骤之前,所述基于MDSS的重启定位程序被处理器执行时实现如下步骤:
[0179] 确定监测所述关键信息点对应位置直接内存访问是否处于异常状态的线程,并将所述线程部署在所述Kernel层的kthreadd进程和kernel进程中。
[0180] 本发明计算机可读存储介质具体实施方式与上述基于MDSS的重启定位方法的各具体实施例基本相同,在此不再赘述。
[0181] 需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
[0182] 上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0183] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
[0184] 以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本发明的专利保护范围内。

附图说明

[0035] 图1为实现本发明各个实施例一种终端的硬件结构示意图;
[0036] 图2为本发明实施例提供的一种通信网络系统架构图;
[0037] 图3为本发明基于MDSS的重启定位方法第一实施例的流程示意图;
[0038] 图4为本发明基于MDSS的重启定位方法第一实施例中步骤S101的一种流程示意图;
[0039] 图5为本发明基于MDSS的重启定位方法第三实施例的流程示意图;
[0040] 图6为本发明基于MDSS的重启定位方法第四实施例的流程示意图。
[0041] 本发明目的的实现、功能特点及优点将结合实施例,参照附图做说明。
版权所有:盲专网 ©2023 zlpt.xyz  蜀ICP备2023003576号