来自国防科技大学的贾周阳博士论文,入选2022年度“CCF优秀博士学位论文奖”初评名单!

https://www.ccf.org.cn/Focus/2022-12-08/781244.shtml

在“互联网 +”的浪潮中,信息化建设是众多领域发展的必然趋势,计算机软 件系统逐渐成为行业知识、技术诀窍和商业模式的重要载体,并将作为一种基础 设施被广泛部署。随着功能需求的不断增强,软件系统的复杂度也持续提升,主 要表现在软件自身代码规模的快速增长,以及软件与复杂环境间的频繁交互。一 方面,软件代码规模的增长,帮助软件提供更好服务的同时,也向软件引入了更 多的缺陷;另一方面,软件与环境的交互,导致环境中的各种异常状态可能传播 至软件内部,进而产生数据丢失、软件崩溃等严重后果。

软件系统复杂度的提升为其可靠性带来新的挑战,传统可靠性保证技术难以 分析复杂软硬件环境对大规模软件的影响。为应对这一挑战,本文通过代码大数 据分析和动、静态程序分析相结合的手段,利用机器学习、数据挖掘、统计分析 等技术,提升大规模软件在复杂软硬件环境中的可靠性。

环境中不同的异常场景对软件的影响程度不同,软件可以根据受影响程度采 取不同的异常处理方式:环境异常未直接影响软件时,软件应避免异常状态进入 软件内部;异常状态已经进入软件时,软件应避免异常状态进一步传播;异常状 态导致软件退出时,软件应避免残留状态影响操作系统;其他未知异常导致软件 发生故障时,软件应为故障诊断提供足够线索。本文针对以上四种异常处理方式 所对应的异常场景,探索了大规模软件系统在复杂环境中的可靠性提升技术:

  1. 面向第三方库异常演化的依赖缺陷检测。软件依赖于第三方库以避免重复 开发,库在演化的过程中可能会破坏兼容性。此时软件应当使用正确的库版本, 以避免库的异常演化影响软件内部运行。已有工作或检测库的演化是否破坏兼容 性,或帮助软件适应库的演化,但无法避免软件失效的发生。本文针对上述问题, 收集第三方库演化历史中的不兼容改变,通过定义启发式规则,检测软件依赖缺 陷,以避免软件依赖错误库版本,最终设计并实现了自动化工具 DepOwl。本文 从 StackOverflow 中选取了 38 个真实的兼容性失效问题对 DepOwl 进行评估,发 现 DepOwl 可以避免其中的 35 个。本文进一步将 DepOwl 应用于 Ubuntu-19.10 的 软件仓库进行评估,DepOwl 检测到 77 个可能导致兼容性失效的软件依赖缺陷。

  2. 面向环境资源异常的错误处理缺陷检测。软件通过库提供的应用程序编程 接口 (API) 与环境资源进行交互,当资源异常时 API 返回错误。软件应当对 API 的错误进行适当处理,以避免上述异常在软件中传播,对软件产生更大影响。已 有的错误处理缺陷检测工具需要错误规约作为输入,人工输入错误规约需要领域:知识,而自动生成错误规约难以达到很高的准确率。本文针对上述问题,通过挖 掘开发人员的错误处理行为,形成错误处理规则,进而利用错误处理规则自动检 测软件中的错误处理缺陷,最终设计并实现了自动化工具 EH-Miner。本文上报了 EH-Miner 检测出的 142 个错误处理缺陷给软件开发人员,其中 106 个缺陷已经被 确认且修复。此外,本文还将 EH-Miner 应用于 Linux Kernel,并上报 68 个错误处 理缺陷给内核开发团队,其中 42 个缺陷已经被确认或修复。

  3. 面向软件异常退出的中断处理缺陷检测。软件在运行过程中随时可能接收 到操作系统发出的异常中断信号,如软硬件中出现致命错误、用户强制退出等。 当遇到需要退出的中断时,软件应当进行必要的清理操作,以避免软件残留状态 影响操作系统或其他软件。本文系统研究了软件在异常退出时可能缺失的清理行 为,以及缺失行为导致的后果、产生的影响以及修复的方法。本文通过对比软件 正常退出和异常退出时的行为序列,检测软件异常退出时缺失的清理行为,以帮 助用户修复软件异常退出导致的问题,最终设计并实现了自动化工具 SafeExit。 本文将 SafeExit 应用于来自 10 个软件领域的 38 款开源软件。SafeExit 从 36 款软 件中检测出正常退出时的 133 种清理行为,并在 292 个模拟的异常退出中检测出 2861 个缺失清理行为。

  4. 意图敏感的软件故障诊断日志自动增强。面对复杂环境中难以预测的未知 异常,已有技术无法保证大规模软件的绝对正确,软件会不可避免地发生故障。 当故障发生后,适当的日志信息可以极大帮助开发人员进行故障诊断并减少系统 恢复时间。已有日志相关工作通过总结软件易错代码模式,或学习已有日志代码 的代码特征增强日志质量,但已有工作难以理解开发人员添加日志代码的意图。 本文针对上述问题,提出意图敏感的软件故障诊断日志自动增强方法,以帮助开 发人员进行故障诊断,缩短系统修复时间,最终设计并实现了自动化日志增强工 具 iLog。本文在六款软件上对 iLog 的有效性展开了评估,结果显示,iLog 的准确 性相比两个已有最好的日志增强工具分别提升 43% 和 16%。

针对复杂软硬件环境中的不同异常场景,本文设计并实现了自动化工具集, 以检测实际软件中应对环境异常的不足,最小化环境异常在软件系统中的影响边 界。同时工具集具有良好的可扩展性,能够支持大规模软件的自动化分析,最终 实现复杂环境下的大规模软件系统可靠性提升。

成为VIP会员查看完整内容
20

相关内容

 中国计算机学会(CCF)成立于1962年,全国一级学会,独立社团法人,中国科学技术协会成员。 中国计算机学会是中国计算机及相关领域的学术团体,宗旨是为本领域专业人士的学术和职业发展提供服务;推动学术进步和技术成果的应用;进行学术评价,引领学术方向;对在学术和技术方面有突出成就的个人和单位给予认可和表彰。
【博士论文】面向大规模部署的室内定位关键技术研究
专知会员服务
21+阅读 · 2022年12月19日
分布式系统稳定性建设指南2022年(100页pdf)
专知会员服务
23+阅读 · 2022年6月24日
【ICML2022】可达性约束强化学习
专知会员服务
22+阅读 · 2022年5月18日
【博士论文】集群系统中的网络流调度
专知会员服务
38+阅读 · 2021年12月7日
【博士论文】推荐系统多行为建模与隐私保护研究
专知会员服务
52+阅读 · 2021年11月27日
专知会员服务
18+阅读 · 2021年9月4日
专知会员服务
28+阅读 · 2020年12月21日
零信任策略下K8s安全监控最佳实践(K+)
阿里技术
0+阅读 · 2022年9月9日
美团李永刚:测试智能化的机会在哪里?
如何保护你的开源项目免遭供应链攻击
AI前线
0+阅读 · 2022年4月11日
从带内到带外——智能系统的脆弱性体系演变
中国计算机学会
6+阅读 · 2022年3月23日
肖新光建议:加强IT供应链网络安全能力
CCF计算机安全专委会
0+阅读 · 2022年3月7日
解构开源IAST 打造好大夫安全灰盒利器
AI前线
1+阅读 · 2022年2月27日
自动驾驶高精度定位如何在复杂环境进行
智能交通技术
18+阅读 · 2019年9月27日
已删除
将门创投
14+阅读 · 2019年5月29日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
1+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
Arxiv
0+阅读 · 2023年3月8日
已删除
Arxiv
31+阅读 · 2020年3月23日
VIP会员
相关VIP内容
【博士论文】面向大规模部署的室内定位关键技术研究
专知会员服务
21+阅读 · 2022年12月19日
分布式系统稳定性建设指南2022年(100页pdf)
专知会员服务
23+阅读 · 2022年6月24日
【ICML2022】可达性约束强化学习
专知会员服务
22+阅读 · 2022年5月18日
【博士论文】集群系统中的网络流调度
专知会员服务
38+阅读 · 2021年12月7日
【博士论文】推荐系统多行为建模与隐私保护研究
专知会员服务
52+阅读 · 2021年11月27日
专知会员服务
18+阅读 · 2021年9月4日
专知会员服务
28+阅读 · 2020年12月21日
相关资讯
零信任策略下K8s安全监控最佳实践(K+)
阿里技术
0+阅读 · 2022年9月9日
美团李永刚:测试智能化的机会在哪里?
如何保护你的开源项目免遭供应链攻击
AI前线
0+阅读 · 2022年4月11日
从带内到带外——智能系统的脆弱性体系演变
中国计算机学会
6+阅读 · 2022年3月23日
肖新光建议:加强IT供应链网络安全能力
CCF计算机安全专委会
0+阅读 · 2022年3月7日
解构开源IAST 打造好大夫安全灰盒利器
AI前线
1+阅读 · 2022年2月27日
自动驾驶高精度定位如何在复杂环境进行
智能交通技术
18+阅读 · 2019年9月27日
已删除
将门创投
14+阅读 · 2019年5月29日
相关基金
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
1+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
微信扫码咨询专知VIP会员