A case study in model checking software systems

被引:17
作者
Wing, JM [1 ]
VaziriFarahani, M [1 ]
机构
[1] MIT,COMP SCI LAB,CAMBRIDGE,MA 02139
关键词
model checking; verification; finite state machines; abstraction mappings; distributed systems; cache coherence protocols;
D O I
10.1016/S0167-6423(96)00020-2
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Model checking is a proven successful technology for verifying hardware. It works, however, on only finite state machines, and most software systems have infinitely many states. Our approach to applying model checking to software hinges on identifying appropriate abstractions that exploit the nature of both the system, S, and the property, phi, to be verified. We check phi on an abstracted, but finite, model of S. Following this approach we verified three cache coherence protocols used in distributed file systems. These protocols have to satisfy this property: ''If a client believes that a cached file is valid then the authorized server believes that the client's copy is valid.'' In our finite model of the system, we need only represent the ''beliefs'' that a client and a server have about a cached file; we can abstract from the caches, the files' contents, and even the files themselves. Moreover, by successive application of the generalization rule from predicate logic, we need only consider a model with at most two clients, one server, and one file. We used McMillan's SMV model checker; on our most complicated protocol, SMV took less than 1 s to check over 43.600 reachable states. (C) 1997 Elsevier Science B.V.
引用
收藏
页码:273 / 299
页数:27
相关论文
共 43 条
[1]  
ALLEN R, 1994, P 6 INT C SOFTW ENGR
[2]  
[Anonymous], 1992, CMUCS92131
[3]  
Arnold A., 1989, LECT NOTES COMPUTER, V407
[4]   STATE-BASED MODEL CHECKING OF EVENT-DRIVEN SYSTEM REQUIREMENTS [J].
ATLEE, JM ;
GANNON, J .
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1993, 19 (01) :24-40
[5]  
BARETT G, 1995, IEEE T SOFTWARE ENG, V21, P69
[6]  
BROWNE MC, 1986, IEEE T COMPUT, V35, P1035, DOI 10.1109/TC.1986.1676711
[7]   Logic of authentication [J].
Burrows, Michael ;
Abadi, Martin ;
Needham, Roger .
Operating Systems Review (ACM), 1989, 23 (05) :1-13
[8]  
CHANDY KM, 1988, PARALLEL PROGRAM DES
[9]  
CHEUNG SC, 1994, P 16 INT C SOFT ENG
[10]  
CLARKE EM, 1981, LECT NOTES COMPUTER, V131