软件系统在各行各业中发挥着不可忽视的作用,承载着大规模、高密度的数据,但软件系统中存在的种种缺陷一直以来困扰着系统的开发者,时刻威胁着系统数据要素的安全.自动代码修复(automated program repair,APR)技术旨在帮助开发者在软件...软件系统在各行各业中发挥着不可忽视的作用,承载着大规模、高密度的数据,但软件系统中存在的种种缺陷一直以来困扰着系统的开发者,时刻威胁着系统数据要素的安全.自动代码修复(automated program repair,APR)技术旨在帮助开发者在软件系统的开发过程中自动地修复代码中存在的缺陷,节约软件系统开发和维护成本,提高软件系统中数据要素的保密性、可用性和完整性.随着大语言模型(large language model,LLM)技术的发展,涌现出许多能力强大的代码大语言模型,并且代码LLM在APR领域的应用中表现出了强大的修复能力,弥补了传统方案对于代码理解能力、补丁生成能力方面的不足,进一步提高了代码修复工具的水平.全面调研分析了近年APR相关的高水平论文,总结了APR领域的最新发展,系统归纳了完形填空模式和神经机器翻译模式2类基于LLM的APR技术,并从模型类型、模型规模、修复的缺陷类型、修复的编程语言和修复方案优缺点等角度进行全方位的对比与研讨.同时,对APR数据集和评价APR修复能力的指标进行了梳理和分析,并且对现有的实证研究展开深入探讨.最后,分析了当前APR领域存在的挑战及未来的研究方向.展开更多
为了解决目前代码混淆评估方法对代码混淆效果区分度不高的问题,文中提出一种基于非线性模糊矩阵的代码混淆有效性评估模型MNLFM(Code Obfuscation Effective Assessment Model Based on Nonlinear Fuzzy Matrices),并证明了MNLFM具有...为了解决目前代码混淆评估方法对代码混淆效果区分度不高的问题,文中提出一种基于非线性模糊矩阵的代码混淆有效性评估模型MNLFM(Code Obfuscation Effective Assessment Model Based on Nonlinear Fuzzy Matrices),并证明了MNLFM具有评估合理性、单调递增性、连续性和突出性等特性。MNLFM可以明显改善当前代码混淆评估领域在混淆效果方面可区分性差的现状。通过量化评估指标、确定隶属函数和构造非线性模糊矩阵等方法进行建模。建立一个Java程序测试用例集,基于压扁控制流和多种不透明谓词代码混淆技术对此模型进行混淆有效性检验,并将其与其他代码混淆评估模型进行比较。实验结果验证了MNLFM可以比较混淆后代码之间的综合复杂度,并明确区分不同混淆算法对原代码的混淆程度。展开更多
In this paper,a new micro-creep model of salt rock is proposed based on a linear parallel bonded model(LPBM)using the two-dimensional particle flow code(PFC2D).The power function weakening form is assumed to describe ...In this paper,a new micro-creep model of salt rock is proposed based on a linear parallel bonded model(LPBM)using the two-dimensional particle flow code(PFC2D).The power function weakening form is assumed to describe the variation of the parallel bonded diameter(PBD)over time.By comparing with the parallel-bonded stress corrosion(PSC)model,a smaller stress fluctuation and smoother creep strain−time curves can be obtained by this power function model at the same stress level.The validity and adaptability of the model to simulate creep deformation of salt rock are verified through comparing the laboratory creep test curves and the Burgers model fitting result.The numerical results reveal that this model can be capable of capturing the creep deformation and damage behavior from the laboratory observations.展开更多
文摘软件系统在各行各业中发挥着不可忽视的作用,承载着大规模、高密度的数据,但软件系统中存在的种种缺陷一直以来困扰着系统的开发者,时刻威胁着系统数据要素的安全.自动代码修复(automated program repair,APR)技术旨在帮助开发者在软件系统的开发过程中自动地修复代码中存在的缺陷,节约软件系统开发和维护成本,提高软件系统中数据要素的保密性、可用性和完整性.随着大语言模型(large language model,LLM)技术的发展,涌现出许多能力强大的代码大语言模型,并且代码LLM在APR领域的应用中表现出了强大的修复能力,弥补了传统方案对于代码理解能力、补丁生成能力方面的不足,进一步提高了代码修复工具的水平.全面调研分析了近年APR相关的高水平论文,总结了APR领域的最新发展,系统归纳了完形填空模式和神经机器翻译模式2类基于LLM的APR技术,并从模型类型、模型规模、修复的缺陷类型、修复的编程语言和修复方案优缺点等角度进行全方位的对比与研讨.同时,对APR数据集和评价APR修复能力的指标进行了梳理和分析,并且对现有的实证研究展开深入探讨.最后,分析了当前APR领域存在的挑战及未来的研究方向.
文摘为了解决目前代码混淆评估方法对代码混淆效果区分度不高的问题,文中提出一种基于非线性模糊矩阵的代码混淆有效性评估模型MNLFM(Code Obfuscation Effective Assessment Model Based on Nonlinear Fuzzy Matrices),并证明了MNLFM具有评估合理性、单调递增性、连续性和突出性等特性。MNLFM可以明显改善当前代码混淆评估领域在混淆效果方面可区分性差的现状。通过量化评估指标、确定隶属函数和构造非线性模糊矩阵等方法进行建模。建立一个Java程序测试用例集,基于压扁控制流和多种不透明谓词代码混淆技术对此模型进行混淆有效性检验,并将其与其他代码混淆评估模型进行比较。实验结果验证了MNLFM可以比较混淆后代码之间的综合复杂度,并明确区分不同混淆算法对原代码的混淆程度。
基金Projects(51621006,51874274)supported by the National Natural Science Foundation of ChinaProject(2018YFC0808401)supported by the National Key Research and Development Program of China
文摘In this paper,a new micro-creep model of salt rock is proposed based on a linear parallel bonded model(LPBM)using the two-dimensional particle flow code(PFC2D).The power function weakening form is assumed to describe the variation of the parallel bonded diameter(PBD)over time.By comparing with the parallel-bonded stress corrosion(PSC)model,a smaller stress fluctuation and smoother creep strain−time curves can be obtained by this power function model at the same stress level.The validity and adaptability of the model to simulate creep deformation of salt rock are verified through comparing the laboratory creep test curves and the Burgers model fitting result.The numerical results reveal that this model can be capable of capturing the creep deformation and damage behavior from the laboratory observations.