Show simple item record

dc.contributor.authorThomas, Johnson
dc.date.accessioned2012-09-21 15:39:01 (GMT)
dc.date.available2012-09-21 15:39:01 (GMT)
dc.date.issued2012-09-21T15:39:01Z
dc.date.submitted2012
dc.identifier.urihttp://hdl.handle.net/10012/7004
dc.description.abstractDebugging is an important phase in the embedded software development cycle because of its high proportion in the overall cost in the product development. Debugging is difficult for real-time applications as such programs are time-sensitive and must meet deadlines in often a resource constrained environment. A common approach for real-time systems is to monitor the execution instead of stepping through the program, because stepping will usually violate all deadline constraints. We consider a time-triggered approach for program monitoring at runtime, resulting in bounded and predictable overhead. In time-triggered execution monitoring, a monitor runs as a separate process in parallel with an application program and samples the program's state periodically to evaluate a set of properties. Applying this technique in computing systems, results in bounded and predictable overhead. However, the time-triggered approach can have high overhead depending on the granularity of the monitoring effort. To reduce this overhead, we instrument the program with markers that will require to sample less frequently and thus reduce the overhead. This leads to interesting problems of (a) where to place the markers in the code and (b) how to manipulate the markers. While related work investigates the first part, in this work, we investigate the second part. We investigate different instrumentation schemes and propose two new schemes based on bitvectors that significantly reduce the overhead for time-triggered execution monitoring. Time-triggered execution monitoring suffers from several drawbacks such as; the time-triggered monitor requires certain synchronization features at the operating system level and may suffer from various concurrency and synchronization dependencies in a real-time setting. Furthermore, the time-triggered execution monitoring scheme requires the embedded environment to provide multi-tasking features. To address the aforementioned problems, we propose a new method called time-triggered self-monitoring, where the program under inspection is instrumented, so that it self-samples its state in a periodic fashion without requiring assistance from an external monitor or an internal timer. The experimental results show that a time-triggered self-monitored program performs significantly better in terms of execution time, binary code size, and context switches when compared to the same program monitored by an external time-triggered monitor.en
dc.language.isoenen
dc.publisherUniversity of Waterlooen
dc.subjecttime-triggered monitoringen
dc.subjectself-monitoringen
dc.subjectreal-time embedded systemsen
dc.subjectruntime verificationen
dc.titleTime-Triggered Program Monitoringen
dc.typeMaster Thesisen
dc.comment.hiddenThe material contained in this work are subject to the following copyright notices and agreements. 1) ACM Copyright ACM, (2011). This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published in LCTES '11 Proceedings of the 2011 SIGPLAN/SIGBED conference on Languages, compilers and tools for embedded systems, Pages 101-110, ISBN: 978-1-4503-0555-6, VOL 46, Issue 5, ISSN 0362-1340, (May 2011), http://doi.acm.org/10.1145/1967677.1967692 "Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee." Note: This work is used from the above mentioned citation is based on the rights retained to the authors under the Copyright Transfer section of the ACM Conference Copyright form and Audio/Video Release form, specifically clause 4 stated as follows "The right to post author-prepared versions of the Work covered by the ACM copyright in a personal collection on their own home page, on a publicly accessible server of their employer and in a repository legally mandated by the agency funding the research on which the Work is based. Such posting is limited to noncommercial access and personal use by others, and must include the following notice both embedded within the full text file and in the accompanying citation display as well". 2) IEEE Copyright 2012 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising or promotional purposes, creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other works. Citation: B.Bonakdarpour, J.J. Thomas, and S. Fischmeister. Time-triggered Program Self-monitoring. In IEEE International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA), pages 260-269, 2012 DOI: 10.1109/RTCSA.2012.16 Link on IEEE Xplore: 1) http://dx.doi.org/10.1109/RTCSA.2012.16 2) http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6300158&isnumber=6300034 Note: This work is used from the above mentioned citation is based on the rights retained to the authors under the Retained Rights/Terms and Conditions section of the IEEE Copyright and Consent Form, specifically clause 6 stated as follows "Personal Servers. Authors and/or employers shall have the right to post the accepted version of IEEE-copyrighted articles on their own personal servers or the servers of their institutions or employers without permission from IEEE, provided that the posted version includes a prominently displayed IEEE copyright notice and, when published, a full citation to the original IEEE publication, including a link to the article abstract in IEEE Xplore. Authors shall not post the final, published versions of their papers.".en
dc.pendingfalseen
dc.subject.programElectrical and Computer Engineeringen
uws-etd.degree.departmentElectrical and Computer Engineeringen
uws-etd.degreeMaster of Applied Scienceen
uws.typeOfResourceTexten
uws.peerReviewStatusUnrevieweden
uws.scholarLevelGraduateen


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record


UWSpace

University of Waterloo Library
200 University Avenue West
Waterloo, Ontario, Canada N2L 3G1
519 888 4883

All items in UWSpace are protected by copyright, with all rights reserved.

DSpace software

Service outages