GGrantIndex
← Search

Flexible and Survivable Embedded Systems

$300,000FY2002CSENSF

University Of Illinois At Urbana-Champaign, Urbana IL

Investigators

Abstract

Sha, Lui CCR-0209202 "Flexible and Survivable Embedded Systems" This project is developing a three-tiered approach to dependable, safe, and secure software control through a strategy that combines three elements: compiler-based protection, advanced safety controllers, and runtime protection. The research is organized into three majre emphases: Code Safety Checks for Control Applications: This research seeks to exploit the structure of control applications and develop programming restrictions that do not hinder the development of legitimate control applications, but facilitate compiler based static checks for critical properties such as memory safety. The restrictions are specified in a language-independent manner. This is the first line of defense against code, data and process access faults and attacks. A prototype of a secure programming environment based on the LLVM compiler system is being developed that implements the above strategies and demonstrates their effectiveness for single plant control applications. Advanced Safety Controllers against Semantic Faults and Attacks: This research is developing the Invariance Control Method for reliable switching control for safety controller designs. The focus is theory and procedures for systematically constructing safety controllers for online control software upgrade. The inter-dependency between compiler based protection, controller designs and runtime protections is a key concern. The inter-play is studied between programming restrictions, the expressiveness needed in the design of advanced controllers, and automatic generation of minimal and sufficient runtime assertions for dynamic behaviors that cannot be completely checked by static analysis. Efficient Runtime Protections: Traditional runtime protections rely on the extensive use of the process abstraction and execution time monitoring. With code safety checks, it is now possible to develop threads that are logically protected from each other for most applications. The process abstraction will be used only for complex modules whose safety cannot be verified by compiler static analysis. The goal is a new generation of efficient and fault tolerant dynamic real time architectures that can capitalize on the integration between compiler static analysis, safety controller and runtime monitoring and recovery. Experimentation focuses on the next generation Telelab demonstration facility, based on the new framework, that can measure the following: 1) the size of the stability envelope and the reduction of safety controller energy under the theory of invariance control; 2) the runtime efficiency gain in storage and in CPU usage resulted from the integration of complier support and runtime; 3) the robustness against faults and attacks of this new framework.

View original record on NSF Award Search →