一种内存监控系统及方法与流程

文档序号:11829340阅读:225来源:国知局
一种内存监控系统及方法与流程

本发明涉及移动终端测试技术领域,尤其涉及一种内存监控系统及方法。



背景技术:

随着移动网络的飞速发展,移动终端开始逐步进入人们的生活中。移动终端的功能非常丰富,人们可以通过移动终端实现网上冲浪、信息浏览以及实时聊天等各种娱乐功能。随着科技的发展,移动终端可以支持的功能愈加丰富,人们开始更多地通过移动终端进行网上购物、体验较大型的网络游戏、进行日常办公以及参加视频音频会议等。上述功能的实现需要移动终端具备更高的性能,更大的内存以及更流畅的人机交互体验。

现有技术中,对移动终端进行内存测试时,往往无法实时监控移动终端的内存使用情况,因此无法及时捕捉到测试过程中出现的内存异常,测试人员通常需要在移动终端运行一段时间后调取相应的测试日志才能查看内存使用情况,因此致使发现问题不够及时,并且对于问题关联的内容掌握也不够精确,可能影响到整个内存测试和分析的过程。



技术实现要素:

根据现有技术中存在的问题,现提供一种内存监控系统及方法的技术方案,旨在实现内存测试过程中对内存数据的实时监控;

上述技术方案具体包括:

一种内存监控系统,其中,包括控制端和至少一个移动终端,所述控制端连接所述移动终端,并控制所述移动终端运行;

所述控制端包括:

内存监控单元,其中预设有多个采集项目,每个所述采集项目下关联多个内存数据;

于所述移动终端运行过程中,所述内存监控单元在预定的时段内,根据 预设的监控规则,针对所有所述采集项目采集所述移动终端实时产生的相应的所述内存数据并输出;

结果查看单元,连接所述内存监控单元,用于根据使用者输入的查看规则,向使用者显示实时监控得到的相应的所述内存数据;

所述查看规则中包括待查看的所述采集项目,和/或待查看的采集时段。

优选的,该内存监控系统,其中,所述内存监控单元中包括:

第一设定模块,供使用者设定一次内存监控采用的所述监控规则;

所述监控规则包括:

设定本次内存监控针对的测试任务的标识;和/或

设定本次内存监控的采集时长;和/或

设定本次内存监控的采集间隔;

监控模块,连接所述第一设定模块,于使用者通过所述第一设定模块完成设定后,所述监控模块根据所述监控规则开始对所述移动终端进行内存监控。

优选的,该内存监控系统,其中,所述内存监控单元中还包括:

第一停止模块,分别连接所述第一设定模块和所述监控模块,用于在所述监控模块执行内存监控达到预设的所述采集时长时控制所述监控模块停止本次内存监控。

优选的,该内存监控系统,其中,所述内存监控单元中还包括:

第二停止模块,连接所述监控模块,用于根据外部输入的停止指令控制所述监控模块停止本次内存监控。

优选的,该内存监控系统,其中,所述结果查看单元中包括:

第二设定模块,供使用者设定本次查看对应的所述查看规则;

所述查看规则用于表示使用者需要查看的所述采集项目,或者使用者需要查看的所述内存数据;

绘制模块,连接所述第二设定模块,用于根据所述查看规则,绘制对应于实时采集得到的相应的所述内存数据的实时示意图;

显示模块,连接所述绘制模块,用于向使用者显示实时绘制得到的所述实时示意图。

优选的,该内存监控系统,其中,所述实时示意图为对应内存数据的波 形变化示意图。

一种内存监控方法,其中,包括控制端和至少一个移动终端,所述控制端连接所述移动终端,并控制所述移动终端运行;

所述内存监控方法包括:

在所述控制端中预设多个采集项目,每个所述采集项目下关联多个内存数据;

于所述移动终端运行过程中,所述控制端根据预设的监控规则,针对所有所述采集项目,实时采集相应的所述内存数据;

所述控制端根据预设的查看规则,向使用者实时显示采集得到的相应的所述内存数据。

优选的,该内存监控方法,其中,所述监控规则包括:

设定本次内存监控针对的测试任务的标识;和/或

设定本次内存监控的采集时长;和/或

设定本次内存监控的采集间隔。

优选的,该内存监控方法,其中,所述控制端于执行内存监控达到预设的所述采集时长后自动停止本次内存监控。

优选的,该内存监控方法,其中,所述控制端根据外部输入的停止指令停止一次内存监控。

优选的,该内存监控方法,其中,所述查看规则用于表示使用者需要查看的所述采集项目,或者使用者需要查看的所述内存数据。

优选的,该内存监控方法,其中,所述控制端根据预设的查看规则,向使用者实时显示采集得到的相应的所述内存数据的步骤具体包括:

步骤S1,获取所述控制端实时采集得到的针对所有所述采集项目的相应的内存数据;

步骤S2,根据预先设定的所述查看规则,从获取的所有所述内存数据中选择相应的所述内存数据;

步骤S3,根据被选择的所述内存数据绘制得到相应的实时示意图并向使用者显示。

优选的,该内存监控方法,其中,所述实时示意图为波形变化示意图。

上述技术方案的有益效果是:于移动终端运行过程中实现内存数据的实 时监控和显示,便于使用者实时掌握测试过程的内存使用情况,及时分析并排除测试故障。

附图说明

图1-2是本发明的较佳的实施例中,一种内存监控系统的结构示意图;

图3是本发明的较佳的实施例中,内存监控的采集项目的示意图;

图4是本发明的较佳的实施例中,一种内存监控方法中,查看监控结果的流程示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。

下面结合附图和具体实施例对本发明作进一步说明,但不作为本发明的限定。

现有技术中,对于移动终端的内存测试的主要方式大致有两种:

1)移动终端运行一段时间后,通过调用移动终端产生的日志文件(log),并分析日志文件判断其中是否存在与内存相关的运行异常;

2)通过测试脚本反复申请、释放内存空间来查看是否存在内存泄露。

上述两种方式只能延后得到内存测试的结果,因此均无法发现测试过程中内存出现问题的具体时间以及具体内容,并且测试结果往往是由文本方式呈现,无法给予测试人员一个比较直观的表现。

本发明的较佳的实施例中,基于现有技术中存在的上述问题,现提供一种内存监控系统。该系统适用于移动终端执行内存测试的过程中。

本发明的较佳的实施例中,如图1所示,上述内存监控系统包括控制端A和移动终端B。本发明的较佳的实施例中,控制端A与移动终端B相互连接,具体地,控制端A与移动终端B之间实现USB连接。

本发明的较佳的实施例中,控制端A通过USB连接,发出相应的指令控制移动终端B运行。具体地,本发明的较佳的实施例中,控制端A发送指令控制移动终端B运行各种应用,或者控制移动终端执行各种基本功能例如通话或短信收发等。则控制端A在移动终端B运行的过程中,实时监控移动终端B实时产生的内存数据,并向使用者显示这些实时采集到的内存数据。

本发明的较佳的实施例中,如图1所示,一个控制端A可以同时连接多个移动终端B。换言之,一个控制端A可以同时控制多个移动终端B执行内存测试并进行相应的内存数据采集。

本发明的较佳的实施例中,如图2所示,上述控制端A中具体包括:

内存监控单元1。本发明的较佳的实施例中,内存监控单元1中预设有多个采集项目,每个采集项目下关联有多个内存数据。即本发明的较佳的实施例中,内存监控单元1监控一个预设的采集项目,即表明监控该项目下所有内存数据。

本发明的一个较佳的实施例中,如图3所示,每个预设的采集项目均可以表示为一个监控文件,具体包括:

1)meminfo:该监控文件中主要存放内存的总大小和/或剩余大小,和/或交换空间的大小,和/或低内存情况,和/或高内存情况等;

2)mem_usage:该监控文件中主要存放内存的起始物理地址以及结束物理地址;

3)mem_used_total:该监控文件中主要存放当前已使用的内存大小;

4)slabinfo:该监控文件中主要存放内存的slab信息(内存分配信息);

5)pagetype:该监控文件中主要存放内存的分页情况;

6)pagetypeinfo:该监控文件中主要存放内存分页的详细情况,包括每个节点的具体信息等;

7)buddyinfo:该监控文件中主要存放内存的buddy信息(内存管理信息)。

本发明的其他实施例中,测试人员可以预设其他内存采集项目,即添加或者删除相应的内存监控文件,以控制内存监控需要采集的内存数据的数量。

本发明的较佳的实施例中,如图2所示,上述内存监控单元1中具体包括:

第一设定模块11。本发明的较佳的实施例中,第一设定模块11供使用者设定一次内存监控采用的监控规则。

本发明的较佳的实施例中,所谓监控规则,可以依据上文中所述的采集项目,即设定监控过程中需要采集的内存数据。本发明的较佳的实施例中,使用者通过第一设定模块11可以在每次内存监控开始前预先设定本次监控所依据的采集项目,也可以设定多次内存监控共同依据的采集项目。本发明的较佳的实施例中,在上述第一设定模块11中也预设有缺省的采集项目的集合,即在使用者没有对采集项目做任何设定时,以该缺省的采集项目的集合为依据进行内存监控并采集内存数据。

本发明的较佳的实施例中,监控规则中还包括:

设定本次内存监控针对的测试任务的标识;本发明的较佳的实施例中,所谓测试任务的标识,即为测试任务的ID。本发明技术方案中,上述内存监控与移动终端B正常工作时(例如执行某测试任务)的过程同时进行,因此需要得知当前的内存监控针对的是哪个测试任务,则控制端A可以根据测试任务的ID控制相应的移动终端B执行,以使内存监控更具有特定性;

和/或

设定本次内存监控的采集时长;本发明的较佳的实施例中,一次内存监控的采集时长即一次内存监控被规定持续的最大时长。当没有外部指令输入时,则内存监控持续到上述采集时长后自动停止;

和/或

设定本次内存监控的采集间隔;本发明的较佳的实施例中,由于内存监控是实时采集内存数据,因此需要设定一个采集间隔。内存监控单元1以该设定的采集间隔,于设定的采集时长的范围内周期性采集移动终端B产生的实时的内存数据。

本发明的较佳的实施例中,上述监控规则中设定的内容,同样可以针对单次内存监控,或者多次内存监控。或者在上诉第一设定模块11中预设有缺省的监控规则(包括上文中所述的采集项目的集合),当使用者并未设定任何监控规则时,采用该缺省的监控规则执行内存监控。

本发明的较佳的实施例中,上述内存监控单元1中还包括:

监控模块12,连接上述第一设定模块11。本发明的较佳的实施例中, 于使用者通过第一设定模块完成设定后,监控模块12根据监控规则开始对移动终端进行内存监控。

本发明的较佳的实施例中,当使用者设定好相应的监控规则后(如上文所述,也可以是预设的缺省的监控规则),监控模块12开始对移动终端B产生的实时的内存数据进行采集。具体地,本发明的较佳的实施例中,该内存监控和内存数据采集的过程与移动终端B正常运行(例如执行自动化测试)的过程同时进行,因此可以采集到移动终端B执行相应的测试任务的过程中的实时的内存数据。

本发明的一个实施例中,上述内存监控单元1中还包括:

第一停止模块13,分别连接上述第一设定模块11和监控模块12。在该实施例中,第一停止模块13检测监控模块12连续进行内存采集的工作时长是否达到上文中所述的监控规则中的采集时长,并在上述工作时长达到上述预设的采集时长时(即本次内存监控到时),第一停止模块13控制上述监控模块12停止本次内存监控和数据采集。换言之,在该实施例中,第一停止模块13提供了一种内存监控终止的方式,即将一次内存监控运行到达预设的采集时长时,内存监控停止。

本发明的另一个实施例中,上述内存监控单元1中还包括:

第二停止模块14,连接上述监控模块12。在该实施例中,第二停止模块13根据外部输入的停止指令,控制监控模块12停止本次内存监控和数据采集。换言之,在该实施例中,第二停止模块14提供了另一种内存监控终止的方式,即根据使用者输入的停止指令终止本次内存监控过程。使用者可以通过按下预定按键或者输入预定指令的方式输入相应的停止指令。

如图3所示,本发明的一个较佳的实施例中,将第一停止模块13和第二停止模块14同时包括在内存监控单元1中,可以同时提供上述两种内存监控的终止方式,使用者可以随意选择一种执行,例如不输入停止指令则自动选择第一停止模块13执行,输入停止指令则自动选择第二停止模块14执行。

本发明的其他实施例中,上述内存监控单元1中可以仅包括第一停止模块13或者第二停止模块14,即仅提供上述两种停止方式中的一种。

本发明的较佳的实施例中,上述控制端A中还包括:

结果查看单元2。本发明的较佳的实施例中,结果查看单元2用于根据 使用者输入的查看规则,向使用者显示实时监控得到的相应的内存数据;

本发明的较佳的实施例中,所谓查看规则,可以包括:

用于表示使用者需要查看的所述采集项目或者内存数据的规则;和/或使用者需要查看的采集时段;

本发明的较佳的实施例中,在上述查看规则中,使用者可以设定本次想要查看的采集项目,例如本次需要查看meminfo和mem_usage采集项目下的数据,则查看规则中可以设定相应的采集项目,供使用者查看这两个采集项目下的所有内存数据。或者,例如本次需要查看当前已使用的内存大小(属于mem_used_total采集项目)、当前内存的分页情况(属于pagetype采集项目)以及内存的buddy信息(属于buddyinfo采集项目),则查看规则中可以设定相应的内存数据,供使用者查看这三类内存数据。

本发明的较佳的实施例中,使用者还可以在查看规则中设定想要查看的内存数据的采集时段,以便于了解具体时段内移动终端B的内存使用情况。

具体地,如图2所示,本发明的较佳的实施例中,上述结果查看单元2中包括:

第二设定模块21。本发明的较佳的实施例中,第二设定模块21供使用者设定本次查看对应的查看规则。例如,如上文中所述,使用者可通过第二设定模块21设定本次数据查看采用的查看规则,包括查看哪些采集项目或者内存数据,以及查看哪个采集时段等。

绘制模块22,连接上述第二设定模块21。本发明的较佳的实施例中,绘制模块22用于根据查看规则,绘制对应于实时采集得到的相应的内存数据的实时示意图。

本发明的较佳的实施例中,由于查看过程与数据采集的过程同时进行,即将实时采集到的数据实时显示给使用者查看,因此绘制模块22将实时采集得到的内存数据分类进行实时绘制,以得到实时反映内存数据变化的示意图。

本发明的一个较佳的实施例中,上述示意图为波形图。换言之,该实施例中,绘制模块22将实时得到的内存数据分类别绘制成相应的波形变化图。例如,本次需要查看当前已使用的内存大小、当前内存的分页情况以及内存的buddy信息,则绘制模块22根据上述三类内存数据分别绘制相应的波形变化图。具体地,本发明的较佳的实施例中,当使用者并未设定上述查看时段 时,绘制模块22绘制相应的实时波形图并输出;而当使用者设定上述查看时段时(该查看时段的结束时刻早于当前查看的时刻),绘制模块22绘制该查看时段内的波形图。

本发明的较佳的实施例中,所谓实时波形变化图,可以以如下方式实现:绘制模块22以一定的时间间隔更新实时波形变化图,以将当前显示的波形变化图与当前采集得到的内存数据相对应,即保证使用者看到的波形图能够表示实时的内存数据变化。又例如,绘制模块22接收到新的当前采集得到的内存数据,即更新一次波形变化图,同样保证使用者看到的波形图能够表示实时的内存数据变化。

本发明的较佳的实施例中,使用者可以通过第二设定模块21重新设定相应的查看时段,以控制绘制模块22刷新当前的波形图

本发明的较佳的实施例中,上述结果查看单元2中还包括:

显示模块23,连接上述绘制模块22。本发明的较佳的实施例中,显示模块23用于向使用者显示上述绘制完成的波形图。

具体地,本发明的较佳的实施例中,显示模块23中预设有一图形模板。显示模块23将绘制模块22输出的波形图(对应有不同的内存数据,可能存在多个波形图)填充至上述图形模板中,并向使用者显示经过填充的图形模板。换言之,本发明的较佳的实施例中,最终向使用者显示的一个完整的界面中可能包括多个内存数据对应的区分显示的波形图。

综上所述,本发明技术方案的目的在于:于移动终端正常运行(例如执行自动化测试)过程中,通过设定相应的采集项目以及监控规则可以实时对移动终端产生的内存数据进行监控,并通过设定相应的查看规则,使内存数据可以实时显示给使用者查看,避免现有技术中测试过程中无法及时发现和解决内存问题,从而影响整个自动化测试的缺陷。

本发明的较佳的实施例中,基于上文中所述的内存监控系统,现提供一种内存监控方法的技术方案,该方法中,同样包括控制端A和移动终端B。本发明的较佳的实施例中,控制端A与移动终端B相互连接,具体地,控制端A与移动终端B之间实现USB连接。

本发明的较佳的实施例中,控制端A通过USB连接,发出相应的指令控制移动终端B运行。具体地,本发明的较佳的实施例中,控制端A发送指 令控制移动终端B运行各种应用,或者控制移动终端执行各种基本功能例如通话或短信收发等。则控制端A在移动终端B运行的过程中,实时监控移动终端B实时产生的内存数据,并向使用者显示这些实时采集到的内存数据。

本发明的较佳的实施例中,如图1所示,一个控制端A可以同时连接多个移动终端B。换言之,一个控制端A可以同时控制多个移动终端B执行内存测试并进行相应的内存数据采集。

本发明的较佳的实施例中,上述内存监控方法具体包括:

在控制端中预设多个采集项目,每个采集项目下关联多个内存数据;

于移动终端运行过程中,控制端根据预设的监控规则,针对所有采集项目,实时采集相应的内存数据;

控制端根据预设的查看规则,向使用者实时显示采集得到的相应的内存数据。

本发明的较佳的实施例中,上述监控规则和采集规则如上文中所述,在此不再赘述。

本发明的较佳的实施例中,绘制图形并向使用者显示的具体步骤如图4所示,包括:

步骤S1,获取控制端实时采集得到的针对所有采集项目的相应的内存数据;

步骤S2,根据预先设定的查看规则,从获取的所有内存数据中选择相应的内存数据;

步骤S3,根据被选择的内存数据绘制得到相应的实时示意图并向使用者显示。

本发明的较佳的实施例中,上述实时示意图可以为波形图。具体地,当使用者并未设定具体的查看时段,即判断使用者希望查看当前实时的内存数据时,向使用者显示实时的波形变化图;当使用者设定了相应的查看时段时,向使用者显示该查看时段内的具体的波形变化图。

以上所述仅为本发明较佳的实施例,并非因此限制本发明的实施方式及保护范围,对于本领域技术人员而言,应当能够意识到凡运用本发明说明书 及图示内容所作出的等同替换和显而易见的变化所得到的方案,均应当包含在本发明的保护范围内。

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