Rixner, Scott2016-01-272016-01-272015-052015-04-23May 2015Smith, Rebecca Jane. "Reliability and Optimization for Resource-Constrained Embedded Systems." (2015) Master’s Thesis, Rice University. <a href="https://hdl.handle.net/1911/88151">https://hdl.handle.net/1911/88151</a>.https://hdl.handle.net/1911/88151Embedded systems are ubiquitous, powering countless devices ranging from cars to appliances. As the software requirements of these systems grow increasingly complex, it is necessary to develop new approaches to simplify embedded systems programming. Recently, managed run-time systems have emerged as a means of increasing the productivity of writing embedded applications. Along with increased productivity, these run-time systems bring an intrinsic structure which provides new opportunities for addressing fundamental challenges faced by resource-constrained embedded systems. This thesis presents novel mechanisms which utilize the structure imposed by managed run-time systems to address two key challenges of embedded systems programming: reliability and memory management. Though a wealth of past work explores these challenges in the context of conventional computing systems, the stringent resource constraints of embedded systems demand a more economical approach. Therefore, this thesis presents new techniques designed to accommodate the unique properties of embedded systems. First, this thesis presents Phoenix, a semi-automated system for recovering from hardware peripheral failures that is integrated into the run-time system. The design of Phoenix is uniquely tailored to embedded systems, inspired by novel insights into the characteristics of these systems as they pertain to reliability. Second, this thesis proposes a new technique for memory optimization andanalysis in embedded systems that capitalizes on the structure of a managed run-time system. It presents GEM, an extensible framework that implements this technique, and highlights the versatility of this framework through the implementation and evaluation of four use cases. Through these two systems, this thesis demonstrates the power of managed run-time systems to improve the future of developing safe and efficient embedded applications.application/pdfengCopyright is held by the author, unless otherwise indicated. Permission to reuse, publish, or reproduce the work beyond the bounds of fair use or other exemptions to copyright law must be obtained from the copyright holder.embedded systemsrun-time systemsreliabilitymemory visualizationmemory transformationReliability and Optimization for Resource-Constrained Embedded SystemsThesis2016-01-27