维萨尔·沃达尼 堆操作C程序的静态数据竞争分析。 (英语) Zbl 1360.68004号 塔尔图大学数学学位论文64.塔尔图:塔尔图大学出版社;塔尔图:塔尔图大学数学与计算机科学学院(Diss.)(ISBN 978-9949-19-508-4/pbk;978-9949-19-509-1/电子书)。137页。(2010). 摘要:现代计算机体系结构能够同时进行许多计算。为这样的系统编写和测试程序是众所周知的困难,因为并发执行线程之间的交互是不可预测的。共享内存并发系统中一个特别难以捉摸的缺陷是数据竞争,即多个线程可能同时尝试更新同一内存位置。这可能会导致数据损坏,并最终导致系统故障。静态程序分析是一种自动化的形式化方法,它通过求解数据流方程组来计算程序的所有可能的运行时行为。本文认为,静态分析可以用于验证真实系统中是否存在数据竞争,特别是像Linux设备驱动程序这样的操作系统模块。为此类代码开发静态分析的挑战是,数据结构和保护数据的锁都是在运行时创建的。为了解决这个问题,开发了三种新技术:用于表示地址表达式之间的等式的抽象域、基于区域的堆抽象和适用于低级程序的形状域。我们在Goblint分析仪中实现了这些技术,并用它实验验证了以下论点:通过静态分析,可以验证真实系统中的种族自由。 引用于2文件 MSC公司: 68-02 与计算机科学有关的研究展览会(专著、调查文章) 2007年7月68日 计算机体系结构的数学问题 68甲15 编程语言理论 68甲19 其他编程范式(面向对象、顺序、并发、自动等) 68N20型 编译与解释理论 68号30 软件工程的数学方面(规范、验证、度量、需求等) 68第05页 数据结构 关键词:数据竞赛;地址表达式之间等式的抽象域;基于区域的堆抽象;形状域;低级程序;Goblint分析仪 软件:基利姆;浩劫;Coverity公司;棉绒;布吉;赛车X;DD验证;继电器;洛克史密斯;VeriCool公司 PDF格式BibTeX公司 XML格式引用 \textit{V.Vojdani},堆操作C程序的静态数据竞争分析。塔尔图:塔尔图大学出版社;塔尔图:塔尔图大学数学与计算机科学学院(Diss.)(2010;Zbl 1360.68004) 全文: 链接 链接