[发明专利]一种基于序列模式挖掘的程序级操作系统调试方法无效

专利信息
申请号: 200810062635.9 申请日: 2008-06-27
公开(公告)号: CN101308473A 公开(公告)日: 2008-11-19
发明(设计)人: 卜佳俊;陈华;盛其彬;罗琰;蔡晖;张毅超 申请(专利权)人: 浙江大学
主分类号: G06F11/36 分类号: G06F11/36
代理公司: 杭州求是专利事务所有限公司 代理人: 韩介梅
地址: 310027*** 国省代码: 浙江;33
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明公开的一种基于序列模式挖掘的程序级操作系统调试方法,包括通过序列模式挖掘来找到所有频繁系统调用序列模式,计算隐马尔可夫模型中的各项参数来识别异常系统调用序列。该方法提出了利用序列模式挖掘方法对桌面操作系统中的系统调用序列集进行模式挖掘,找到所有频繁序列集,利用频繁序列集训练隐马尔可夫模型,通过马尔可夫模型来最终识别异常系统调用序列,能够准确、快速的定位整个桌面操作系统bug所在位置,有利于用户不断完善操作系统。
搜索关键词: 一种 基于 序列 模式 挖掘 程序 操作系统 调试 方法
【主权项】:
1.一种基于序列模式挖掘的程序级操作系统调试方法,其特征在于它依次包括如下步骤:1)数据预处理通过在操作系统中插入跟踪代码,将其中的系统调用记录到文件中,对每个系统调用进行编号,然后通过二分切割法对序列进行匹配切割成短序列;2)设置序列模式挖掘的基本参数:系统调用序列集S,种子序列集P,最终序列集R,序列的个数N,序列模式的最小支持数min_sup;3)频繁序列的模式挖掘第一步扫描系统调用序列集,生成所有长度为1的序列模式,判断其是否为种子序列;第二步再次扫描系统调用序列集,由长度为1的序列模式构造下三角矩阵,得到所有长度为2的序列模式;第三步分析第二步中得到的矩阵,利用前后缀的基本特性来检验候选序列,对每个长度为k+1和k+2的候选序列,根据下三角矩阵,定义两种类型的值,一种是对角线上的值M[f,f],另一种是非对角线上的值M[a,b],f,a,b代表长度为1的序列模式中的三个序列模式;a)如果K+1候选序列模式无任何值大于等于最小支持数,将候选序列模式放入最终序列集Rk+1;b)利用最终序列集Rk判断候选序列模式是否包含Rk中的元素,若是,将候选序列模式加入Rk+2中;c)将下三角矩阵中值大于最小支持数的K+2候选序列模式放入种子序列Pk+2中;第四步利用第三步得到下三角矩阵中的种子序列集构造投影序列集,对每个投影序列集重复以上操作,直到没有新的频繁序列模式产生为止;4)对频繁序列模式样本标记第一步删除不在长度为1的种子序列集中的函数;第二步采取最长精确匹配算法对序列集S中的每个序列进行模式匹配,算法过程如下:a)首先对找到的所有频繁序列模式排序;b)从前往后对序列集S中的每个序列和频繁序列模式集中的模式进行匹配,直到序列集S中的每个序列的前缀匹配到频繁序列集中的最长序列为止;c)将经匹配的序列集S中的每个序列的前缀转化为频繁序列模式的序号,继续匹配序列集S中的每个序列的后缀,直到序列集S中每个序列匹配结束;第三步删除序列集S中未标记的函数或函数序列;5)隐马尔可夫模型的参数读入上一步中得到的最终标记序列集,通过以下公式计算隐马尔可夫模型的初始状态概率πi、状态转移概率aij和输出概率bi(Ok),πi=C(X1=Si)Σi=1NC(X1=Si),1iN公式中,X1代表每个序列中第一次出现的频繁模式,Si表示频繁序列模式集中的第i个频繁序列模式,C(X1=Si)表示最终标记序列集中以Si为初始状态的序列个数,aij=Ci,jΣk=1NCi,k,1i,jN公式中,Ci,j表示最终标记序列集中从频繁序列模式Si转移到频繁序列模式Sj的次数,bi(Ok)=Ci,jΣk=1MCi,k,1iN,1jM公式中,Ci,k表示在最终标记序列集中频繁序列模式Si中出现序列Ok的次数,O表示系统调用序列中各个函数集合;6)识别异常的系统调用序列中的频繁序列模式假设异常系统调用序列长度为T,识别过程如下:第一步初始化先求出初始频繁序列模式的概率δ1(i),δ1(i)=πibi(O1),i=1~N同时令W1(i)=0,W是一个二维矩阵,记录各个δt(i),1≤t≤T的得胜节点,第二步递推求t长度时频繁序列模式的最大概率δt(j),δt(j)={[δt-1(i)aij]i=1~Nmax}bj(ot),t=2~T,j=1~N对t长度时的每个频繁序列模式,记录该δt(j)的得胜节点,Wt(j)=[δt-1(i)aij],t=2~T,j=1~Ni=1~Narg第三步终止求出最优总概率:pr*=[δT(i)]i=1~Nmax求出最终选定: 第四步最优频繁序列模式回溯由qt+1 *反查W记录,得到qt *,t=T-1,T-2,...,1;7)模糊处理qt * 对qt *进行模糊匹配处理,步骤如下:第一步对qt *从前往后搜索,找出连续两个及以上相同的频繁序列模式FP,同时将频繁序列模式FP对应的位置作为匹配的初步起点;第二步使用基于编辑距离的字符串匹配方法对qt *与频繁序列模式匹配,步骤如下:a)从频繁序列模式集中取得频繁序列模式FP的序列及其长度;b)将第一步中的初步起点加上FP的长度作为初步终点,将初步起点和初步终点分别向前和向后加上m长度,得到序列TS,m=2或3,采用KMP算法对序列TS与频繁序列模式FP匹配;c)按下式计算TS与FP的匹配率MPMP=n1n2>min_matchingn1代表匹配上的序列个数,n2代表频繁序列模式的长度,min_matching为最小匹配率,如果MP大于min_matching,则说明TS匹配上FP,将TS识别为FP;第三步将TS识别后的终点作为下一次匹配的起点,重复前两步,直到完成序列qt *的全部识别,得到最终序列FS,调试完毕。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/200810062635.9/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top