ACM Home Page
Please provide us with feedback. Feedback
FlashBox: a system for logging non-deterministic events in deployed embedded systems
Full text PdfPdf (735 KB)
Source
Symposium on Applied Computing archive
Proceedings of the 2009 ACM symposium on Applied Computing table of contents
Honolulu, Hawaii
SESSION: Embedded systems track table of contents
Pages 1676-1682  
Year of Publication: 2009
ISBN:978-1-60558-166-8
Authors
Siddharth Choudhuri  University of California, Irvine
Tony Givargis  University of California, Irvine
Sponsor
SIGAPP: ACM Special Interest Group on Applied Computing
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 14,   Downloads (12 Months): 44,   Citation Count: 0
Additional Information:

abstract   references   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1529282.1529657
What is a DOI?

ABSTRACT

The ability to postmortem failures in deployed systems due to non-deterministic events is useful in crash investigations. With this goal in mind, we propose FlashBox - a system that acts as a black box for embedded systems, recording non-deterministic events (interrupts). The FlashBox hardware consists of a microcontroller and flash memory. The FlashBox software is an extension to a compiler, enabling recording capabilities at various granularities. There are no source code modifications required to use FlashBox and no assumptions made on processor capabilities such as hardware counters. The FlashBox log can be used for faithful replay with a goal to isolate faults and reason about failure.

We present a prototype implementation of FlashBox that logs non-deterministic events on an AVR ATMega169 microcontroller. The FlashBox prototype consists of a 8051 microcontroller with flash memory. The avr-gcc compiler has been extended to log non-deterministic events. Based on our experimental results, FlashBox results in 10-23% overhead while providing capability to log non-deterministic events at instruction level granularity. With decreasing cost of flash memories, FlashBox provides a low cost logging mechanism. The use of standard I/O communication protocols enhances portability, enabling ease of integration for different classes of embedded systems.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
Atmel. AVR RISC processors. http://www.atmel.com/products/avr/, 2007.
 
2
3
4
5
 
6
 
7
S. Garfinkel. History's worst software bugs. Byte Magazine, November 2005.
 
8
 
9
 
10
11
 
12
13
14
 
15
 
16
17
18
19
 
20
 
21
 
22
23
 
24
H. Thane. Monitoring, Testing and Debugging of Distributed Real-Time Systems. PhD thesis, May 2000.
 
25
H. Thane. Time machines and black box recorders for embedded systems software. ERCIM News, (52):32--33, January 2003.
 
26
H. Thane and D. Sundmark. Debugging using time machines: replay your embedded system's history. In Real-Time and Embedded Computing Conference, page Kap 22, Milan, Italy, November 2001.
 
27
28
 
29
 
30
USDoT. National highway traffic safety administration nhtsa 03v-240. www.autotechdaily.com/pdfs/T02-05-03.pdf, 2003.
Collaborative Colleagues:
Siddharth Choudhuri: colleagues
Tony Givargis: colleagues