卡顿原因确定方法、装置及存储介质与流程

文档序号:11286023阅读:226来源:国知局
卡顿原因确定方法、装置及存储介质与流程

本公开涉及终端技术领域,特别涉及一种卡顿原因确定方法、装置及存储介质。



背景技术:

随着电子技术的发展,人机交互的方式已经由最初的按键交互方式演变为如今的触屏交互方式,例如,用户通过简单的滑屏操作就可以使终端进行相应的画面显示。然而,终端在显示画面的过程中,由于系统资源(包括中央处理器(英文:centralprocessingunit;简称:cpu)资源、内存资源和输入/输出(英文:input/output;简称:i/o)带宽资源等)不足等问题,画面往往会出现卡顿,导致画面的流畅性差,因此确定终端上的画面卡顿的原因是很有必要的。

相关技术中,一般将终端与电脑连接,通过电脑上的调试工具打开终端中的系统资源使用记录,在预设时间段内(一般为5至20秒)获取终端中的部分系统资源使用记录并将该部分系统资源使用记录保存在电脑中,然后通过电脑将该部分系统资源使用记录解析成图表的形式,再对图表进行分析以确定终端上的画面卡顿的原因。

但是,相关技术中确定终端上的画面卡顿的原因时必须要借助电脑,确定卡顿原因的灵活性较低。



技术实现要素:

为了解决相关技术中确定卡顿原因的灵活性较低的问题,本公开实施例提供了一种卡顿原因确定方法、装置及存储介质。所述技术方案如下:

根据本公开实施例的第一方面,提供一种卡顿原因确定方法,所述方法包括:

检测终端的显示画面是否发生卡顿;

当所述显示画面发生卡顿时,在所述终端中预先设置的n个缓存器中提取m种系统资源的使用记录,其中,每个缓存器用于存储至少一种系统资源的使用记录,n≥1,m≥1;

根据所述m种系统资源的使用记录,确定所述显示画面的卡顿原因。

可选的,所述方法还包括:

在所述终端的系统中划分出所述n个缓存器,每个缓存器占用的存储空间固定;

根据所述m种系统资源的最新使用记录,更新所述n个缓存器中的内容。

可选的,所述根据所述m种系统资源的最新使用记录,更新所述n个缓存器中的内容,包括:

获取第一系统资源的最新使用记录,所述第一系统资源为所述m种系统资源中任一种系统资源;

在用于存储所述第一系统资源的使用记录的第一缓存器中,删除所述第一系统资源最早的使用记录;

在所述第一缓存器中存储所述第一系统资源的最新使用记录。

可选的,所述第一缓存器中采用第一资源链表存储所述第一系统资源的使用记录,所述第一资源链表中的所述第一系统资源的使用记录按照时间先后顺序依次排列;

所述在用于存储所述第一系统资源的使用记录的第一缓存器中,删除所述第一系统资源最早的使用记录,包括:

判断所述第一资源链表中的表项是否全部被占用,当所述第一资源链表中的表项全部被占用时,删除所述第一资源链表的首个表项;

所述在所述第一缓存器存储所述第一系统资源的最新使用记录,包括:

在所述第一资源链表的末位增加表项,在增加的表项中记录所述第一系统资源的最新使用记录。

可选的,所述获取第一系统资源的最新使用记录,包括:

当监测到所述第一系统资源正在被使用时,判断所述第一系统资源是否为前台正在运行的目标应用所对应的系统资源;

当所述第一系统资源为所述目标应用所对应的系统资源时,获取所述第一系统资源的最新使用记录。

可选的,所述目标应用为任一前台正在运行的应用,或者,所述目标应用为前台正在运行的指定应用。

可选的,所述使用记录包括使用时间段,

所述根据所述m种系统资源使用记录,确定所述显示画面的卡顿原因,包括:

获取卡顿信息,所述卡顿信息包括所述显示画面产生卡顿的卡顿时间段;

在所述m种系统资源使用记录中确定至少一个目标使用记录,所述目标使用记录的使用时间段与所述卡顿时间段存在交集;

检测所述至少一个目标使用记录是否存在异常使用记录;

当所述至少一个目标使用记录存在异常使用记录时,确定所述显示画面的卡顿原因为所述异常使用记录所对应的系统资源存在异常。

可选的,所述方法还包括:

在所述终端中预先设置的n个缓存器中提取m种系统资源的使用记录之前,锁定所述n个缓存器,以使所述n个缓存器中的系统资源使用记录停止更新;

在所述终端中预先设置的n个缓存器中提取m种系统资源的使用记录之后,

对所述n个缓存器进行解锁,以使所述n个缓存器中的系统资源使用记录继续更新。

可选的,每个缓存器用于存储一种系统资源的使用记录。

可选的,所述m种系统资源包括内存资源、中央处理器cpu资源和输入输出带宽资源中的至少一种。

根据本公开实施例的第二方面,提供一种卡顿原因确定装置,所述装置包括:

检测模块,被配置为检测终端的显示画面是否发生卡顿;

提取模块,被配置为当所述显示画面发生卡顿时,在所述终端中预先设置的n个缓存器中提取m种系统资源的使用记录,其中,每个缓存器用于存储至少一种系统资源的使用记录,n≥1,m≥1;

确定模块,被配置为根据所述m种系统资源的使用记录,确定所述显示画面的卡顿原因。

可选的,所述装置还包括:

划分模块,被配置为在所述终端的系统中划分出所述n个缓存器,每个缓存器占用的存储空间固定;

更新模块,被配置为根据所述m种系统资源的最新使用记录,更新所述n个缓存器中的内容。

可选的,所述更新模块,包括:

第一获取子模块,被配置为获取第一系统资源的最新使用记录,所述第一系统资源为所述m种系统资源中任一种系统资源;

删除子模块,被配置为在用于存储所述第一系统资源的使用记录的第一缓存器中,删除所述第一系统资源最早的使用记录;

存储子模块,被配置为在所述第一缓存器中存储所述第一系统资源的最新使用记录。

可选的,所述第一缓存器中采用第一资源链表存储所述第一系统资源的使用记录,所述第一资源链表中的所述第一系统资源的使用记录按照时间先后顺序依次排列;

所述删除子模块,被配置为:

判断所述第一资源链表中的表项是否全部被占用,当所述第一资源链表中的表项全部被占用时,删除所述第一资源链表的首个表项;

所述存储子模块,被配置为:

在所述第一资源链表的末位增加表项,在增加的表项中记录所述第一系统资源的最新使用记录。

可选的,所述第一获取子模块,被配置为:

当监测到所述第一系统资源正在被使用时,判断所述第一系统资源是否为前台正在运行的目标应用所对应的系统资源;

当所述第一系统资源为所述目标应用所对应的系统资源时,获取所述第一系统资源的最新使用记录。

可选的,所述目标应用为任一前台正在运行的应用,或者,所述目标应用为前台正在运行的指定应用。

可选的,所述使用记录包括使用时间段,

所述确定模块,包括:

第二获取子模块,被配置为获取卡顿信息,所述卡顿信息包括所述显示画面产生卡顿的卡顿时间段;

第一确定子模块,被配置为在所述m种系统资源使用记录中确定至少一个目标使用记录,所述目标使用记录的使用时间段与所述卡顿时间段存在交集;

检测子模块,被配置为检测所述至少一个目标使用记录是否存在异常使用记录;

第二确定子模块,被配置为当所述至少一个目标使用记录存在异常使用记录时,确定所述显示画面的卡顿原因为所述异常使用记录所对应的系统资源存在异常。

可选的,所述装置还包括:

锁定模块,被配置为锁定所述n个缓存器,以使所述n个缓存器中的系统资源使用记录停止更新;

解锁模块,被配置为对所述n个缓存器进行解锁,以使所述n个缓存器中的系统资源使用记录继续更新。

可选的,每个缓存器用于存储一种系统资源的使用记录。

可选的,所述m种系统资源包括内存资源、中央处理器cpu资源和输入输出带宽资源中的至少一种。

根据本公开实施例的第三方面,提供一种卡顿原因确定装置,包括:

处理器;

用于存储所述处理器的可执行指令的存储器;

其中,所述处理器被配置为:

检测终端的显示画面是否发生卡顿;

当所述显示画面发生卡顿时,在所述终端中预先设置的n个缓存器中提取m种系统资源的使用记录,其中,每个缓存器用于存储至少一种系统资源的使用记录,n≥1,m≥1;

根据所述m种系统资源的使用记录,确定所述显示画面的卡顿原因。

根据本公开实施例的第四方面,提供一种存储介质,当所述存储介质中的指令由终端的处理器执行时,使得所述终端能够执行一种卡顿原因确定方法,所述方法包括:

检测终端的显示画面是否发生卡顿;

当所述显示画面发生卡顿时,在所述终端中预先设置的n个缓存器中提取m种系统资源的使用记录,其中,每个缓存器用于存储至少一种系统资源的使用记录,n≥1,m≥1;

根据所述m种系统资源的使用记录,确定所述显示画面的卡顿原因。

本公开的实施例提供的技术方案可以包括以下有益效果:

本公开实施例提供的卡顿原因确定方法、装置及存储介质,可以在终端中预先设置n个缓存器,并将m种系统资源的使用记录存储在该n个缓存器中,当检测到终端的显示画面发生卡顿时,可以根据终端的缓存器中的该m种系统资源的使用记录,确定显示画面的卡顿原因,无需借助电脑确定显示画面的卡顿原因,提高了确定卡顿原因的灵活性。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。

附图说明

为了更清楚地说明本公开的实施例,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本公开一示意性实施例提供的一种卡顿原因确定方法的流程图。

图2-1是本公开一示意性实施例提供的另一种卡顿原因确定方法的流程图。

图2-2是本公开一示意性实施例提供的一种更新缓存器内容的方法流程图。

图2-3a是本公开一示意性实施例提供的一种缓存器的数据结构示意图。

图2-3b是本公开一示意性实施例提供的另一种缓存器的数据结构示意图。

图2-3c是本公开一示意性实施例提供的又一种缓存器的数据结构示意图。

图2-4是本公开一示意性实施例提供的一种确定显示画面的卡顿原因的方法流程图。

图3-1是根据一示例性实施例示出的一种卡顿原因确定装置的框图。

图3-2是根据一示例性实施例示出的另一种卡顿原因确定装置的框图。

图3-3是根据一示例性实施例示出的一种更新模块的框图。

图3-4是根据一示例性实施例示出的一种确定模块的框图。

图3-5是根据一示例性实施例示出的又一种卡顿原因确定装置的框图。

图4是根据一示例性实施例示出的一种用于卡顿原因确定装置的框图。

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。

具体实施方式

为了使本公开的目的、技术方案和优点更加清楚,下面将结合附图对本公开作进一步地详细描述,显然,所描述的实施例仅仅是本公开一部份实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本公开保护的范围。

图1是本公开一示意性实施例提供的一种卡顿原因确定方法的流程图,该方法可以应用于终端,如图1所示,该方法包括:

步骤101、检测终端的显示画面是否发生卡顿。

步骤102、当显示画面发生卡顿时,在终端中预先设置的n个缓存器中提取m种系统资源的使用记录,其中,每个缓存器用于存储至少一种系统资源的使用记录,n≥1,m≥1。

步骤103、根据m种系统资源的使用记录,确定显示画面的卡顿原因。

综上所述,本公开实施例提供的卡顿原因确定方法,可以在终端中预先设置n个缓存器,并将m种系统资源的使用记录存储在该n个缓存器中,当检测到终端的显示画面发生卡顿时,可以根据终端的缓存器中的该m种系统资源的使用记录,确定显示画面的卡顿原因,无需借助电脑确定显示画面的卡顿原因,提高了确定卡顿原因的灵活性。

本公开实施例提供的卡顿原因确定方法可以应用于安装有安卓系统的终端,图2-1是本公开一示意性实施例提供的一种卡顿原因确定方法的流程图,如图2-1所示,该方法包括:

步骤201、在终端的系统中划分出n个缓存器,该n个缓存器用于存储m种系统资源的使用记录,n≥1,m≥1。

实际应用中,可以在安卓系统的linux内核中划分出n个缓存器,该n个缓存器可以存储m种系统资源的使用记录,其中,每个缓存器用于存储至少一种系统资源的使用记录。

可选的,每个缓存器可以用于存储一种系统资源的使用记录,一种系统资源的使用记录存储在单独的缓存器中,便于系统资源的使用记录的分类,为后期从缓存器中提取相应种类的系统资源的使用记录提供了便利。

可选的,m种系统资源可以包括内存资源、cpu资源和i/o带宽资源中的至少一种。

需要说明的是,每个缓存器占用的存储空间固定,可选的,每个缓存器占用的存储空间可以为8千字节(英文:kilobyte;简称:kb)。

步骤202、根据m种系统资源的最新使用记录,更新n个缓存器中的内容。

可选的,根据m种系统资源的最新使用记录,更新n个缓存器中的内容的方法,如图2-2所示,可以包括:

步骤2021、获取第一系统资源的最新使用记录,该第一系统资源为m种系统资源中任一种系统资源。

可选的,获取第一系统资源的最新使用记录的方法,可以包括:

s11、当监测到第一系统资源正在被使用时,判断第一系统资源是否为前台正在运行的目标应用所对应的系统资源。

在本公开实施例中,目标应用是预先设定的需要存储器记录系统资源的使用记录的应用。可选的,该目标应用可以为任一前台正在运行的应用,例如,假设用户当前在终端的显示画面上使用米聊,则米聊为一目标应用,需要判断第一系统资源是否为米聊所对应的系统资源,也即是判断第一系统资源是否为米聊所占用的系统资源;或者,目标应用可以为前台正在运行的指定应用,例如指定应用包括米聊、小米桌面和小米视频,当前台正在运行米聊时,则米聊为一目标应用,需要判断第一系统资源是否为米聊所占用的系统资源。

s12、当第一系统资源为目标应用所对应的系统资源时,获取第一系统资源的最新使用记录。

步骤2022、在用于存储第一系统资源的使用记录的第一缓存器中,删除第一系统资源最早的使用记录。

可选的,第一缓存器中可以采用第一资源链表存储第一系统资源的使用记录,该第一资源链表中的第一系统资源的使用记录按照时间先后顺序依次排列。

可选的,假设每个缓存器中存储一种系统资源的使用记录,定义存储内存资源的使用记录的缓存器为buffer1,存储cpu资源的使用记录的缓存器为buffer2,存储i/o带宽资源的使用记录的缓存器为buffer3。buffer1的数据结构可以如图2-3a所示,buffer1中记录了开始请求内存分配的第一时间戳t1,目标应用对应的进程标识pid以及从开始请求内存分配到分配到内存过程的时长d1;buffer2的数据结构可以如图2-3b所示,buffer2中记录了cpu开始调度的第二时间戳t2,目标应用对应的进程标识pid以及cpu调度的持续时长d2;buffer3的数据结构可以如图2-3c所示,buffer3中记录了开始i/o的第三时间戳t3,目标应用对应的进程标识pid以及i/o的持续时长d3。

示例的,假设第一系统资源为cpu资源,则如图2-3b所示,第一资源链表buffer2中第一系统资源的使用记录从上至下按照时间先后顺序依次排列,假设第一资源链表buffer2中一共可以存储q条使用记录,表项data1存储第一系统资源的使用记录中最早的使用记录,表项dataq存储第一系统资源的使用记录中最新的使用记录。假设第一资源链表buffer2中一共可以存储3条使用记录,3条使用记录的时间戳分别为9:00、9:05和9:10,则表项data1存储9:00对应的使用记录,表项dataq存储9:10对应的使用记录。

可选的,在用于存储第一系统资源的第一缓存器中,删除第一系统资源最早的使用记录的方法,可以包括:

判断第一资源链表中的表项是否全部被占用,当第一资源链表中的表项全部被占用时,删除第一资源链表的首个表项。

示例的,如图2-3b所示,当第一资源链表buffer2中的q个表项全部被占用时,删除第一资源链表的首个表项也即是删除表项data1,则原先表项data2成为新的表项data1,原先的表项dataq成为表项dataq-1。

需要说明的是,由于缓存器中只存储目标应用所对应的系统资源的使用记录,缓存器中可以存储过去几秒内目标应用所对应的系统资源的使用记录,便于后期提取目标应用所对应的系统资源的使用记录。

步骤2023、在第一缓存器中存储第一系统资源的最新使用记录。

可选的,在第一缓存器中存储第一系统资源的最新使用记录的方法,可以包括:

在第一资源链表的末位增加表项,在增加的表项中记录第一系统资源的最新使用记录。

示例的,如图2-3b所示,在第一资源链表buffer2的表项dataq-1的后面增加表项dataq,在表项dataq中记录第一系统资源的最新使用记录。

步骤203、检测终端的显示画面是否发生卡顿。

可选的,可以在终端中预先设置在终端的显示界面上的一次滑屏操作对应的终端所需绘制的图像帧的帧数,假设在终端的显示界面上进行一次滑屏操作,终端需要绘制30个图像帧,则可以检测预设时间内用户对显示界面的滑屏操作的次数与终端绘制的图像帧的帧数是否满足公式:图像帧的帧数=滑屏操作的次数×30,当不满足该公式时,确定终端的显示画面发生卡顿。

步骤204、当显示画面发生卡顿时,锁定n个缓存器,以使n个缓存器中的系统资源使用记录停止更新。

需要说明的是,当显示画面发生卡顿时,锁定该n个缓存器,可以防止该n个缓存器中的系统资源使用记录继续更新,导致显示画面发生卡顿时的系统资源使用记录被删除。

步骤205、提取m种系统资源的使用记录。

可选的,可以从锁定的n个缓存器中提取目标应用对应的m种系统资源的使用记录。

步骤206、对n个缓存器进行解锁,以使n个缓存器中的系统资源使用记录继续更新。

需要说明的是,在提取m种系统资源的使用记录之后,对n个缓存器进行解锁,使得该n个缓存器中的系统资源使用记录得以更新。

步骤207、根据m种系统资源的使用记录,确定显示画面的卡顿原因。

可选的,该使用记录可以包括系统资源的使用时间段,实际应用中,如图2-3a至2-3c所示,该使用记录可以包括开始时间戳和使用持续时长,根据开始时间戳和使用持续时长可以获取系统资源的使用时间段。

可选的,根据m种系统资源使用记录,确定显示画面的卡顿原因的方法,如图2-4所示,可以包括:

步骤2071、获取卡顿信息,该卡顿信息包括显示画面产生卡顿的卡顿时间段。

需要说明的是,可以在检测终端的显示画面是否发生卡顿的过程中,当确定终端的显示画面发生卡顿时,获取卡顿信息。

可选的,当终端的显示画面发生卡顿时,也即是终端所绘制的图像帧中存在“掉帧”时,可以获取掉帧的时间段,也即是显示画面产生卡顿的卡顿时间段。

步骤2072、在m种系统资源使用记录中确定至少一个目标使用记录,该目标使用记录的使用时间段与卡顿时间段存在交集。

示例的,假设卡顿时间段为10秒至11秒,卡顿持续时长为1秒,以cpu资源为例进行说明,由于一次cpu调度的持续时长一般在10毫秒以内,因此在卡顿时间段内,缓存器buffer2中可以记录有多个时间段的目标使用记录。

步骤2073、检测至少一个目标使用记录是否存在异常使用记录。

示例的,以卡顿时长为1秒为例进行说明,以卡顿时长的四分之一的时长也即是0.25秒为阈值。当目标使用记录为内存资源的使用记录时,检测1秒内目标应用从开始请求内存分配到分配到内存的过程的时长的总和total1是否超过0.25秒,当total1超过0.25秒时,确定内存资源的使用记录存在异常使用记录;当目标使用记录为cpu资源的使用记录时,检测1秒内cpu调度的持续时长的时长的总和total2是否少于0.75秒,当total2少于0.75秒时,确定cpu资源的使用记录存在异常使用记录;当目标使用记录为i/o带宽资源的使用记录时,1秒内i/o的持续时长的总和total3是否超过0.25秒,当total3超过0.25秒时,确定i/o带宽资源的使用记录存在异常使用记录。或者,当total1、total2和total3都不满足上述条件时,确定(0.25-total1)、(total2-0.75)和(0.25-total3)中数值的最小的对应的系统资源存在异常。

步骤2074、当至少一个目标使用记录存在异常使用记录时,确定显示画面的卡顿原因为该异常使用记录所对应的系统资源存在异常。

可选的,当内存资源的使用记录存在异常使用记录时,确定内存资源存在异常;当cpu资源的使用记录存在异常使用记录,确定cpu资源存在异常;当i/o带宽资源的使用记录存在异常使用记录时,确定i/o带宽资源存在异常。

实际应用中,在确定显示画面的卡顿原因后,卡顿处理模块可以根据该卡顿原因进行相关处理,例如,卡顿原因为cpu资源存在异常,则卡顿处理模块可以在终端的显示画面上进行提示,提示用户关闭后台占用cpu资源的应用等。

需要说明的是,本公开实施例提供的卡顿原因确定方法步骤的先后顺序可以进行适当调整,步骤也可以根据情况进行相应增减,例如步骤202与步骤203的位置可以交换,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本公开的保护范围之内,因此不再赘述。

综上所述,本公开实施例提供的卡顿原因确定方法,可以在终端中预先设置n个缓存器,并将m种系统资源的使用记录存储在该n个缓存器中,当检测到终端的显示画面发生卡顿时,可以根据终端的缓存器中的该m种系统资源的使用记录,确定显示画面的卡顿原因,无需借助电脑确定显示画面的卡顿原因,提高了确定卡顿原因的灵活性。

图3-1是根据一示例性实施例示出的一种卡顿原因确定装置30的框图,如图3-1所示,该装置30可以包括:

检测模块301,被配置为检测终端的显示画面是否发生卡顿。

提取模块302,被配置为当显示画面发生卡顿时,在终端中预先设置的n个缓存器中提取m种系统资源的使用记录,其中,每个缓存器用于存储至少一种系统资源的使用记录,n≥1,m≥1。

确定模块303,被配置为根据m种系统资源的使用记录,确定显示画面的卡顿原因。

综上所述,本公开实施例提供的卡顿原因确定装置,可以在终端中预先设置n个缓存器,并将m种系统资源的使用记录存储在该n个缓存器中,当通过检测模块检测到终端的显示画面发生卡顿时,可以通过提取模块获取终端的缓存器中的该m种系统资源的使用记录,再通过确定模块确定显示画面的卡顿原因,无需借助电脑确定显示画面的卡顿原因,提高了确定卡顿原因的灵活性。

可选的,如图3-2所示,该装置30还可以包括:

划分模块304,被配置为在终端的系统中划分出n个缓存器,每个缓存器占用的存储空间固定。

更新模块305,被配置为根据m种系统资源的最新使用记录,更新n个缓存器中的内容。

可选的,如图3-3所示,更新模块305,可以包括:

第一获取子模块3051,被配置为获取第一系统资源的最新使用记录,该第一系统资源为m种系统资源中任一种系统资源。

删除子模块3052,被配置为在用于存储第一系统资源的使用记录的第一缓存器中,删除第一系统资源最早的使用记录。

存储子模块3053,被配置为在第一缓存器中存储第一系统资源的最新使用记录。

实际应用中,第一缓存器中可以采用第一资源链表存储第一系统资源的使用记录,该第一资源链表中的第一系统资源的使用记录按照时间先后顺序依次排列。

相应的,删除子模块3052,被配置为:判断第一资源链表中的表项是否全部被占用,当第一资源链表中的表项全部被占用时,删除第一资源链表的首个表项;存储子模块3053,被配置为:在第一资源链表的末位增加表项,在增加的表项中记录第一系统资源的最新使用记录。

可选的,第一获取子模块3051,可以被配置为:

当监测到第一系统资源正在被使用时,判断第一系统资源是否为前台正在运行的目标应用所对应的系统资源;当第一系统资源为目标应用所对应的系统资源时,获取第一系统资源的最新使用记录。

可选的,目标应用可以为任一前台正在运行的应用,或者,目标应用可以为前台正在运行的指定应用。

可选的,使用记录可以包括使用时间段,如图3-4所示,确定模块303,可以包括:

第二获取子模块3031,被配置为获取卡顿信息,该卡顿信息包括显示画面产生卡顿的卡顿时间段。

第一确定子模块3032,被配置为在m种系统资源使用记录中确定至少一个目标使用记录,该目标使用记录的使用时间段与卡顿时间段存在交集。

检测子模块3033,被配置为检测至少一个目标使用记录是否存在异常使用记录。

第二确定子模块3034,被配置为当至少一个目标使用记录存在异常使用记录时,确定显示画面的卡顿原因为该异常使用记录所对应的系统资源存在异常。

进一步的,如图3-5所示,装置30还可以包括:

锁定模块306,被配置为锁定n个缓存器,以使该n个缓存器中的系统资源使用记录停止更新。

解锁模块307,被配置为对n个缓存器进行解锁,以使该n个缓存器中的系统资源使用记录继续更新。

可选的,每个缓存器可以用于存储一种系统资源的使用记录。

可选的,m种系统资源包括内存资源、cpu资源和i/o带宽资源中的至少一种。

综上所述,本公开实施例提供的卡顿原因确定装置,可以在终端中预先设置n个缓存器,并将m种系统资源的使用记录存储在该n个缓存器中,当通过检测模块检测到终端的显示画面发生卡顿时,可以通过提取模块获取终端的缓存器中的该m种系统资源的使用记录,再通过确定模块确定显示画面的卡顿原因,无需借助电脑确定显示画面的卡顿原因,提高了确定卡顿原因的灵活性。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

本公开实施例提供一种卡顿原因确定装置,包括:

处理器;

用于存储所述处理器的可执行指令的存储器;

其中,所述处理器被配置为:

检测终端的显示画面是否发生卡顿;

当所述显示画面发生卡顿时,在所述终端中预先设置的n个缓存器中提取m种系统资源的使用记录,其中,每个缓存器用于存储至少一种系统资源的使用记录,n≥1,m≥1;

根据所述m种系统资源的使用记录,确定所述显示画面的卡顿原因。

图4是根据一示例性实施例示出的一种用于卡顿原因确定装置400的框图。例如,装置400可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。

参照图4,装置400可以包括以下一个或多个组件:处理组件402,存储器404,电源组件406,多媒体组件408,音频组件410,输入/输出(i/o)的接口412,传感器组件414,以及通信组件416。

处理组件402通常控制装置400的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件402可以包括一个或多个处理器420来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件402可以包括一个或多个模块,便于处理组件402和其他组件之间的交互。例如,处理组件402可以包括多媒体模块,以方便多媒体组件408和处理组件402之间的交互。

存储器404被配置为存储各种类型的数据以支持在装置400的操作。这些数据的示例包括用于在装置400上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器404可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。

电源组件406为装置400的各种组件提供电力。电源组件406可以包括电源管理系统,一个或多个电源,及其他与为装置400生成、管理和分配电力相关联的组件。

多媒体组件408包括在所述装置400和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(lcd)和触摸面板(tp)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件408包括一个前置摄像头和/或后置摄像头。当装置400处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。

音频组件410被配置为输出和/或输入音频信号。例如,音频组件410包括一个麦克风(mic),当装置400处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器404或经由通信组件416发送。在一些实施例中,音频组件410还包括一个扬声器,用于输出音频信号。

i/o接口412为处理组件402和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。

传感器组件414包括一个或多个传感器,用于为装置400提供各个方面的状态评估。例如,传感器组件414可以检测到装置400的打开/关闭状态,组件的相对定位,例如所述组件为装置400的显示器和小键盘,传感器组件414还可以检测装置400或装置400一个组件的位置改变,用户与装置400接触的存在或不存在,装置400方位或加速/减速和装置400的温度变化。传感器组件414可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件414还可以包括光传感器,如cmos或ccd图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件414还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。

通信组件416被配置为便于装置400和其他设备之间有线或无线方式的通信。装置400可以接入基于通信标准的无线网络,如wifi,2g或3g,或它们的组合。在一个示例性实施例中,通信组件416经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件416还包括近场通信(nfc)模块,以促进短程通信。例如,在nfc模块可基于射频识别(rfid)技术,红外数据协会(irda)技术,超宽带(uwb)技术,蓝牙(bt)技术和其他技术来实现。

在示例性实施例中,装置400可以被一个或多个应用专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理设备(dspd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。

在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器404,上述指令可由装置400的处理器420执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。

一种非临时性计算机可读存储介质,当所述存储介质中的指令由装置400的处理器执行时,使得装置400能够执行一种卡顿原因确定方法,所述方法包括:

检测终端的显示画面是否发生卡顿;

当所述显示画面发生卡顿时,在所述终端中预先设置的n个缓存器中提取m种系统资源的使用记录,其中,每个缓存器用于存储至少一种系统资源的使用记录,n≥1,m≥1;

根据所述m种系统资源的使用记录,确定所述显示画面的卡顿原因。

其中,该装置400可以为终端。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。

应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1