Runtime Verification for Detecting Suspension Bugs in Multicore and Parallel Software
2017 (English)In: Proceedings - 10th IEEE International Conference on Software Testing, Verification and Validation Workshops, ICSTW 2017, 2017, p. 77-80Conference paper, Published paper (Refereed)
Abstract [en]
Multicore hardware development increases the popularity of parallel and multicore software, while testing and debugging the software become more difficult, frustrating and costly. Among all types of software bugs, concurrency bugs are both important and troublesome. This type of bugs is increasingly becoming an issue, particularly due to the growing prevalence of multicore hardware. Suspension-based-locking bug is one type of concurrency bugs. This position paper proposes a model based on runtime verification and reflection technique in the context of multicore and parallel software to monitor and detect suspension-based-locking bugs. The model is not only able to detect faults, but also diagnose and even repair them. The model is composed of four layers: Logging, Monitoring, Suspension Bug Diagnosis and Mitigation. The logging layer will observe the events and save them into a file system. The monitoring layer will detect the presents of bugs in the software. The suspension bug diagnosis will identify Suspension bugs by comparing the captured data with the suspension bug properties. Finally, the mitigation layer will reconfigure the software to mitigate the suspension bugs. A functional architecture of a runtime verification tool is also proposed in this paper. This architecture is based on the proposed model and is comprised of different modules.
Place, publisher, year, edition, pages
2017. p. 77-80
Series
IEEE International Conference on Software Testing Verification and Validation Workshops, ISSN 2159-4848
Keywords [en]
Concurrency bugs, Debugging, Monitoring, Multicore software, Parallel application, Runtime Verification, Suspension-based-locking bug, Application programs, Computer debugging, Hardware, Locks (fasteners), Program diagnostics, Software testing, Verification, Functional architecture, Hardware development, Multi core, Parallel software, Run-time verification, Testing and debugging, Program debugging
National Category
Computer Systems
Identifiers
URN: urn:nbn:se:mdh:diva-35336DOI: 10.1109/ICSTW.2017.20ISI: 000403392800014Scopus ID: 2-s2.0-85018376665ISBN: 9781509066766 (print)OAI: oai:DiVA.org:mdh-35336DiVA, id: diva2:1096869
Conference
10th IEEE International Conference on Software Testing, Verification and Validation Workshops, ICSTW 2017, 13 March 2017 through 17 March 2017
2017-05-192017-05-192022-11-09Bibliographically approved