国内刊号:31-1289/TP
国际刊号:1000-3428
发布日期:
作者:许福, 郝亮, 陈飞翔, 李冬梅, 崔晓晖
单位:北京林业大学 信息学院, 北京 100083
关键词:开源软件,代码复用,增量分析,程序比对,代码溯源
基金:国家自然科学基金(61772078);北京市重点研发计划(D171100001817003)。
开源代码复用是重要的软件开发模式,但开源许可证侵权与代码同步更新是当前开源代码复用中的2个主要问题。利用代码快照间的高度相似性特点,设计一种代码仓库的高效增量分析方法,在此基础上,利用Simhash算法将函数代码映射成函数指纹,提出以函数为基本分析单元的工程相似度计算方法,从而降低分析结果的存储空间并提高代码比对速度。设计3组实验分别从代码分析效率、工程相似度判定和函数更新检测方面进行评估,结果表明,该方法能满足开源代码复用中相似度检测和代码溯源的需求,且能够有效缩短总体分析时间。
来源:2020年第1期
《计算机工程》期刊编辑部