Table of Contents
Advances in Computer Engineering
Volume 2016 (2016), Article ID 9467181, 12 pages
http://dx.doi.org/10.1155/2016/9467181
Research Article

Problem Detection in Real-Time Systems by Trace Analysis

Department of Computer and Software Engineering, École Polytechnique de Montréal, P.O. Box 6079, Station Downtown, Montreal, QC, Canada H3C 3A7

Received 29 July 2015; Revised 24 November 2015; Accepted 17 December 2015

Academic Editor: Valeriy Sukharev

Copyright © 2016 Mathieu Côté and Michel R. Dagenais. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Abstract

This paper focuses on the analysis of execution traces for real-time systems. Kernel tracing can provide useful information, without having to instrument the applications studied. However, the generated traces are often very large. The challenge is to retrieve only relevant data in order to find quickly complex or erratic real-time problems. We propose a new approach to help finding those problems. First, we provide a way to define the execution model of real-time tasks with the optional suggestions of a pattern discovery algorithm. Then, we show the resulting real-time jobs in a Comparison View, to highlight those that are problematic. Once some jobs that present irregularities are selected, different analyses are executed on the corresponding trace segments instead of the whole trace. This allows saving huge amount of time and execute more complex analyses. Our main contribution is to combine the critical path analysis with the scheduling information to detect scheduling problems. The efficiency of the proposed method is demonstrated with two test cases, where problems that were difficult to identify were found in a few minutes.