-
公开(公告)号:CN104657257B
公开(公告)日:2017-11-17
申请号:CN201310589292.2
申请日:2013-11-20
Applicant: 华为技术有限公司 , 中国科学院计算技术研究所
IPC: G06F11/36
Abstract: 本发明实施例提供一种指针分析方法及装置。本发明提供的指针分析方法,包括:读取待分析的多线程程序中的语句信息;根据所述程序的语句信息对所述程序进行指针分析,获得所述程序的共享信息,所述共享信息包括共享量、指针指向集和访存行为,其中,共享量包括全局共享量和局部共享量;根据所述程序的共享信息对所述共享量进行补偿分析。本发明实施例解决现有技术中对多线程程序的指针分析仅局限于程序中的全局共享量,分析结果不全面的问题,提高了指针分析的精度,并相应地提高了程序优化的实施范围和效果。
-
公开(公告)号:CN104679484A
公开(公告)日:2015-06-03
申请号:CN201310617816.4
申请日:2013-11-27
Applicant: 华为技术有限公司 , 中国科学院计算技术研究所
Abstract: 本发明公开了一种并发分析方法及装置,包括:获取程序控制流图,其中,在所述程序控制流图中,线程创建节点为所述线程创建节点所创建的线程的开始节点的直接前驱节点,计算程序控制流图中每个线程的开始节点的初始并发节点集合、每个线程创建节点的直接后继节点的初始并发节点集合、以及每个线程终止节点的直接后继节点的初始无法并发节点集合,初始化程序控制流图的首节点的并发节点集合,从程序控制流图的首节点开始向下遍历,在遍历过程中,根据继承规则计算出遍历到的每个节点的并发节点集合,由于一次遍历即得到每个节点的并发节点集合,运算简单且运算量小,实现了提高并发分析效率的目的。
-
公开(公告)号:CN103902273A
公开(公告)日:2014-07-02
申请号:CN201210584770.6
申请日:2012-12-28
Applicant: 华为技术有限公司 , 中国科学院计算技术研究所
IPC: G06F9/44
Abstract: 本发明的实施例提供一种无损压缩系统依赖图的方法及装置,涉及计算机领域,能够实现系统依赖图的无损压缩,并降低系统依赖图的规模,从而降低以系统依赖图为基础的切片算法的开销。其方法为:首先提取程序中所有变量之间的等价关系,而后通过该等价关系将程序中所有变量分为不同的等价类,并根据这些等价类为系统依赖图中的节点设置键值,而后根据系统依赖图中的节点的键值压缩系统依赖图。本发明实施例用于对系统依赖图进行压缩。
-
公开(公告)号:CN101866315A
公开(公告)日:2010-10-20
申请号:CN201010204249.6
申请日:2010-06-11
Applicant: 中国科学院计算技术研究所
IPC: G06F11/36
Abstract: 本发明涉及软件开发工具的测试方法及其系统,方法包括:步骤1,配置模块获得并存储开源软件项目的构建命令,保存配置的对所述构建命令的修改方式;步骤2,测试执行模块读取存储的构建命令,依据配置的修改方式修改所述构建命令流,以将构建命令流转化为测试命令流;步骤3,测试执行模块调用待测试的软件开发工具执行所述测试命令流,进行构建过程重放;步骤4,测试执行模块监控构建过程重放,测试报告生成模块根据测试执行模块输出的监控结果生成测试报告。本发明能够提高对软件开发工具的测试的效率。
-
公开(公告)号:CN104424097B
公开(公告)日:2017-06-27
申请号:CN201310379397.5
申请日:2013-08-27
Applicant: 华为技术有限公司 , 中国科学院计算技术研究所
Abstract: 本发明公开了一种程序日志检测方法及装置,包括:获取程序中需要检测的待测日志输出语句所在程序点、以及期望涵盖的程序语句;判断期望涵盖的程序语句中每个被执行定值操作的变量是否均满足第一条件且满足第二条件,第一条件为该变量被执行定值操作后确定的定值可到达至少一条待测日志输出语句所在程序点,该程序点为可达程序点,第二条件为该变量在至少一个可达程序点处的待测日志输出程序语句中被引用;如果是,确定待测日志输出语句有效,否则,确定待测日志输出语句失效,实现了对程序中的日志输出语句检测的目的。本发明还公开了一种程序日志推荐方法及装置,实现了辅助用户为缺少或者无日志输出语句的程序推荐有效新日志输出语句的目的。
-
公开(公告)号:CN102968369B
公开(公告)日:2015-02-04
申请号:CN201210447321.7
申请日:2012-11-09
Applicant: 中国科学院计算技术研究所
IPC: G06F11/36
Abstract: 本发明公开一种动态断点的自动生成方法和系统,所述系统包括:创建动态依赖图模块,用于在程序执行过程中,利用动态插桩技术,收集程序语句的执行实例,实例之间的执行顺序以及依赖关系,依此创建动态依赖图;精化调试范围模块,用于利用程序动态切片技术,提取动态依赖图与程序失效描述相关的部分;构建状态流程图模块,用于将精化调试范围模块输出的动态依赖图中的结点和边互换,将调试范围转化成状态流程图;生成动态断点模块,用于生成动态断点以及断点处需要检查的表达式的集合;收集调试反馈模块,用于收集用户对所提供的断点以及断点处需要检查的表达式的集合的判断结果。
-
公开(公告)号:CN101866315B
公开(公告)日:2013-01-02
申请号:CN201010204249.6
申请日:2010-06-11
Applicant: 中国科学院计算技术研究所
IPC: G06F11/36
Abstract: 本发明涉及软件开发工具的测试方法及其系统,方法包括:步骤1,配置模块获得并存储开源软件项目的构建命令,保存配置的对所述构建命令的修改方式;步骤2,测试执行模块读取存储的构建命令,依据配置的修改方式修改所述构建命令流,以将构建命令流转化为测试命令流;步骤3,测试执行模块调用待测试的软件开发工具执行所述测试命令流,进行构建过程重放;步骤4,测试执行模块监控构建过程重放,测试报告生成模块根据测试执行模块输出的监控结果生成测试报告。本发明能够提高对软件开发工具的测试的效率。
-
-
-
-
-
-