一种Linux内核片缓存信息可视化的实现方法

文档序号:9727239阅读:265来源:国知局
一种Linux内核片缓存信息可视化的实现方法
【技术领域】
[0001]本发明涉及计算机技术领域,具体涉及一种Linux内核片缓存信息可视化的实现方法。
【背景技术】
[0002]Linux内核需要为临时对象如任务或者设备结构和节点分配内存,缓存分配器管理着这些类型对象的缓存。现代Linux内核部署了该缓存分配器以持有缓存,称之为片。不同类型的片缓存由片分配器维护。通过分析片缓存信息,可以了解系统的运行情况,分析是否有资源泄露或者存在不正常的资源使用。
[0003]QffT(QT Widgets for Technical Applicat1ns)是一个基于LGPL版权协议的开源项目,可以生成各种统计图。它为具有技术专业背景的程序提供GUI组件和一组实用类,其目标是以基于2D方式的窗体部件来显示数据,数据源以数值、数组或一组浮点数等方式提供,输出方式可以是Curves(曲线)、Slider(滚动条)、Dials(圆盘)、Compasses(仪表盘)等。该工具库基于QT开发,所以也继承了 QT的跨平台特性。

【发明内容】

[0004]本发明要解决的技术问题是:本发明提供一种Linux内核片缓存信息可视化的实现方法,用户可以通过分析内核片缓存的实时动态曲线了解系统的运行状况、分析资源的使用情况等。
[0005]本发明所采用的技术方案为:
一种Linux内核片缓存信息可视化的实现方法,所述方法首先使用Linux命令获取内核片缓存的信息,并将相关数据处理后存储到数据库中,之后从数据库中获取数据并进行可视化处理,使用QT编程工具实现内核片缓存信息的实时动态曲线展现。
[0006]用户可以通过分析内核片缓存的实时动态曲线了解系统的运行状况、分析资源的使用情况等。
[0007]所述方法基于Linux操作系统,实现流程如下:
1)QT通过QProcess类调用Linux的slabtop命令,进而获取内核的片缓存信息;
2)首先根据实际需求,对获取的内核片缓存信息进行处理,然后使用QT中数据库相关的类(QSqlDatabase类、QSqlQuery类、QSqlRecord类),建立数据库文件、连接数据库,将处理后的信息存入数据库;
3)连接并打开数据库,从数据库中获取数据并存入对应数组,作为QWT绘图的数据源;
4)使用QWT绘制实时动态曲线,实现内核片缓存信息的可视化处理。
[0008]所述绘制实时动态曲线过程如下:
(1)使用QwtPlot绘制坐标轴,设置实时动态曲线的X轴、Y轴;
(2)获取数据并使用QwtPlotCurve绘制相关的实时动态曲线。
[0009]本发明的有益效果为: 本发明通过使用QT编程工具实现内核片缓存信息的实时动态曲线展现,用户可以通过分析内核片缓存的实时动态曲线了解系统的运行状况、分析资源的使用情况等。
【附图说明】
[0010]图1为内核片缓存信息的可视化实现流程图。
【具体实施方式】
[0011]下面参照附图所示,通过【具体实施方式】对本发明进一步说明:
实施例1:
一种Linux内核片缓存信息可视化的实现方法,所述方法首先使用Linux命令获取内核片缓存的信息,并将相关数据处理后存储到数据库中,之后从数据库中获取数据并进行可视化处理,使用QT编程工具实现内核片缓存信息的实时动态曲线展现。
[0012]用户可以通过分析内核片缓存的实时动态曲线了解系统的运行状况、分析资源的使用情况等。
[0013]实施例2:
如图1所示,在实施例1的基础上,本实施例所述方法基于Linux操作系统,实现流程如下:
1)QT通过QProcess类调用Linux的slabtop命令,进而获取内核的片缓存信息;
2)首先根据实际需求,对获取的内核片缓存信息进行处理;
然后使用QT中数据库相关的类(QSqlDatabase类、QSqlQuery类、QSqlRecord类),建立数据库文件、连接数据库,将处理后的信息存入数据库;
3)连接并打开数据库,从数据库中获取数据并存入对应数组,作为QWT绘图的数据源;
4)使用QWT绘制实时动态曲线,实现内核片缓存信息的可视化处理。
[0014]实施例3:
在实施例2的基础上,本实施例所述绘制实时动态曲线过程如下:
(1)使用QwtPlot绘制坐标轴,设置实时动态曲线的X轴、Y轴;
(2)获取数据并使用QwtPlotCurve绘制相关的实时动态曲线。
[0015]以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。
【主权项】
1.一种Linux内核片缓存信息可视化的实现方法,其特征在于:所述方法首先使用Linux命令获取内核片缓存的信息,并将相关数据处理后存储到数据库中,之后从数据库中获取数据并进行可视化处理,使用QT编程工具实现内核片缓存信息的实时动态曲线展现。2.根据权利要求1所述的一种Linux内核片缓存信息可视化的实现方法,其特征在于,所述方法基于Linux操作系统,实现流程如下: 1)QT通过QProcess类调用Linux的slabtop命令,进而获取内核的片缓存信息; 2)首先根据实际需求,对获取的内核片缓存信息进行处理,然后使用QT中数据库相关的类,建立数据库文件、连接数据库,将处理后的信息存入数据库; 3 )连接并打开数据库,从数据库中获取数据并存入对应数组,作为QWT绘图的数据源; 4)使用QWT绘制实时动态曲线,实现内核片缓存信息的可视化处理。3.根据权利要求2所述的一种Linux内核片缓存信息可视化的实现方法,其特征在于,所述绘制实时动态曲线过程如下: 1)使用QwtPlot绘制坐标轴,设置实时动态曲线的X轴、Y轴; 2)获取数据并使用QwtPlotCurve绘制相关的实时动态曲线。
【专利摘要】本发明公开了一种Linux内核片缓存信息可视化的实现方法,所述方法首先使用Linux命令获取内核片缓存的信息,并将相关数据处理后存储到数据库中,之后从数据库中获取数据并进行可视化处理,使用QT编程工具实现内核片缓存信息的实时动态曲线展现。本发明通过使用QT编程工具实现内核片缓存信息的实时动态曲线展现,用户可以通过分析内核片缓存的实时动态曲线了解系统的运行状况、分析资源的使用情况等。
【IPC分类】G06F11/32
【公开号】CN105487962
【申请号】CN201510839610
【发明人】柳玉巧, 吴登勇, 陈亮甫
【申请人】山东超越数控电子有限公司
【公开日】2016年4月13日
【申请日】2015年11月27日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1