[发明专利]一种基于锁对象拆分策略的并发程序测试方法及其测试系统在审
申请号: | 201710636177.4 | 申请日: | 2017-07-31 |
公开(公告)号: | CN107391381A | 公开(公告)日: | 2017-11-24 |
发明(设计)人: | 戚晓芳;颉佳宇 | 申请(专利权)人: | 东南大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F9/45 |
代理公司: | 南京苏高专利商标事务所(普通合伙)32204 | 代理人: | 唐红 |
地址: | 210000 *** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开一种基于锁对象拆分策略的并发程序测试方法及其测试系统,首先通过静态程序分析技术分析相关代码,确定未使用相同锁对象保护的共享变量,然后对这些共享变量异常访问的代码进行拆分,并选取相同锁对象保护拆分后的代码,生成细粒度的同步方法,再进行可达性测试(运行所有可行的同步序列),通过生成并执行原待测并发程序中不同管程对象上细粒度的同步事件之间的交织序列,暴露出因使用错误的锁对象保护共享变量而导致的数据竞争、原子违背、死锁等并发程序错误。本方法可有效地提高探测此类并发程序错误的能力。 | ||
搜索关键词: | 一种 基于 对象 拆分 策略 并发 程序 测试 方法 及其 系统 | ||
【主权项】:
一种基于锁对象拆分策略的并发程序测试方法,其特征在于:依次包括以下步骤:(1)给定待测并发程序CP,首先采用程序静态分析技术生成程序控制流图,然后进行逃逸分析和指针分析,在此基础上分析共享变量以及保护每个共享变量访问所需的锁对象,获取未使用相同锁对象保护的共享变量集合及其相关异常访问代码;(2)选取某拆分点对相关异常访问代码进行拆分,并使用相同锁对象即共享变量所在对象保护拆分后的两段代码,生成两个同步方法,待测并发程序由此变化为CP′;(3)对CP’执行可达性测试,探测并发程序共享变量异常访问导致的并发程序错误。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东南大学,未经东南大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201710636177.4/,转载请声明来源钻瓜专利网。