Self-stabilization
Self-stabilizing systems in spite of distributed control
Communications of the ACM
Enforcing high-level protocols in low-level software
Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation
An empirical study of operating systems errors
SOSP '01 Proceedings of the eighteenth ACM symposium on Operating systems principles
The SLAM project: debugging system software via static analysis
POPL '02 Proceedings of the 29th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Recovery Oriented Computing (ROC): Motivation, Definition, Techniques,
Recovery Oriented Computing (ROC): Motivation, Definition, Techniques,
Improving the reliability of commodity operating systems
SOSP '03 Proceedings of the nineteenth ACM symposium on Operating systems principles
Self-Stabilizing Autonomic Recoverer for Eventual Byzantine Software
SWSTE '03 Proceedings of the IEEE International Conference on Software-Science, Technology & Engineering
Proceedings of the 36th annual IEEE/ACM International Symposium on Microarchitecture
Toward Self-Stabilizing Operating Systems
DEXA '04 Proceedings of the Database and Expert Systems Applications, 15th International Workshop
Operating Systems Design and Implementation (3rd Edition)
Operating Systems Design and Implementation (3rd Edition)
Proceedings of the twentieth ACM symposium on Operating systems principles
Self-Stabilizing Microprocessor: Analyzing and Overcoming Soft Errors
IEEE Transactions on Computers
A sledgehammer approach to reuse of legacy device drivers
Proceedings of the 11th workshop on ACM SIGOPS European workshop
Improving the reliability of commodity operating systems
Improving the reliability of commodity operating systems
Solving the starting problem: device drivers as self-describing artifacts
Proceedings of the 1st ACM SIGOPS/EuroSys European Conference on Computer Systems 2006
Thorough static analysis of device drivers
Proceedings of the 1st ACM SIGOPS/EuroSys European Conference on Computer Systems 2006
OSDI'04 Proceedings of the 6th conference on Symposium on Opearting Systems Design & Implementation - Volume 6
Unmodified device driver reuse and improved system dependability via virtual machines
OSDI'04 Proceedings of the 6th conference on Symposium on Opearting Systems Design & Implementation - Volume 6
Self-stabilization preserving compiler
SSS'05 Proceedings of the 7th international conference on Self-Stabilizing Systems
Memory management for self-stabilizing operating systems
SSS'05 Proceedings of the 7th international conference on Self-Stabilizing Systems
CAV'06 Proceedings of the 18th international conference on Computer Aided Verification
Hi-index | 0.00 |
This work presents approaches for designing the input-output device management components of self-stabilizing operating systems. As an example, we demonstrate the nonstability of the ata standard protocol for storage devices. We state the requirements that an operating system and I/O devices should satisfy in order to become self-stabilizing. Then we suggest two solutions to satisfy these requirements. The first uses leases to guarantee progress from the I/O device side. The second assumes stabilization of the I/O device, and uses snapshots to perform consistency checks. A device driver for a PC hard-disk, using the first solution, was implemented. By supplying an infrastructure for practical self-stabilizing systems, robust and dependable systems can be achieved.