移动终端重启定位方法、移动终端及计算机可读存储介质与流程

文档序号:14447797阅读:134来源:国知局
本发明涉及通信
技术领域
:,尤其涉及一种移动终端重启定位方法、移动终端及计算机可读存储介质。
背景技术
::随着终端技术的快速发展,手机及平板电脑等移动终端已成为人们工作和生活的必备工具。用户在使用移动终端的过程中,会出现移动终端自动重启的现象,而导致移动终端自动重启的原因可能是在移动终端上市之前已存在的,只是开发人员没有发现的。此时,用户需要将该移动终端返厂,由测试人员进行大量的测试工作,以确定移动终端重启的原因。目前,在测试领域,对移动终端操作系统进行重启压力测试的方法依然是采用人工测试的方法,手动重启手机,随后进行压力测试。然而,这种测试方法过于耗费人力和时间,尤其是对漏洞bug复现率较低的移动终端,例如,移动终端重启1000次可能就只出现一次或几次bug,时间和人力的投入过大而产出很小,很显然,这种分析移动终端发生重启操作原因的做法是极其低效的。技术实现要素:本发明的主要目的在于提出一种移动终端重启定位方法、移动终端及计算机可读存储介质,旨在解决现有不能快速定位移动终端发生重启操作的原因的问题。为实现上述目的,本发明提供了一种移动终端重启定位方法,所述移动终端重启定位方法包括:当监测到移动终端kernel层wifi模块中预设关键信息点对应位置的套接字缓冲区处于异常状态后,读取所述套接字缓冲区对应的异常标识;将所述异常标识与预存的日志标识进行匹配;若所述异常标识与所述日志标识匹配成功,则根据所述日志标识查找与所述日志标识关联的日志信息,并获取与所述套接字缓冲区对应进程的进程信息;根据所述进程信息和所述日志信息生成重启日志,以根据所述重启日志定位所述移动终端重启原因。可选地,所述当监测到移动终端kernel层wifi模块中预设关键信息点对应位置的套接字缓冲区处于异常状态后,读取所述套接字缓冲区对应的异常标识的步骤包括:当检测到监测移动终端kernel层wifi模块中预设关键信息点的监测指令后,根据所述监测指令读取所述关键信息点的状态值;根据所述状态值确定所述关键信息点对应位置的套接字缓冲区是否处于异常状态;若所述套接字缓冲区处于异常状态,则读取所述套接字缓冲区对应的异常标识。可选地,所述根据所述监测指令读取所述关键信息点的状态值的步骤包括:根据所述监测指令按照第一读取频率读取所述关键信息点预设数量的第一状态值;若根据预设数量的所述第一状态值都确定所述套接字缓冲区处于正常状态,则按照第二读取频率读取所述关键信息点预设数量的第二状态值;若根据预设数量的所述第二状态值都确定所述套接字缓冲区处于正常状态,则按照第三读取频率读取所述关键信息点的第三状态值,其中,所述第二读取频率大于所述第一读取频率,小于所述第三读取频率。可选地,所述根据所述监测指令按照第一读取频率读取所述关键信息点预设数量的第一状态值的步骤之后,还包括:若根据一个所述第一状态值确定所述套接字缓冲区处于异常状态,则检测所述移动终端是否发生重启操作;若所述移动终端未发生重启操作,则按照第四读取频率读取所述关键信息点的状态值。可选地,所述根据所述进程信息和所述日志信息生成重启日志,以根据所述重启日志定位所述移动终端重启原因的步骤之前,还包括:判断在获取到所述进程信息后的第一预设时间内是否再次监测到所述关键信息点对应位置的套接字缓冲区处于异常状态;若在所述第一预设时间内再次监测到所述关键信息点对应位置的套接字缓冲区处于异常状态,则存储所述进程信息。可选地,所述根据所述进程信息和所述日志信息生成重启日志,以根据所述重启日志定位所述移动终端重启原因的步骤之后,还包括:存储所述重启日志,并确定在第二预设时间内存储的所述重启日志;对所述第二预设时间内存储的日志信息执行去冗余操作,以节省存储空间。可选地,所述当监测到移动终端kernel层wifi模块中预设关键信息点对应位置的套接字缓冲区处于异常状态后,读取所述套接字缓冲区对应的异常标识的步骤之前,还包括:确定所述kernel层中wifi模块调用流程的识别节点、加载节点、运行节点、指令调配节点、跨进程数据通信节点、卸载节点、内存资源申请和释放节点、以及磁盘读写操作节点;在所述识别节点、加载节点、运行节点、指令调配节点、跨进程数据通信节点、卸载节点、内存资源申请和释放节点、以及磁盘读写操作节点中设置关键信息点。可选地,所述当监测到移动终端kernel层wifi模块中预设关键信息点对应位置的套接字缓冲区处于异常状态后,读取所述套接字缓冲区对应的异常标识的步骤之前,还包括:确定监测所述关键信息点对应位置套接字缓冲区是否处于异常状态的监测指令对应的线程,并将所述线程部署在所述kernel层的kthreadd进程和kernel进程中。此外,为实现上述目的,本发明还提供一种移动终端,所述移动终端包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的移动终端重启定位程序,所述移动终端重启定位程序被所述处理器执行时实现如上文所述的移动终端重启定位方法的步骤。此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有移动终端重启定位程序,所述移动终端重启定位程序被处理器执行时实现如上文所述的移动终端重启定位方法的步骤。本发明通过当监测到移动终端kernel层wifi模块中预设关键信息点对应位置的套接字缓冲区处于异常状态后,读取所述套接字缓冲区对应的异常标识;将所述异常标识与预存的日志标识进行匹配;若所述异常标识与所述日志标识匹配成功,则根据所述日志标识查找与所述日志标识关联的日志信息,并获取与所述套接字缓冲区对应进程的进程信息;根据所述进程信息和所述日志信息生成重启日志,以根据所述重启日志定位所述移动终端重启原因。实现了在移动终端未发生重启操作之前,预先获取移动终端会发生重启操作对应的重启日志,以便于在移动终端发生重启操作后,相应的工作人员可以根据重启日志快速确定导致移动终端重启的原因,提高了定位移动终端重启原因的效率,以及减少了人力成本。附图说明图1为实现本发明各个实施例一种终端的硬件结构示意图;图2为本发明实施例提供的一种通信网络系统架构图;图3为本发明移动终端重启定位方法第一实施例的流程示意图;图4为本发明实施例中步骤s10的一种流程示意图;图5为本发明移动终端重启定位方法第三实施例的流程示意图;图6为本发明移动终端重启定位方法第四实施例的流程示意图。本发明目的的实现、功能特点及优点将结合实施例,参照附图做说明。具体实施方式应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。终端可以以各种形式来实施。例如,本发明中描述的终端可以包括诸如手机、平板电脑、笔记本电脑、掌上电脑、个人数字助理(personaldigitalassistant,pda)、便捷式媒体播放器(portablemediaplayer,pmp)、导航装置、可穿戴设备、智能手环、计步器等移动终端,以及诸如数字tv、台式计算机等固定终端。后续描述中将以移动终端为例进行说明,本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本发明的实施方式的构造也能够应用于固定类型的终端。请参阅图1,其为实现本发明各个实施例的一种移动终端的硬件结构示意图,该移动终端100可以包括:rf(radiofrequency,射频)单元101、wi-fi模块102、音频输出单元103、传感器105、显示单元106、用户输入单元107、接口单元108、存储器109、处理器110、以及电源111等部件。本领域技术人员可以理解,图1中示出的移动终端100结构并不构成对移动终端100的限定,移动终端100可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。下面结合图1对移动终端100的各个部件进行具体的介绍:射频单元101可用于收发信息或通话过程中,信号的接收和发送,具体的,将基站的下行信息接收后,给处理器110处理;另外,将上行的数据发送给基站。通常,射频单元101包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。此外,射频单元101还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于gsm(globalsystemofmobilecommunication,全球移动通讯系统)、gprs(generalpacketradioservice,通用分组无线服务)、cdma2000(codedivisionmultipleaccess2000,码分多址2000)、wcdma(widebandcodedivisionmultipleaccess,宽带码分多址)、td-scdma(timedivisionsynchronouscodedivisionmultipleaccess,时分同步码分多址)、fdd-lte(frequencydivisionduplexing-longtermevolution,频分双工长期演进)和tdd-lte(timedivisionduplexing-longtermevolution,分时双工长期演进)等。wi-fi属于短距离无线传输技术,移动终端100通过wi-fi模块102可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图1示出了wi-fi模块102,但是可以理解的是,其并不属于移动终端100的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。音频输出单元103可以在移动终端100处于呼叫信号接收模式、通话模式、记录模式、语音识别模式、广播接收模式等等模式下时,将射频单元101或wi-fi模块102接收的或者在存储器109中存储的音频数据转换成音频信号并且输出为声音。而且,音频输出单元103还可以提供与移动终端100执行的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等等)。音频输出单元103可以包括扬声器、蜂鸣器等等。移动终端100还包括至少一种传感器105,比如光传感器、运动传感器以及其他传感器。具体地,光传感器包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1061的亮度,接近传感器可在移动终端100移动到耳边时,关闭显示面板1061和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的指纹传感器、压力传感器、虹膜传感器、分子传感器、陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。显示单元106用于显示由用户输入的信息或提供给用户的信息。显示单元106可包括显示面板1061,可以采用液晶显示器(liquidcrystaldisplay,lcd)、有机发光二极管(organiclight-emittingdiode,oled)等形式来配置显示面板1061。用户输入单元107可用于接收输入的数字或字符信息,以及产生与移动终端的用户设置以及功能控制有关的键信号输入。具体地,用户输入单元107可包括触控面板1071以及其他输入设备1072。触控面板1071,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1071上或在触控面板1071附近的操作),并根据预先设定的程式驱动相应的连接装置。触控面板1071可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器110,并能接收处理器110发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1071。除了触控面板1071,用户输入单元107还可以包括其他输入设备1072。具体地,其他输入设备1072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种,具体此处不做限定。进一步的,触控面板1071可覆盖显示面板1061,当触控面板1071检测到在其上或附近的触摸操作后,传送给处理器110以确定触摸事件的类型,随后处理器110根据触摸事件的类型在显示面板1061上提供相应的视觉输出。虽然在图1中,触控面板1071与显示面板1061是作为两个独立的部件来实现移动终端的输入和输出功能,但是在某些实施例中,可以将触控面板1071与显示面板1061集成而实现移动终端的输入和输出功能,具体此处不做限定。接口单元108用作至少一个外部装置与移动终端100连接可以通过的接口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(i/o)端口、视频i/o端口、耳机端口等等。接口单元108可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到移动终端100内的一个或多个元件或者可以用于在移动终端100和外部装置之间传输数据。存储器109可用于存储软件程序以及各种数据。存储器109可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器109可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。处理器110是移动终端100的控制中心,利用各种接口和线路连接整个移动终端的各个部分,通过运行或执行存储在存储器109内的软件程序和/或模块,以及调用存储在存储器109内的数据,执行移动终端100的各种功能和处理数据,从而对移动终端100进行整体监控。处理器110可包括一个或多个处理单元;优选的,处理器110可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器110中。此外,在图1所示的移动终端中,处理器110用于调用存储器109中存储的移动终端重启定位程序,并执行以下操作:当监测到移动终端100kernel层wifi模块中预设关键信息点对应位置的套接字缓冲区处于异常状态后,读取所述套接字缓冲区对应的异常标识;将所述异常标识与预存的日志标识进行匹配;若所述异常标识与所述日志标识匹配成功,则根据所述日志标识查找与所述日志标识关联的日志信息,并获取与所述套接字缓冲区对应进程的进程信息;根据所述进程信息和所述日志信息生成重启日志,以根据所述重启日志定位所述移动终端100重启原因。进一步地,所述当监测到移动终端100kernel层wifi模块中预设关键信息点对应位置的套接字缓冲区处于异常状态后,读取所述套接字缓冲区对应的异常标识的步骤包括:当检测到监测移动终端100kernel层wifi模块中预设关键信息点的监测指令后,根据所述监测指令读取所述关键信息点的状态值;根据所述状态值确定所述关键信息点对应位置的套接字缓冲区是否处于异常状态;若所述套接字缓冲区处于异常状态,则读取所述套接字缓冲区对应的异常标识。进一步地,所述根据所述监测指令读取所述关键信息点的状态值的步骤包括:根据所述监测指令按照第一读取频率读取所述关键信息点预设数量的第一状态值;若根据预设数量的所述第一状态值都确定所述套接字缓冲区处于正常状态,则按照第二读取频率读取所述关键信息点预设数量的第二状态值;若根据预设数量的所述第二状态值都确定所述套接字缓冲区处于正常状态,则按照第三读取频率读取所述关键信息点的第三状态值,其中,所述第二读取频率大于所述第一读取频率,小于所述第三读取频率。进一步地,所述根据所述监测指令按照第一读取频率读取所述关键信息点预设数量的第一状态值的步骤之后,处理器110还用于调用存储器109中存储的移动终端100重启定位程序,以实现以下步骤:若根据一个所述第一状态值确定所述套接字缓冲区处于异常状态,则检测所述移动终端100是否发生重启操作;若所述移动终端100未发生重启操作,则按照第四读取频率读取所述关键信息点的状态值。进一步地,所述根据所述进程信息和所述日志信息生成重启日志,以根据所述重启日志定位所述移动终端100重启原因的步骤之前,处理器110还用于调用存储器109中存储的移动终端100重启定位程序,以实现以下步骤:判断在获取到所述进程信息后的第一预设时间内是否再次监测到所述关键信息点对应位置的套接字缓冲区处于异常状态;若在所述第一预设时间内再次监测到所述关键信息点对应位置的套接字缓冲区处于异常状态,则存储所述进程信息。进一步地,所述根据所述进程信息和所述日志信息生成重启日志,以根据所述重启日志定位所述移动终端100重启原因的步骤之后,处理器110还用于调用存储器109中存储的移动终端100重启定位程序,以实现以下步骤:存储所述重启日志,并确定在第二预设时间内存储的所述重启日志;对所述第二预设时间内存储的日志信息执行去冗余操作,以节省存储空间。进一步地,所述当监测到移动终端100kernel层wifi模块中预设关键信息点对应位置的套接字缓冲区处于异常状态后,读取所述套接字缓冲区对应的异常标识的步骤之前,处理器110还用于调用存储器109中存储的移动终端100重启定位程序,以实现以下步骤:确定所述kernel层中wifi模块调用流程的识别节点、加载节点、运行节点、指令调配节点、跨进程数据通信节点、卸载节点、内存资源申请和释放节点、以及磁盘读写操作节点;在所述识别节点、加载节点、运行节点、指令调配节点、跨进程数据通信节点、卸载节点、内存资源申请和释放节点、以及磁盘读写操作节点中设置关键信息点。进一步地,所述当监测到移动终端100kernel层wifi模块中预设关键信息点对应位置的套接字缓冲区处于异常状态后,读取所述套接字缓冲区对应的异常标识的步骤之前,处理器110还用于调用存储器109中存储的移动终端100重启定位程序,以实现以下步骤:确定监测所述关键信息点对应位置套接字缓冲区是否处于异常状态的监测指令对应的线程,并将所述线程部署在所述kernel层的kthreadd进程和kernel进程中。移动终端100还可以包括给各个部件供电的电源111(比如电池),优选的,电源111可以通过电源管理系统与处理器110逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。尽管图1未示出,移动终端100还可以包括蓝牙模块等,在此不再赘述。为了便于理解本发明实施例,下面对本发明的移动终端所基于的通信网络系统进行描述。请参阅图2,图2为本发明实施例提供的一种通信网络系统架构图,该通信网络系统为通用移动通信技术的lte系统,该lte系统包括依次通讯连接的ue(userequipment,用户设备)201,e-utran(evolvedumtsterrestrialradioaccessnetwork,演进式umts陆地无线接入网)202,epc(evolvedpacketcore,演进式分组核心网)203和运营商的ip业务204。具体地,ue201可以是上述移动终端100,此处不再赘述。e-utran202包括enodeb2021和其它enodeb2022等。其中,enodeb2021可以通过回程(backhaul)(例如x2接口)与其它enodeb2022连接,enodeb2021连接到epc203,enodeb2021可以提供ue201到epc203的接入。epc203可以包括mme(mobilitymanagemententity,移动性管理实体)2031,hss(homesubscriberserver,归属用户服务器)2032,其它mme2033,sgw(servinggateway,服务网关)2034,pgw(pdngateway,分组数据网络网关)2035和pcrf(policyandchargingrulesfunction,政策和资费功能实体)2036等。其中,mme2031是处理ue201和epc203之间信令的控制节点,提供承载和连接管理。hss2032用于提供一些寄存器来管理诸如归属位置寄存器(图中未示)之类的功能,并且保存有一些有关服务特征、数据速率等用户专用的信息。所有用户数据都可以通过sgw2034进行发送,pgw2035可以提供ue201的ip地址分配以及其它功能,pcrf2036是业务数据流和ip承载资源的策略与计费控制策略决策点,它为策略与计费执行功能单元(图中未示)选择及提供可用的策略和计费控制决策。ip业务204可以包括因特网、内联网、ims(ipmultimediasubsystem,ip多媒体子系统)或其它ip业务等。虽然上述以lte系统为例进行了介绍,但本领域技术人员应当知晓,本发明不仅仅适用于lte系统,也可以适用于其他无线通信系统,例如gsm、cdma2000、wcdma、td-scdma以及未来新的网络系统等,此处不做限定。基于上述终端硬件结构以及通信网络系统,提出本发明移动终端重启定位方法的各个实施例。本发明提供一种移动终端重启定位方法。参照图3,图3为本发明移动终端重启定位方法第一实施例的流程示意图。在本实施例中,提供了移动终端重启定位方法的实施例,需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。在本实施例中,移动终端重启定位方法包括:步骤s10,当监测到移动终端kernel层wifi模块中预设关键信息点对应位置的套接字缓冲区处于异常状态后,读取套接字缓冲区对应的异常标识。本发明主要是针对移动终端kernel层wifi模块中需要使用套接字缓冲区的场景,在wifi模块中,移动终端根据套接字缓冲区的属性对使用套接字缓冲区的场景进行分类,如根据套接字缓冲区对应的文件类型进行分类,文件类型包括但不限于音频文件、视频文件、文档文件等,进一步地,还可根据音频文件、视频文件和文档文件对应的格式进行分类,如将文档文件分为txt和word文件等。在对使用套接字缓冲区的场景进行分类后,移动终端确定各种类型的套接字缓冲区对应的调用流程和/或时序逻辑,对调用流程和/或时序逻辑进行标准化,即在调用流程和/或时序逻辑主要的功能节点中设置关键信息点,以得到wifi模块对应标准化的调用流程和其内部基本功能时序逻辑。其中,kernel层为移动终端的系统内核层,主要用于进行初始化进程管理、内存管理、加载display(显示)、cameradriver(相机驱动)和binderdriver(binder驱动)等相关工作,并用于创建内核工作线程kworkder、软中断线程ksoftirqd和软中断线程thermal等内核守护进程。当移动终端监测到其kernel层wifi模块中预设关键信息点对应位置的套接字缓冲区处于异常状态后,移动终端读取套接字缓冲区对应的异常标识。其中,关键信息点为预先设置在wifi模块对应的调用流程和其内部基本功能时序逻辑中的信息点,用来监测调用流程和时序逻辑是否处于异常状态的信息点。当监测到调用流程和/或时序逻辑对应的关键信息点的套接字缓冲区处于异常状态时,确认对应的调用流程和/或时序逻辑处于异常状态。套接字缓冲区对应的异常标识为预先设置好的,用来表示套接字缓冲区处于异常状态的标识。需要说明的是,不同关键信息点对应的套接字缓冲区的异常标识是不一样的。套接字缓冲区异常标识的设置规则可根据具体需要而设置,只要保证可以识别出不同关键信息点对应的套接字缓冲区即可。在本实施例中,套接字缓冲区处于异常状态可表示为skbuff(socketbuffer)异常。进一步地,参照图4,步骤s10包括:步骤s11,当检测到监测移动终端kernel层wifi模块中预设关键信息点的监测指令后,根据监测指令读取关键信息点的状态值。步骤s12,根据状态值确定关键信息点对应位置的套接字缓冲区是否处于异常状态。步骤s13,若套接字缓冲区处于异常状态,则读取套接字缓冲区对应的异常标识。当移动终端检测到监测其kernel层wifi模块中预设关键信息点的监测指令后,根据监测指令读取预设关键信息点的状态值,并根据状态值确定预设关键信息点对应位置的套接字缓冲区是否处于异常状态。若根据状态值确定关键信息点对应位置的套接字缓冲区处于异常状态,移动终端则读取套接字缓冲区对应的异常标识。若根据状态值确定关键信息点对应位置的套接字缓冲区处于正常状态,则表示套接字缓冲区不存在对应的异常标识,移动终端读取不到套接字缓冲区对应的异常标识。其中,状态值与异常状态存在对应关系。在本实施例中,状态值与异常状态之间的对应关系可根据具体需要而限制,在此不做限制。如可设置为当某个关键信息点对应的状态值为“0”时,则确定关键信息点对应位置的套接字缓冲区处于正常状态;当某个关键信息点对应的状态值为“1”时,则确定关键信息点对应位置的套接字缓冲区处于异常状态。在本实施例中,套接字缓冲区处于异常状态可理解为套接字缓冲区异常。步骤s20,将异常标识与预存的日志标识进行匹配。步骤s30,若异常标识与日志标识匹配成功,则根据日志标识查找与日志标识关联的日志信息,并获取与套接字缓冲区对应进程的进程信息。当获取到套接字缓冲区对应的异常标识后,移动终端则会触发将所获取的异常标识与存储重启操作原因数据库中存储的日志标识进行匹配的匹配指令。当触发该匹配指令后,移动终端根据该匹配指令将异常标识与日志标识进行匹配。若异常标识与日志标识匹配成功,移动终端则根据日志标识在存储重启操作原因的数据库中查找与日志标识关联的日志信息,并获取与套接字缓冲区对应进程进行的进程信息。需要说明的是,该日志标识为导致移动终端重启操作的日志信息对应的标识。其中,日志信息包括但不限于wifi模块中出现套接字缓冲区异常的节点名称和wifi模块中出现套接字缓冲区异常的位置。进程信息包括但不限于当套接字缓冲区处于异常状态时,对应进程的名称,即涉事进程的名称、关联线程的名称、与涉事进程交互或者关联进程的id(identification,身份标识)和线程id、以及关键信息点对应的wifi模块的功能节点。在本实施例中,当异常标识与预存的日志标识一致时,则确认异常标识与预存的日志标识匹配成功;若异常标识与预存的日志标识不一致,则确认异常标识与预存的日志标识匹配失败。如当异常标识为a,在数据库中查找到为标识a的日志标识,则确认异常标识与预存的日志标识匹配成功,否则,则确认异常标识与预存的日志标识匹配失败。在其它实施例中,可设置为当异常标识与预存的日志标识相关联时,则确认异常标识与预存的日志标识匹配成功,否则,确认异常标识与预存的日志标识匹配失败。如当设置为与异常标识a1关联的日志标识为a2时,若当某个关键信息点对应套接字缓冲区的异常标识为a1,且在数据库中查找到标识为a2的日志标识,则确认异常标识与预存的日志标识匹配成功,否则,确认异常标识与预存的日志标识匹配失败。步骤s40,根据进程信息和日志信息生成重启日志,以根据重启日志定位移动终端重启原因。当获取到进程信息和日志信息后,移动终端根据进程信息和日志信息生成重启日志,并将重启日志输出至指定位置,以便于移动终端在发生重启操作后,对应的工作人员可以快速获取该重启日志,根据重启日志快速确定导致移动终端重启操作的重启原因。进一步地,在根据进程信息和日志信息生成重启日志过程中,移动终端根据特定的格式生成重启日志,以便于对应的工作人员根据重启日志可以快速分析出移动终端发生重启操作的原因。进一步地,移动终端重启定位方法还包括:步骤a,确定监测关键信息点对应位置套接字缓冲区是否处于异常状态的监测指令对应的线程,并将线程部署在kernel层的kthreadd进程和kernel进程中。进一步地,移动终端在部署kernel层的进程时,确定监测其kernel层wifi模块预设关键点对应位置的套接字缓冲区是否处于异常状态的监测指令对应线程,并将监测指令对应的线程部署在kernel层的kthreadd进程和kernel进程中,以便于可以全程监测kernel层wifi模块中的套接字缓冲区是否处于异常状态。需要说明的是,监测指令对应的线程在移动终端中是独立运行的。本实施例通过当监测到移动终端kernel层wifi模块中预设关键信息点对应位置的套接字缓冲区处于异常状态后,读取套接字缓冲区对应的异常标识;将异常标识与预存的日志标识进行匹配;若异常标识与日志标识匹配成功,则根据日志标识查找与日志标识关联的日志信息,并获取与套接字缓冲区对应进程的进程信息;根据进程信息和日志信息生成重启日志,以根据重启日志定位移动终端重启原因。实现了在移动终端未发生重启操作之前,预先获取移动终端会发生重启操作对应的重启日志,以便于在移动终端发生重启操作后,相应的工作人员可以根据重启日志快速确定导致移动终端重启的原因,提高了定位移动终端重启原因的效率,以及减少了人力成本。进一步地,提出本发明移动终端重启定位方法的第二实施例。移动终端重启定位方法的第二实施例与移动终端重启定位方法的第一实施例的区别在于,根据监测指令读取关键信息点的状态值的步骤包括:步骤b,根据监测指令按照第一读取频率读取关键信息点预设数量的第一状态值。步骤c,若根据预设数量的第一状态值都确定套接字缓冲区处于正常状态,则按照第二读取频率读取关键信息点预设数量的第二状态值。步骤d,若根据预设数量的第二状态值都确定套接字缓冲区处于正常状态,则按照第三读取频率读取关键信息点的第三状态值,其中,第二读取频率大于第一读取频率,小于第三读取频率。移动终端在根据监测指令读取关键信息点的状态值的过程为:移动终端根据监测指令按照第一读取频率读取关键信息点预设数量的第一状态值,并判断所读取的预设数量的第一状态值是否都能确定套接字缓冲区处于正常状态。若所读取的预设数量的第一状态值都能确定套接字缓冲区处于正常状态,则按照第二读取频率读取关键信息点预设数量的第二状态值,并判断所读取的预设数量的第二状态值是否都能确定套接字缓冲区处于正常状态。若所读取的预设数量的第二状态值都能确定套接字缓冲区处于正常状态,则按照第三读取频率读取关键信息点预设数量的第三状态值,以根据第三状态值确定关键信息点对应位置的套接字缓冲区是否处于异常状态。其中,第二读取频率大于第一读取频率,且小于第三读取频率。第一读取频率、第二读取频率、第三读取频率和预设数量可根据具体需要而设置,如可将第一读取频率设置为每间隔1秒读取一次,将第二读取频率设置为每间隔3秒读取一次,将第三读取频率设置为每间隔5秒读取一次,预设数量设置为5。即当移动终端根据监测指令在连续5次以1秒间隔读取的状态值都表明套接字缓冲区处于正常状态后,每间隔3秒连续读取5次关键信息点对应的状态值,若每间隔3秒读取的5个状态值都表明套接字缓冲区处于正常状态,则每间隔5秒连续读取5次关键信息点对应的状态值,根据每间隔5秒连续读取的5个状态值来确定关键信息点对应位置的套接字缓冲区是否处于异常状态。需要说明的是,在其它实施例中,可以再增加设置读取关键信息点状态值的读取频率,如若每间隔5秒连续读取的5个状态值都表明套接字缓冲区处于正常状态时,以每间隔8秒连续读取5次关键信息点对应的状态值。在本实施例中对此不做限制。进一步地,移动终端重启定位方法还包括:步骤e,若根据一个第一状态值确定套接字缓冲区处于异常状态,则检测移动终端是否发生重启操作。步骤f,若移动终端未发生重启操作,则按照第四读取频率读取关键信息点的状态值。进一步地,若根据监测指令按照第一读取频率读取关键信息点预设数量的第一状态值过程中,根据一个第一状态值确定套接字缓冲区处于异常状态,移动终端则检测其是否发生重启操作。若移动终端未发生重启操作,移动终端则按照第四读取频率读取关键信息点的状态值。进一步,若移动终端发生重启操作,则表明移动终端已经初始化了,移动终端则检测是否侦测到监测其kernel层wifi模块中预设关键信息点状态值的监测指令。其中,第四读取频率可根据具体需要而设置,如第四读取频率可设置为与第一读取频率相等,都设置为每间隔1秒读取一次;或者设置为与第一读取频率不相等,如将第四读取频率设置为每间隔0.8秒读取一次,或者每隔2秒读取一次。为了便于理解,举例说明该过程:当移动终端在根据监测指令按照每间隔1秒连续读取5次关键信息点状态值过程中,若根据第3秒读取的关键信息点的状态值确定对应位置的套接字缓冲区处于异常状态,且移动终端未发生重启操作,移动终端则按照每间隔0.8读取一次关键信息点的状态值(此时,第四读取频率设置为0.8秒读取一次)。可以理解的是,若根据一个第二状态值或者第三状态值确定套接字缓冲区处于异常状态,移动终端则检测是否发生重启操作。本实施例通过设置读取关键信息点的读取频率,以在wifi模块关键信息点对应位置的套接字缓冲区处于正常状态时,增大读取关键信息点状态值的读取频率,以在套接字缓冲区处于正常状态时,减少读取关键信息点状态值的次数。进一步地,提出本发明移动终端重启定位方法的第三实施例。移动终端重启定位方法的第三实施例与移动终端重启定位方法的第一和/或第二实施例的区别在于,参照图5,移动终端重启定位方法还包括:步骤s50,存储重启日志,并确定在第二预设时间内存储的重启日志。步骤s60,对第二预设时间内存储的日志信息执行去冗余操作,以节省存储空间。当生成重启日志后,移动终端存储重启日志,并确定在第二预设时间内存储的重启日志,并对第二预设时间内存储的重启日志执行去冗余操作,以节省移动终端的存储空间。具体地,在执行去冗余操作过程中,只存储属于同一类重启操作的一条重启日志,删除所存储的该类重启操作对应的其它重启日志,对应记录属于同一类重启操作的重启日志数量,以及对应套接字缓冲区是否已经从异常状态转变为正常状态,并记录该套接字缓冲区从异常状态转变为正常状态的转变时间。其中,第二预设时间可根据具体需要而设置,如可将第二预设时间设置为45分钟、60分钟、或者100分钟等。需要说明的是,对重启日志进行分类存储过程中,可按照发生重启的原因进行分类存储,也可以按照发生重启的位置进行分类,在此不做限制。如当移动终端在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。需要说明的是,该去冗余操作的方案也可以适用于进程信息和日志信息,当对进程信息和日志信息进行去冗余操作时,具体的操作过程和对重启日志的进行去冗余操作过程一致,在此不做赘述。本实施例通过对第二预设时间内存储的重启日志进行去冗余操作,以节省移动终端的存储空间。进一步地,移动终端重启定位方法还包括:步骤g,判断在获取到进程信息后的第一预设时间内是否再次监测到关键信息点对应位置的套接字缓冲区处于异常状态。步骤h,若在第一预设时间内再次监测到关键信息点对应位置的套接字缓冲区处于异常状态,则存储进程信息。进一步地,当移动终端获取到进程信息后,移动终端判断在获取到进程信息后的第一预设时间内是否再次监测到关键信息点对应位置的套接字缓冲区处于异常状态。若在第一预设时间内再次监测到关键信息点对应位置的套接字缓冲区处于异常状态,移动终端则存储该进程信息,以根据该进程信息生成重启日志。进一步地,若在第一预设时间内未再次监测到关键信息点对应位置的套接字缓冲区处于异常状态,移动终端则删除所获取的进程信息。其中,第一预设时间可根据具体需要而设置,如可将第一预设时间设置为3分钟,5分钟,或者8分钟等。进一步地,移动终端在存储进程信息过程中,移动终端确定获取进程信息的获取时间,按照获取时间从前到后存储进程信息,将最后获取的进行信息排列在最前面。在本实施例中,通过判断在第一预设时间内是否再次监测到套接字缓冲区处于异常状态来确定是否存储进程信息,以控制所存储的进程信息的数量,以节省移动终端的存储空间。进一步地,提出本发明移动终端重启定位方法的第四实施例。移动终端重启定位方法的第四实施例与移动终端重启定位方法的第一和/或第二实施例的区别在于,参照图6,移动终端重启定位方法还包括:步骤s70,确定kernel层中wifi模块调用流程的识别节点、加载节点、运行节点、指令调配节点、跨进程数据通信节点、卸载节点、内存资源申请和释放节点、以及磁盘读写操作节点。步骤s80,在识别节点、加载节点、运行节点、指令调配节点、跨进程数据通信节点、卸载节点、内存资源申请和释放节点、以及磁盘读写操作节点中设置关键信息点。为了可以准确快速定位移动终端kernel层中wifi模块发生重启操作的原因。移动终端确定其kernel层中wifi模块调用流程的识别节点、加载节点、运行节点、指令调配节点、跨进程数据通信节点、卸载节点、内存资源申请和释放节点、以及磁盘读写操作节点,并在识别节点、加载节点、运行节点、指令调配节点、跨进程数据通信节点、卸载节点、内存资源申请和释放节点、以及磁盘读写操作节点中设置关键信息点,以通过该关键信息点监测对应节点的套接字缓冲区是否处于异常状态。可以理解的是,识别节点、加载节点、运行节点、指令调配节点、跨进程数据通信节点、卸载节点、内存资源申请和释放节点、以及磁盘读写操作节点是wifi模块调用流程中比较重要的节点。频率控制节点为套接字缓冲区的频率控制节点。进一步地,为了可以快速定位移动终端发生重启操作的重启原因,移动终端确定wifi模块中各个功能的时序逻辑,在时序逻辑对应的各个功能节点中设置关键信息点。如wifi模块中某个功能的时序逻辑为:a→b→c→d,则在a节点,b节点,c节点和d节点分别设置关键信息点。可以理解的是,由于在移动终端不同模块对应服务的调用流程和时序逻辑中设置的关键信息点,因此,在确定移动终端发生重启操作后,还可以根据该关键信息点确定重启操作的类型,即确定移动终端是由于java框架层、native框架层、或者是kernel层中wifi模块等出现异常导致重启操作。本实施例通过在wifi模块的调用流程的识别节点、加载节点、运行节点、指令调配节点、跨进程数据通信节点、卸载节点、内存资源申请和释放节点、以及磁盘读写操作节点设置关键信息点,通过监测wifi模块中各个关键信息点来判断对应套接字缓冲区是否处于异常状态,以定位移动终端wifi模块调用流程中重要节点发生重启操作的重启原因。此外,本发明实施例还提出一种计算机可读存储介质。所述计算机可读存储介质上存储有移动终端重启定位程序,所述移动终端重启定位程序被处理器执行时实现如下步骤:当监测到移动终端kernel层wifi模块中预设关键信息点对应位置的套接字缓冲区处于异常状态后,读取所述套接字缓冲区对应的异常标识;将所述异常标识与预存的日志标识进行匹配;若所述异常标识与所述日志标识匹配成功,则根据所述日志标识查找与所述日志标识关联的日志信息,并获取与所述套接字缓冲区对应进程的进程信息;根据所述进程信息和所述日志信息生成重启日志,以根据所述重启日志定位所述移动终端重启原因。进一步地,所述当监测到移动终端kernel层wifi模块中预设关键信息点对应位置的套接字缓冲区处于异常状态后,读取所述套接字缓冲区对应的异常标识的步骤包括:当检测到监测移动终端kernel层wifi模块中预设关键信息点的监测指令后,根据所述监测指令读取所述关键信息点的状态值;根据所述状态值确定所述关键信息点对应位置的套接字缓冲区是否处于异常状态;若所述套接字缓冲区处于异常状态,则读取所述套接字缓冲区对应的异常标识。进一步地,所述根据所述监测指令读取所述关键信息点的状态值的步骤包括:根据所述监测指令按照第一读取频率读取所述关键信息点预设数量的第一状态值;若根据预设数量的所述第一状态值都确定所述套接字缓冲区处于正常状态,则按照第二读取频率读取所述关键信息点预设数量的第二状态值;若根据预设数量的所述第二状态值都确定所述套接字缓冲区处于正常状态,则按照第三读取频率读取所述关键信息点的第三状态值,其中,所述第二读取频率大于所述第一读取频率,小于所述第三读取频率。进一步地,所述根据所述监测指令按照第一读取频率读取所述关键信息点预设数量的第一状态值的步骤之后,所述移动终端重启定位程序被处理器执行时实现如下步骤:若根据一个所述第一状态值确定所述套接字缓冲区处于异常状态,则检测所述移动终端是否发生重启操作;若所述移动终端未发生重启操作,则按照第四读取频率读取所述关键信息点的状态值。进一步地,所述根据所述进程信息和所述日志信息生成重启日志,以根据所述重启日志定位所述移动终端重启原因的步骤之前,所述移动终端重启定位程序被处理器执行时实现如下步骤:判断在获取到所述进程信息后的第一预设时间内是否再次监测到所述关键信息点对应位置的套接字缓冲区处于异常状态;若在所述第一预设时间内再次监测到所述关键信息点对应位置的套接字缓冲区处于异常状态,则存储所述进程信息。进一步地,所述根据所述进程信息和所述日志信息生成重启日志,以根据所述重启日志定位所述移动终端重启原因的步骤之后,所述移动终端重启定位程序被处理器执行时实现如下步骤:存储所述重启日志,并确定在第二预设时间内存储的所述重启日志;对所述第二预设时间内存储的日志信息执行去冗余操作,以节省存储空间。进一步地,所述当监测到移动终端kernel层wifi模块中预设关键信息点对应位置的套接字缓冲区处于异常状态后,读取所述套接字缓冲区对应的异常标识的步骤之前,所述移动终端重启定位程序被处理器执行时实现如下步骤:确定所述kernel层中wifi模块调用流程的识别节点、加载节点、运行节点、指令调配节点、跨进程数据通信节点、卸载节点、内存资源申请和释放节点、以及磁盘读写操作节点;在所述识别节点、加载节点、运行节点、指令调配节点、跨进程数据通信节点、卸载节点、内存资源申请和释放节点、以及磁盘读写操作节点中设置关键信息点。进一步地,所述当监测到移动终端kernel层wifi模块中预设关键信息点对应位置的套接字缓冲区处于异常状态后,读取所述套接字缓冲区对应的异常标识的步骤之前,所述移动终端重启定位程序被处理器执行时实现如下步骤:确定监测所述关键信息点对应位置套接字缓冲区是否处于异常状态的监测指令对应的线程,并将所述线程部署在所述kernel层的kthreadd进程和kernel进程中。本发明计算机可读存储介质具体实施方式与上述移动终端重启定位方法各实施例基本相同,在此不再赘述。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的
技术领域
:,均同理包括在本发明的专利保护范围内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1