https://www.mdu.se/

mdu.sePublications
Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Deterministic replay debugging of embedded real-time systems using standard components
Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.ORCID iD: 0000-0002-5032-2310
2004 (English)Licentiate thesis, comprehensive summary (Other scientific)
Abstract [en]

Men and women make mistakes. They always have and they alwayswill. Naturally, software engineers are no exception to thisrule. When software engineers make their mistakes, these manifest inthe form of buggy software. Luckily, men and women often strive tocorrect the mistakes they make. In software engineering, this processis called debugging.In simple sequential software, debugging is fairly easy. However, inthe realm of embedded real-time software, debugging is madesignificantly harder by factors such as dependency of an externalcontext, pseudoparallelism or true parallelism, and other real-timeproperties. These factors lead to problems with execution behaviorreproducibility. When a failure is discovered, we need to be able toreproduce this failure in order to examine what went wrong. If theerroneous behavior cannot be reproduced, we will not be able toexamine the process leading to the failure.Previous work has proposed the use of execution replay debugging inorder to solve this problem. Execution replay is a general term for aset of methods to record system behavior during execution and to usethese recordings in order to reproduce this behavior during debuggingsessions. This way, we may achieve a reproducable execution behaviorfor non-deterministic systems. Historically, many replay methods havebeen highly platform-dependent, craving specialized hardware,operating system or compilers.In this thesis, we describe a replay method, called DeterministicReplay, able to run on top of standard components. We also describethe Time Machine, which is the implementation of the DeterministicReplay method. Further, we give an in-depth description of the methodfor pinpointing interrupts used by the Time Machine. In addition, wepresent results from two case studies where the Deterministic Replaymethod was incorporated into two full-scale industrial real-timesystems. These results show that our method of debuggingmulti-tasking real-time systems not only is applicable in industrialapplications, but also that it can be introduced with little effortand small costs regarding application performance.

Place, publisher, year, edition, pages
Institutionen för Datavetenskap , 2004. , p. 116
Series
Mälardalen University Press Licentiate Theses, ISSN 1651-9256 ; 24
National Category
Engineering and Technology
Identifiers
URN: urn:nbn:se:mdh:diva-117ISBN: 91-88834-35-2 (print)OAI: oai:DiVA.org:mdh-117DiVA, id: diva2:120472
Available from: 2006-02-14 Created: 2006-02-14 Last updated: 2022-11-09Bibliographically approved

Open Access in DiVA

No full text in DiVA

Authority records

Sundmark, Daniel

Search in DiVA

By author/editor
Sundmark, Daniel
By organisation
Embedded Systems
Engineering and Technology

Search outside of DiVA

GoogleGoogle Scholar

isbn
urn-nbn

Altmetric score

isbn
urn-nbn
Total: 172 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf