An Automata-Based Symbolic Approach for Verifying Programs on Relaxed Memory Models
An Automata-Based Symbolic Approach for Verifying Programs on Relaxed Memory Models
复制标题
一种基于自动机的在宽松内存模型上验证程序的符号方法
DOI:
10.1007/978-3-642-16164-3_16
复制
发表时间:
2010
期刊:
影响因子:
--
通讯作者:
P. Wolper
中科院分区:
文献类型:
--
作者:
A. Linden;P. Wolper
This paper addresses the problem of verifying programs for the relaxed memory models implemented in modern processors. Specifically, it considers the TSO (Total Store Order) relaxation, which corresponds to the use of store buffers. The proposed approach proceeds by using finite automata to symbolically represent the possible contents of the store buffers. Store, load and commit operations then correspond to operations on these finite automata.
The advantage of this approach is that it operates on (potentially infinite) sets of buffer contents, rather than on individual buffer configurations. This provides a way to tame the explosion of the number of possible buffer configurations, while preserving the full generality of the analysis. It is thus possible to check even designs that exploit the relaxed memory model in unusual ways. An experimental implementation has been used to validate the feasibility of the approach.