Time-Aware Instrumentation of Embedded Software
Software instrumentation is a key technique in many stages of the development process. It is particularly important for debugging embedded systems. Instrumented programs produce data traces which enable the developer to locate the origins of misbehaviors in the system under test. However, producing...
Uložené v:
| Vydané v: | IEEE transactions on industrial informatics Ročník 6; číslo 4; s. 652 - 663 |
|---|---|
| Hlavní autori: | , |
| Médium: | Journal Article |
| Jazyk: | English |
| Vydavateľské údaje: |
Piscataway
IEEE
01.11.2010
The Institute of Electrical and Electronics Engineers, Inc. (IEEE) |
| Predmet: | |
| ISSN: | 1551-3203, 1941-0050 |
| On-line prístup: | Získať plný text |
| Tagy: |
Pridať tag
Žiadne tagy, Buďte prvý, kto otaguje tento záznam!
|
| Abstract | Software instrumentation is a key technique in many stages of the development process. It is particularly important for debugging embedded systems. Instrumented programs produce data traces which enable the developer to locate the origins of misbehaviors in the system under test. However, producing data traces incurs runtime overhead in the form of additional computation resources for capturing and copying the data. The instrumentation may therefore interfere with the system's timing and perturb its behavior. In this work, we propose an instrumentation technique for applications with temporal constraints, specifically targeting background/foreground or cyclic executive systems. Our framework permits reasoning about space and time and enables the composition of software instrumentations. In particular, we propose a definition for trace reliability, which enables us to instrument real-time applications which aggressively push their time budgets. Using the framework, we present a method with low perturbation by optimizing the number of insertion points and trace buffer size with respect to code size and time budgets. Finally, we apply the theory to two concrete case studies: we instrument the OpenEC firmware for the keyboard controller of the One Laptop Per Child project, as well as an implementation of a flash file system. |
|---|---|
| AbstractList | Software instrumentation is a key technique in many stages of the development process. It is particularly important for debugging embedded systems. Instrumented programs produce data traces which enable the developer to locate the origins of misbehaviors in the system under test. However, producing data traces incurs runtime overhead in the form of additional computation resources for capturing and copying the data. The instrumentation may therefore interfere with the system's timing and perturb its behavior. In this work, we propose an instrumentation technique for applications with temporal constraints, specifically targeting background/foreground or cyclic executive systems. Our framework permits reasoning about space and time and enables the composition of software instrumentations. In particular, we propose a definition for trace reliability, which enables us to instrument real-time applications which aggressively push their time budgets. Using the framework, we present a method with low perturbation by optimizing the number of insertion points and trace buffer size with respect to code size and time budgets. Finally, we apply the theory to two concrete case studies: we instrument the OpenEC firmware for the keyboard controller of the One Laptop Per Child project, as well as an implementation of a flash file system. Software instrumentation is a key technique in many stages of the development process. It is particularly important for debugging embedded systems. Instrumented programs produce data traces which enable the developer to locate the origins of misbehaviors in the system under test. However, producing data traces incurs runtime overhead in the form of additional computation resources for capturing and copying the data. The instrumentation may therefore interfere with the system's timing and perturb its behavior. |
| Author | Fischmeister, Sebastian Lam, Patrick |
| Author_xml | – sequence: 1 givenname: Sebastian surname: Fischmeister fullname: Fischmeister, Sebastian email: sfischme@uwaterloo.ca organization: Dept. of Electr. & Comput. Eng., Univ. of Waterloo, Waterloo, ON, Canada – sequence: 2 givenname: Patrick surname: Lam fullname: Lam, Patrick email: p.lam@ece.uwaterloo.ca organization: Dept. of Electr. & Comput. Eng., Univ. of Waterloo, Waterloo, ON, Canada |
| BookMark | eNp9kE1LAzEQQIMo2FbvgpcFD3rZdvIxSfdYStVCwYP1vGTTWdiyHzXZIv57U1o89NBTJvDewLwhu267lhh74DDmHLLJerkcC4g_AXoqQV2xAc8UTwEQruOMyFMpQN6yYQhbAGlAZgM2WVcNpbMf6ylZtqH3-4ba3vZV1yZdmSyagjYb2iSfXdkfoDt2U9o60P3pHbGv18V6_p6uPt6W89kqdRJ1n2aoZam0ReGokMoWmhTxoiyUdEJCJhEdR24NqpIECmGmzkwNWpCOZ0bLEXs-7t357ntPoc-bKjiqa9tStw_5VGVKGwM8ki8XSa4NF1KDNhF9OkO33d638Y6cgwSOggNGSh8p57sQPJW5q45Fem-rOqL5oXgei-eH4vmpeBThTNz5qrH-95LyeFQqIvrHETFTCuQfX3SJ4A |
| CODEN | ITIICH |
| CitedBy_id | crossref_primary_10_1109_TII_2011_2158838 crossref_primary_10_1016_j_sysarc_2012_06_003 crossref_primary_10_1080_17517575_2014_939107 crossref_primary_10_1109_LES_2013_2264502 crossref_primary_10_1007_s11219_016_9323_9 crossref_primary_10_1145_3430699 crossref_primary_10_1145_2016603_1967692 crossref_primary_10_1109_TII_2020_2968480 crossref_primary_10_3390_math12091405 crossref_primary_10_1109_TIE_2014_2301752 crossref_primary_10_1007_s10703_013_0199_z crossref_primary_10_1016_j_scico_2012_10_015 crossref_primary_10_1016_j_jss_2019_01_052 crossref_primary_10_3390_app10082796 |
| Cites_doi | 10.1145/903893.903895 10.1109/CGO.2009.12 10.1109/TC.1987.1676929 10.1109/RTAS.2006.41 10.1145/1065010.1065034 10.1109/MS.2009.169 10.1109/CGO.2003.1191551 10.1002/spe.579 10.1145/989393.989446 10.1145/1347375.1347389 10.1049/sej.1993.0034 10.1007/978-1-4684-2001-2_9 10.1145/1250734.1250746 10.1145/289524.289525 10.1109/32.57626 10.1145/207110.207163 10.1145/1453101.1453146 10.1201/9781482295603 10.1145/268998.266640 10.1016/0141-9331(94)90038-8 |
| ContentType | Journal Article |
| Copyright | Copyright The Institute of Electrical and Electronics Engineers, Inc. (IEEE) Nov 2010 |
| Copyright_xml | – notice: Copyright The Institute of Electrical and Electronics Engineers, Inc. (IEEE) Nov 2010 |
| DBID | 97E RIA RIE AAYXX CITATION 7SC 7SP 8FD JQ2 L7M L~C L~D F28 FR3 |
| DOI | 10.1109/TII.2010.2068304 |
| DatabaseName | IEEE All-Society Periodicals Package (ASPP) 2005–Present IEEE All-Society Periodicals Package (ASPP) 1998–Present IEEE Electronic Library (IEL) CrossRef Computer and Information Systems Abstracts Electronics & Communications Abstracts Technology Research Database ProQuest Computer Science Collection Advanced Technologies Database with Aerospace Computer and Information Systems Abstracts Academic Computer and Information Systems Abstracts Professional ANTE: Abstracts in New Technology & Engineering Engineering Research Database |
| DatabaseTitle | CrossRef Technology Research Database Computer and Information Systems Abstracts – Academic Electronics & Communications Abstracts ProQuest Computer Science Collection Computer and Information Systems Abstracts Advanced Technologies Database with Aerospace Computer and Information Systems Abstracts Professional Engineering Research Database ANTE: Abstracts in New Technology & Engineering |
| DatabaseTitleList | Technology Research Database Technology Research Database Technology Research Database |
| Database_xml | – sequence: 1 dbid: RIE name: IEEE Electronic Library (IEL) url: https://ieeexplore.ieee.org/ sourceTypes: Publisher |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Engineering |
| EISSN | 1941-0050 |
| EndPage | 663 |
| ExternalDocumentID | 2724139681 10_1109_TII_2010_2068304 5559440 |
| Genre | orig-research |
| GroupedDBID | 0R~ 29I 4.4 5GY 5VS 6IK 97E AAJGR AARMG AASAJ AAWTH ABAZT ABQJQ ABVLG ACGFS ACIWK AENEX AETIX AGQYO AGSQL AHBIQ AKJIK AKQYR ALMA_UNASSIGNED_HOLDINGS ATWAV BEFXN BFFAM BGNUA BKEBE BPEOZ CS3 DU5 EBS EJD HZ~ IFIPE IPLJI JAVBF LAI M43 O9- OCL P2P RIA RIE RNS AAYXX CITATION 7SC 7SP 8FD JQ2 L7M L~C L~D RIG F28 FR3 |
| ID | FETCH-LOGICAL-c356t-9563f46a52ceb34ab6e4e1bfb43c2309355c151a754fe252278c7875a03c19763 |
| IEDL.DBID | RIE |
| ISICitedReferencesCount | 21 |
| ISICitedReferencesURI | http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000283984900016&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| ISSN | 1551-3203 |
| IngestDate | Sun Sep 28 09:44:41 EDT 2025 Sun Sep 28 02:22:16 EDT 2025 Mon Jun 30 10:17:29 EDT 2025 Tue Nov 18 22:24:00 EST 2025 Sat Nov 29 04:39:38 EST 2025 Tue Aug 26 17:14:28 EDT 2025 |
| IsPeerReviewed | false |
| IsScholarly | true |
| Issue | 4 |
| Language | English |
| License | https://ieeexplore.ieee.org/Xplorehelp/downloads/license-information/IEEE.html |
| LinkModel | DirectLink |
| MergedId | FETCHMERGED-LOGICAL-c356t-9563f46a52ceb34ab6e4e1bfb43c2309355c151a754fe252278c7875a03c19763 |
| Notes | ObjectType-Article-1 SourceType-Scholarly Journals-1 ObjectType-Feature-2 content type line 14 content type line 23 ObjectType-Article-2 ObjectType-Feature-1 |
| PQID | 1030152105 |
| PQPubID | 23500 |
| PageCount | 12 |
| ParticipantIDs | proquest_miscellaneous_849467701 proquest_miscellaneous_1671236067 crossref_primary_10_1109_TII_2010_2068304 proquest_journals_1030152105 ieee_primary_5559440 crossref_citationtrail_10_1109_TII_2010_2068304 |
| PublicationCentury | 2000 |
| PublicationDate | 2010-Nov. 2010-11-00 20101101 |
| PublicationDateYYYYMMDD | 2010-11-01 |
| PublicationDate_xml | – month: 11 year: 2010 text: 2010-Nov. |
| PublicationDecade | 2010 |
| PublicationPlace | Piscataway |
| PublicationPlace_xml | – name: Piscataway |
| PublicationTitle | IEEE transactions on industrial informatics |
| PublicationTitleAbbrev | TII |
| PublicationYear | 2010 |
| Publisher | IEEE The Institute of Electrical and Electronics Engineers, Inc. (IEEE) |
| Publisher_xml | – name: IEEE – name: The Institute of Electrical and Electronics Engineers, Inc. (IEEE) |
| References | srivastava (ref30) 2004; 39 ref14 ref31 ref33 holzmann (ref12) 2003 ref32 ref10 ref17 dieckmann (ref13) 1999 ref16 larus (ref27) 1995 labrosse (ref3) 2002 (ref8) 2008 ref24 ref26 ref25 ref20 sundmark (ref18) 2003 ref22 de kock (ref15) 2009 ref21 fischmeister (ref5) 2007 kiczales (ref1) 2001; 2072 thane (ref19) 2000 ref29 romer (ref2) 1997 dodd (ref23) 1995 liu (ref11) 2000 ref7 ref4 ref6 (ref9) 2008 romer (ref28) 1997 |
| References_xml | – ident: ref20 doi: 10.1145/903893.903895 – ident: ref32 doi: 10.1109/CGO.2009.12 – ident: ref17 doi: 10.1109/TC.1987.1676929 – ident: ref6 doi: 10.1109/RTAS.2006.41 – start-page: 92 year: 1999 ident: ref13 article-title: A study of the allocation behavior of the SPECjvm98 Java benchmarks publication-title: Proc ECOOP 1999 – ident: ref26 doi: 10.1145/1065010.1065034 – ident: ref33 doi: 10.1109/MS.2009.169 – ident: ref25 doi: 10.1109/CGO.2003.1191551 – year: 2003 ident: ref12 publication-title: The SPIN Model Checker Primer and Reference Manual – year: 2008 ident: ref8 publication-title: OpenEC Project Site – ident: ref16 doi: 10.1002/spe.579 – volume: 39 start-page: 528 year: 2004 ident: ref30 article-title: atom a system for building customized program analysis tools publication-title: SIGPLAN Not doi: 10.1145/989393.989446 – ident: ref7 doi: 10.1145/1347375.1347389 – start-page: 1 year: 1997 ident: ref2 article-title: instrumentation and optimization of win32/intel executables using etch publication-title: Proc USENIX Windows NT Workshop – ident: ref10 doi: 10.1049/sej.1993.0034 – start-page: 10-1 year: 2007 ident: ref5 publication-title: Handbook on Real-Time Systems – volume: 2072 start-page: 327 year: 2001 ident: ref1 article-title: an overview of aspectj publication-title: Proceedings of European Conference of Object-Oriented Programming – year: 2000 ident: ref11 publication-title: Real-Time Systems – year: 2000 ident: ref19 publication-title: Monitoring testing and debugging of distributed real-time systems – ident: ref14 doi: 10.1007/978-1-4684-2001-2_9 – year: 1997 ident: ref28 article-title: instrumentation and optimization of win32/intel executables using etch publication-title: Windows NT Workshop – year: 2008 ident: ref9 publication-title: SDCCSmall Device C Compiler – ident: ref24 doi: 10.1145/1250734.1250746 – ident: ref4 doi: 10.1145/289524.289525 – start-page: 211 year: 2003 ident: ref18 article-title: replay debugging of complex real-time systems: experiences from two industrial case studies publication-title: Proc 5th Int Workshop on Algorithmic and Automated Debugging (AADEBUG03) – start-page: 143 year: 1995 ident: ref23 publication-title: Monitoring and Debugging Distributed Real-Time Programs – year: 2009 ident: ref15 publication-title: Small-ffs – ident: ref22 doi: 10.1109/32.57626 – start-page: 291 year: 1995 ident: ref27 article-title: eel: machine-independent executable editing publication-title: Proc ACM SIGPLAN Conf Programming Language Design and Implementation (PLDI) doi: 10.1145/207110.207163 – ident: ref31 doi: 10.1145/1453101.1453146 – year: 2002 ident: ref3 publication-title: MicroC/OS-II The Real-Time Kernel doi: 10.1201/9781482295603 – ident: ref29 doi: 10.1145/268998.266640 – ident: ref21 doi: 10.1016/0141-9331(94)90038-8 |
| SSID | ssj0037039 |
| Score | 2.1049118 |
| Snippet | Software instrumentation is a key technique in many stages of the development process. It is particularly important for debugging embedded systems.... |
| SourceID | proquest crossref ieee |
| SourceType | Aggregation Database Enrichment Source Index Database Publisher |
| StartPage | 652 |
| SubjectTerms | Computational modeling Computer programs Copying Debugging Embedded computer systems Embedded systems Instrumentation Monitoring Origins Real time systems Reliability Runtime Software tracing |
| Title | Time-Aware Instrumentation of Embedded Software |
| URI | https://ieeexplore.ieee.org/document/5559440 https://www.proquest.com/docview/1030152105 https://www.proquest.com/docview/1671236067 https://www.proquest.com/docview/849467701 |
| Volume | 6 |
| WOSCitedRecordID | wos000283984900016&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| hasFullText | 1 |
| inHoldings | 1 |
| isFullTextHit | |
| isPrint | |
| journalDatabaseRights | – providerCode: PRVIEE databaseName: IEEE Electronic Library (IEL) customDbUrl: eissn: 1941-0050 dateEnd: 99991231 omitProxy: false ssIdentifier: ssj0037039 issn: 1551-3203 databaseCode: RIE dateStart: 20050101 isFulltext: true titleUrlDefault: https://ieeexplore.ieee.org/ providerName: IEEE |
| link | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV1JS8UwEB704UEP7mLdqOBFMHZJ0qRHkffwXURQwVtJ0hQEbeUt-vedpO1DcAFvgU5omUlm6cx8A3AWUyPRakhSlkYSlghNpNSScGW0tplwoN9-2IS4vZVPT_ndElwsemGstb74zF66pc_ll42Zu19lEUf3lzEM0JeFyNperV7rUjy5ucdG5QmhaUz7lGScRw_jcVvDlcaZpN1Itt4E-Zkq3xSxty6jjf991yasd15keNWKfQuWbL0Na1-wBXcgcs0d5OpDTWw49jCxr12bUR02VTh81RZ1Thneox52RLvwOBo-XN-QbjoCMZRnM4KBDa1YpnhqMCBmSmeW2URXmlGTtrjpBs25EpxVNuWu5dXg7eQKxZOgE0L3YFA3td2H0HBtSp7yyuQx07nSiaAaV6lJaCa1CiDqGVaYDjrcTbB4KXwIEecFsrhwLC46Fgdwvtjx1sJm_EG741i6oOu4GcBRL5Oiu1fTwg1Fcx5HzAM4XTzGG-HSHKq2zRxpMuEgZdAMBxD-QiNZjhZCxMnBzy8_hFVfJuCbDo9ggEKyx7Bi3mfP08mJP3mfsK3TYg |
| linkProvider | IEEE |
| linkToHtml | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV3dS8MwED9EBfXBb7E6tYIvgnFtk7Tp45ANh3MITvCtJGkKgnaiTv99L1k6BD_At0AvtNwl99Hkfj-Ak4hqgVFDkLLUgrA4U0QIJQiXWimTZhb025FNZMOhuL_Pb-bgbNYLY4xxl8_MuR26s_xyrCf2V1mbY_rLGBboC5Y5y3drNX6X4trNHToqjwlNItocSkZ5e9TvT29xJVEqqCdla4KQY1X55opdfOmt_e_L1mHV55FhZ2r4DZgz9SasfEEX3IK2be8gnQ_5YsK-A4p98o1GdTiuwu6TMuh1yvAWPbEV2oa7Xnd0cUk8PwLRlKdvBEsbWrFU8kRjScykSg0zsaoUozqZIqdrDOgy46wyCbdNrxr3J5dooBjTELoD8_W4NrsQaq50yRNe6TxiKpcqzqjCUaJjmgolA2g3Ciu0Bw-3HBaPhSsiorxAFRdWxYVXcQCnsxnPU-CMP2S3rEpncl6bAbQamxR-Z70WlhbN5hwRD-B49hj3hD3okLUZT1AmzSyoDAbiAMJfZATLMUZkUbz388uPYOlydD0oBv3h1T4su0sDrgWxBfNoMHMAi_r97eH15dCtwk_fs9ar |
| openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=Time-Aware+Instrumentation+of+Embedded+Software&rft.jtitle=IEEE+transactions+on+industrial+informatics&rft.au=Fischmeister%2C+Sebastian&rft.au=Lam%2C+Patrick&rft.date=2010-11-01&rft.issn=1551-3203&rft.eissn=1941-0050&rft.volume=6&rft.issue=4&rft.spage=652&rft.epage=663&rft_id=info:doi/10.1109%2FTII.2010.2068304&rft.externalDBID=n%2Fa&rft.externalDocID=10_1109_TII_2010_2068304 |
| thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=1551-3203&client=summon |
| thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=1551-3203&client=summon |
| thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=1551-3203&client=summon |