DocumentCode
660551
Title
Software model checking for distributed systems with selector-based, non-blocking communication
Author
Artho, Cyrille ; Hagiya, Masami ; Potter, Richard ; Tanabe, Y. ; Weitl, Franz ; Yamamoto, Manabu
Author_Institution
AIST/RISEC, Amagasaki, Japan
fYear
2013
fDate
11-15 Nov. 2013
Firstpage
169
Lastpage
179
Abstract
Many modern software systems are implemented as client/server architectures, where a server handles multiple clients concurrently. Testing does not cover the outcomes of all possible thread and communication schedules reliably. Software model checking, on the other hand, covers all possible outcomes but is often limited to subsets of commonly used protocols and libraries. Earlier work in cache-based software model checking handles implementations using socket-based TCP/IP networking, with one thread per client connection using blocking input/output. Recently, servers using non-blocking, selector-based input/output have become prevalent. This paper describes our work extending the Java PathFinder extension net-iocache to such software, and the application of our tool to modern server software.
Keywords
client-server systems; formal verification; Internet protocol; Java PathFinder extension; blocking input-output; cache-based software model checking; client-server architectures; communication schedule; distributed systems; input-output cache; selector-based nonblocking communication; server software; socket-based TCP-IP networking; thread schedule; transport control protocol; Computer architecture; Java; Libraries; Message systems; Model checking; Servers; Software; caching; distributed systems; non-blocking input/output; selector-based input/output; software model checking; software verification;
fLanguage
English
Publisher
ieee
Conference_Titel
Automated Software Engineering (ASE), 2013 IEEE/ACM 28th International Conference on
Conference_Location
Silicon Valley, CA
Type
conf
DOI
10.1109/ASE.2013.6693077
Filename
6693077
Link To Document