Part II: specifying components in RESOLVE
ACM SIGSOFT Software Engineering Notes
Part III: implementing components in RESOLVE
ACM SIGSOFT Software Engineering Notes
TOSSIM: accurate and scalable simulation of entire TinyOS applications
Proceedings of the 1st international conference on Embedded networked sensor systems
Direct reasoning
Towards the Formal Verification of a C0 Compiler: Code Generation and Implementation Correctnes
SEFM '05 Proceedings of the Third IEEE International Conference on Software Engineering and Formal Methods
Kansei: A High-Fidelity Sensing Testbed
IEEE Internet Computing
Avrora: scalable sensor network simulation with precise timing
IPSN '05 Proceedings of the 4th international symposium on Information processing in sensor networks
MoteLab: a wireless sensor network testbed
IPSN '05 Proceedings of the 4th international symposium on Information processing in sensor networks
Abstractions for safe concurrent programming in networked embedded systems
Proceedings of the 4th international conference on Embedded networked sensor systems
Verification of C Programs Using Automated Reasoning
SEFM '07 Proceedings of the Fifth IEEE International Conference on Software Engineering and Formal Methods
Slede: a domain-specific verification framework for sensor network security protocol implementations
WiSec '08 Proceedings of the first ACM conference on Wireless network security
Formal Verification of C Systems Code
Journal of Automated Reasoning
Building a push-button RESOLVE verifier: Progress and challenges
Formal Aspects of Computing
The location linking concept: a basis for verification of code using pointers
VSTTE'12 Proceedings of the 4th international conference on Verified Software: theories, tools, experiments
LLBMC: bounded model checking of C and C++ programs using a compiler IR
VSTTE'12 Proceedings of the 4th international conference on Verified Software: theories, tools, experiments
Hi-index | 0.00 |
Embedded network systems support a variety of application domains, including environmental monitoring, social networking, and healthcare. These large networks of low-powered microcontroller-based nodes present challenges in ensuring correctness of the software that runs on these systems. Most embedded networked systems are programmed in C. Verifying software written in C is difficult. In this paper, we take a different approach: We report on our work using the RESOLVE language to program embedded networked systems. Our compiler leverages the RESOLVE verification system and maintains the correctness guarantees established during verification. The verified code is then translated into property-preserving C code that can run on the target hardware.