Survival strategies for synthesized hardware systems

Survival is a key concern of many complex systems. A standard approach to maximizing the likelihood of survival is to attempt to produce a system that is as free of errors as possible. We instead propose a methodology that changes the semantics of the underlying development and execution environment...

Full description

Bibliographic Details
Main Author: Rinard, Martin C.
Other Authors: Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
Format: Article
Language:en_US
Published: Institute of Electrical and Electronics Engineers 2010
Subjects:
Online Access:http://hdl.handle.net/1721.1/58820
https://orcid.org/0000-0001-8095-8523
Description
Summary:Survival is a key concern of many complex systems. A standard approach to maximizing the likelihood of survival is to attempt to produce a system that is as free of errors as possible. We instead propose a methodology that changes the semantics of the underlying development and execution environments to cleanly and simply obtain survival guarantees that are difficult if not impossible to obtain with standard techniques. Examples of survival properties include continued execution in the face of addressing errors and guaranteed bounds on the amount of memory required during any execution of the system (even in the face of dynamic memory allocation).We summarize results for software implementations of these techniques and discuss issues and advantages that arise in the context of hardware implementations.