检索规则说明:AND代表“并且”;OR代表“或者”;NOT代表“不包含”;(注意必须大写,运算符两边需空一格)
检 索 范 例 :范例一: (K=图书馆学 OR K=情报学) AND A=范并思 范例二:J=计算机应用与软件 AND (U=C++ OR U=Basic) NOT M=Visual
作 者:张杨[1] 孙仕欣 张冬雯[1] 东春浩 乔柳 ZHANG Yang;SUN Shixin;ZHANG Dongwen;DONG Chunhao;QIAO Liu(School of Information Science and Engineering,Hebei Universty of Science and Technology,Hebei Shijiazhuang 050018,China)
机构地区:[1]河北科技大学信息科学与工程学院,河北石家庄050018
出 处:《河北师范大学学报(自然科学版)》2020年第3期200-208,共9页Journal of Hebei Normal University:Natural Science
基 金:国家自然科学基金(61440012);河北省高等学校科学研究重点项目(ZD2019093);河北省自然科学基金重点项目(18960106)。
摘 要:针对并发软件重构后可能带来的行为不一致问题,提出了一种重构一致性检测方法,该方法使用控制流分析和数据流分析检测重构前后的变化,使用同步依赖分析检测重构前后同步依赖关系的变化.针对对象重用性、静态共享字段、死锁3种典型的引起并发错误的情况,设计了3种检测算法对重构前后程序的不一致性进行检测.依据该方法,在WALA软件分析框架下实现了一个原型检测工具.在实验中,使用该工具在SPECjbb2005和HSQLDB测试程序上进行了验证,并与Schafer等提出的方法进行比较,实验结果表明,该方法能够有效地发现并发软件重构的不一致行为.To detect the inconsistent behaviors in concurrent software before and after refactoring,this paper proposes a novel refactoring consistency detection method.It uses control flow analysis and data flow analysis to detect code changes before and after refactoring,and uses synchronization dependency analysis to detect changes of synchronization dependencies.In view of three typical cases of concurrent errors caused by object reusability,static shared fields and deadlock,three kinds of detection algorithms are designed to detect the inconsistency of programs before and after refactoring.A prototype detection tool is implemented in WALA software analysis framework.In the experimentation,two benchmarks SPECjbb2005 and HSQLDB were selected for evaluation,and the results were compared with existing approach proposed by Schafer et al.The experimental results show that our method can effectively find the inconsistent behaviors of concurrent software before and after refactoring.
关 键 词:并发软件重构 一致性检测 控制流分析 数据流分析 同步依赖分析
分 类 号:TP311[自动化与计算机技术—计算机软件与理论]
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在链接到云南高校图书馆文献保障联盟下载...
云南高校图书馆联盟文献共享服务平台 版权所有©
您的IP:216.73.216.38