You are required to read and agree to the below before accessing a full-text version of an article in the IDE article repository.
The full-text document you are about to access is subject to national and international copyright laws. In most cases (but not necessarily all) the consequence is that personal use is allowed given that the copyright owner is duly acknowledged and respected. All other use (typically) require an explicit permission (often in writing) by the copyright owner.
For the reports in this repository we specifically note that
- the use of articles under IEEE copyright is governed by the IEEE copyright policy (available at http://www.ieee.org/web/publications/rights/copyrightpolicy.html)
- the use of articles under ACM copyright is governed by the ACM copyright policy (available at http://www.acm.org/pubs/copyright_policy/)
- technical reports and other articles issued by M‰lardalen University is free for personal use. For other use, the explicit consent of the authors is required
- in other cases, please contact the copyright owner for detailed information
By accepting I agree to acknowledge and respect the rights of the copyright owner of the document I am about to access.
If you are in doubt, feel free to contact webmaster@ide.mdh.se
A Runtime Verification based Concurrency Bug Detector for FreeRTOS Embedded Software
Publication Type:
Journal article
Venue:
Journal of IEEE Access
Abstract
When developing embedded software, detecting bugs as early as possible is important.
Concurrency bugs is a particularly problematic class of bugs. Several methods have been proposed to
detect such bugs, but few of these methods have been implemented in tools and even fewer have been
evaluated systematically using realistic software logs. In this paper we present a novel method and tool
called DeCoB, which uses runtime verification to detect concurrency bugs in embedded software. DeCoB is
tailored for the open source real-time operating system FreeRTOS, and detects and diagnoses concurrency
bugs, such as deadlock, starvation, and suspension-based-locking, by analysing runtime traces provided by
the Tracealyzer tool, i.e., without debugging and tracing the source code.
This paper presents the implementation of the tool in detail, as well as its functional architecture, together
with illustrations of its use in practice. The DeCoB tool can be used during program testing for identifying
concurrency bugs using information about the software executions. We experimentally evaluate the DeCoB
tool using realistic FreeRTOS test scenarios and 21726 automatically generated logs using our own
generator based on the UPPAAL model checker. Our results suggest that the DeCoB tool is effective at
detecting whether a diverse set of logs contains concurrency bugs.
Bibtex
@article{Abbaspour5252,
author = {Sara Abbaspour and Eduard Paul Enoiu and Adnan Causevic and Daniel Sundmark and Hans Hansson},
title = {A Runtime Verification based Concurrency Bug Detector for FreeRTOS Embedded Software},
volume = {2},
number = {1},
pages = {1--20},
journal = {Journal of IEEE Access},
url = {http://www.es.mdu.se/publications/5252-}
}