Building a self-healing embedded system in a multi-OS environment
Proceedings of the 2009 ACM symposium on Applied Computing
Composition kernel: a multi-core processor virtualization layer for rich functional smart products
SEUS'10 Proceedings of the 8th IFIP WG 10.2 international conference on Software technologies for embedded and ubiquitous systems
Proceedings of the 16th Asia and South Pacific Design Automation Conference
Hi-index | 0.00 |
Device drivers are the major cause of operating system failure. Prior research proposed frameworks to improve the reliability of device drivers by means of driver restart. While avoiding any instrumentation of the driver, this approach does not always allow graceful recovery. In this paper, we propose a framework for self-healing device drivers that lets the driver developer consider and implement the failure recovery of device drivers. For this purpose, our framework provides easy to use and light-weight persistent memory that preserves the state of the driver needed to successfully recover. We developed a prototype on top of the L4 microkernel, and were able to achieve full recovery of crashed drivers as fast as 0.2 ms for different device drivers. In all cases, recovery was totally transparent for the user.