Document
拖动滑块完成拼图
个人中心

预订订单
商城订单
发布专利 发布成果 人才入驻 发布商标 发布需求

请提出您的宝贵建议,有机会获取IP积分或其他奖励

投诉建议

在线咨询

联系我们

龙图腾公众号
专利交易 商标交易 积分商城 国际服务 IP管家助手 科技果 科技人才 会员权益 需求市场 关于龙图腾 更多
 /  免费注册
到顶部 到底部
清空 搜索
当前位置 : 首页 > 专利喜报 > 南京大学左志强获国家专利权

南京大学左志强获国家专利权

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

龙图腾网获悉南京大学申请的专利一种程序热点路径确定的方法和装置获国家发明授权专利权,本发明授权专利权由国家知识产权局授予,授权公告号为:CN114817029B

龙图腾网通过国家知识产权局官网在2026-05-01发布的发明授权授权公告中获悉:该发明授权的专利申请号/专利号为:202210435427.9,技术领域涉及:G06F11/3668;该发明授权一种程序热点路径确定的方法和装置是由左志强;何思源;李宣东设计研发完成,并于2022-04-24向国家知识产权局提交的专利申请。

一种程序热点路径确定的方法和装置在说明书摘要公布了:本发明公开了一种程序热点路径确定的方法和装置。该方法首先将源程序转换成程序控制流图。然后通过对源程序的第一次插桩执行得到程序控制流图各条边的执行频次,通过这些频次计算封闭子图的离散度,选择离散度高的封闭子图作为优先封闭子图。对于优选的封闭子图,提取其路径作为边简化流图,再进行第二次插桩执行得到简化流图各边的执行频次,再计算确定流集合,根据确定流所确定频次的高低优选确定流,作为输出的程序热点路径。相比于传统热点路径的确定方法,该方法对于测试用例数的要求较低,故此效率高。

本发明授权一种程序热点路径确定的方法和装置在权利要求书中公布了:1.一种程序热点路径确定的方法,其特征在于,该方法包括如下步骤: 步骤S1,用于:获取程序源码和测试用例集;所述测试用例集是所述程序源码的测试用例的集合;所述测试用例包含所述程序源码测试所需的参数数据; 步骤S2,用于:根据所述程序源码构建程序控制流图;所述程序控制流图由表示程序基本块的节点和表示程序基本块跳转关系的边所组成的有向图; 步骤S3,用于:根据所述程序控制流图构建初始封闭子图集,剔除初始封闭子图集中包含其他封闭子图的封闭子图后得到原子封闭子图集;所述初始封闭子图集和原子封闭子图集是封闭子图的集合;所述封闭子图标记为Gvi,vj;封闭子图Gvi,vj表示所述程序控制流图中唯一入口为节点vi,唯一出口为节点vj,且边的数量不少于3的子图;其中,vi和vj为所述程序控制流图中的两个节点; 步骤S4,用于:根据所述程序控制流图在程序源码中插入针对边的执行频次记录指令得到插桩后的程序代码,然后以所述测试用例集中的各个测试用例作为测试输入,分别执行插桩后的程序代码,从而通过所述针对边的执行频次记录指令的执行获得所述程序控制流图每条边的执行频次,然后根据所述程序控制流图每条边的执行频次计算原子封闭子图集中各个封闭子图的离散程度值,选取其中离散程度值最小的若干封闭子图组成优选封闭子图集;其中,封闭子图的离散程度值采用如下公式计算:DGGm=DLpGm,a1,Gm,b1,1+DLpGm,a2,Gm,b2,2+...+DLpGm,aK,Gm,bK,KK; 其中,DGGm表示为封闭子图Gm的离散程度值,Gm表示原子封闭子图集中第m个封闭子图;DLpGm,ak,Gm,bk,k,k∈[1..K]表示为第k个节点对pGm,ak,Gm,bk之间的边的执行频次分布方差;pGm,ak,Gm,bk表示为节点Gm,ak和节点Gm,bk所组成的节点对;节点Gm,ak和节点Gm,bk分别为封闭子图Gm中第ak个节点和第bk个节点;[1..K]表示为1至K的整数集合;K是封闭子图Gm中节点对的数量; 步骤S5,用于:对所述优选封闭子图集中封闭子图去循环处理后得到封闭子图的去循环图,然后遍历所述去循环图的路径,再以这些路径作为所述封闭子图的入口节点和出口节点之间的边简化所述程序控制流图得到控制流简化图,同时根据这些路径,在所述程序源码中插入针对路径的执行频次记录指令,结合根据所述程序控制流图中不在所述优选封闭子图集中的边所对应的程序源码位置插入针对边的执行频次记录指令得到第二插桩代码; 所述封闭子图去循环处理是将循环体回边替换成两条循环辅助有向边后得到去循环图; 循环体回边所替换的两条循环辅助有向边分别为回边起始节点至循环体后序节点的循环辅助有向边以及循环体前序节点至回边末端节点之间的循环辅助有向边; 所述去循环图的路径以封闭子图的入口节点和循环回边的末端节点作为路径的起始节点,封闭子图的出口节点和循环回边的起始节点作为路径的结束节点,并不考虑循环辅助有向边; 步骤S6,用于:以所述测试用例集中的各个测试用例作为测试输入,分别执行所述第二插桩代码,得到所述控制流简化图每条边的执行频次; 步骤S7,用于:根据所述控制流简化图和所述控制流简化图每条边的执行频次,构建每个节点的确定流集Fvv和每条边的确定流集Feev,uv,t,然后选取入口节点的确定流集中确定频次最大的若干后序路径作为程序热点路径;其中, Fvv表示为节点v的确定流集合;节点确定流包括后序路径Rvv,c和确定频次fvRvv,c;Rvv,c表示为节点v的确定流集合Fvv中的第c条后序路径,为节点v至出口节点路径上节点的按顺序排列而的节点序列;fvRvv,c表示后序路径Rvv,c所对应的确定频次; 节点v的确定流集合Fvv由节点v的所有出度边的确定流集合Feev,uv,t合并而成; Feev,uv,t表示为节点v的出度边ev,uv,t的确定流集合;ev,uv,t表示为节点v至节点uv,t的出度边;节点uv,t表示为节点v的第t条出度边的末端节点;所述边确定流包括后序路径Reev,uv,t,h和确定频次feReev,uv,t,h;Reev,uv,t,h表示为边ev,uv,t的第h条后序路径,为节点v至出口节点路径上节点的按顺序排列而的节点序列,由节点v和节点uv,t确定流集合中的后序路径所组成;feReev,uv,t,h表示后序路径Reev,uv,t,h所对应的确定频次;其中, feReev,uv,t,h=fev,uv,t-ftuv,t-fvRvuv,t,c,且feReev,uv,t,h满足大于0;其中,fev,uv,t表示为边ev,uv,t的执行频次;ftuv,t表示节点uv,t执行的总次数; fvRvuv,t,c表示为后序路径Rvuv,t,c所对应的确定频次;Rvuv,t,c为节点uv,t的确定流集合Fvuv,t中第c条后序路径。

如需购买、转让、实施、许可或投资类似专利技术,可联系本专利的申请人或专利权人南京大学,其通讯地址为:210001 江苏省南京市鼓楼区汉口路22号;或者联系龙图腾网官方客服,联系龙图腾网可拨打电话0551-65771310或微信搜索“龙图腾网”。

以上内容由龙图腾AI智能生成。

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。