Safeware: system safety and computers
Safeware: system safety and computers
Handbook of software reliability engineering
Handbook of software reliability engineering
Proof, language, and interaction
System architecture directions for networked sensors
ASPLOS IX Proceedings of the ninth international conference on Architectural support for programming languages and operating systems
Ensuring code safety without runtime checks for real-time control systems
CASES '02 Proceedings of the 2002 international conference on Compilers, architecture, and synthesis for embedded systems
ATEC '02 Proceedings of the General Track of the annual conference on USENIX Annual Technical Conference
CIL: Intermediate Language and Tools for Analysis and Transformation of C Programs
CC '02 Proceedings of the 11th International Conference on Compiler Construction
The nesC language: A holistic approach to networked embedded systems
PLDI '03 Proceedings of the ACM SIGPLAN 2003 conference on Programming language design and implementation
HOTOS '99 Proceedings of the The Seventh Workshop on Hot Topics in Operating Systems
Preliminary Ada reference manual
ACM SIGPLAN Notices - Preliminary Ada reference manual
Memory safety without garbage collection for embedded applications
ACM Transactions on Embedded Computing Systems (TECS)
CCured: type-safe retrofitting of legacy software
ACM Transactions on Programming Languages and Systems (TOPLAS)
Segment protection for embedded systems using run-time checks
Proceedings of the 2005 international conference on Compilers, architectures and synthesis for embedded systems
Backwards-compatible array bounds checking for C with very low overhead
Proceedings of the 28th international conference on Software engineering
Modular checking for buffer overflows in the large
Proceedings of the 28th international conference on Software engineering
Pluggable abstract domains for analyzing embedded software
Proceedings of the 2006 ACM SIGPLAN/SIGBED conference on Language, compilers, and tool support for embedded systems
Avrora: scalable sensor network simulation with precise timing
IPSN '05 Proceedings of the 4th international symposium on Information processing in sensor networks
Virgil: objects on the head of a pin
Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
t-kernel: providing reliable OS support to wireless sensor networks
Proceedings of the 4th international conference on Embedded networked sensor systems
Efficient type and memory safety for tiny embedded systems
Proceedings of the 3rd workshop on Programming languages and operating systems: linguistic support for modern operating systems
SafeDrive: safe and recoverable extensions using language-based techniques
OSDI '06 Proceedings of the 7th USENIX Symposium on Operating Systems Design and Implementation - Volume 7
Dependent types for low-level programming
ESOP'07 Proceedings of the 16th European conference on Programming
Deriving State Machines from TinyOS Programs Using Symbolic Execution
IPSN '08 Proceedings of the 7th international conference on Information processing in sensor networks
Inter-context control-flow and data-flow test adequacy criteria for nesC applications
Proceedings of the 16th ACM SIGSOFT International Symposium on Foundations of software engineering
Code injection attacks on harvard-architecture devices
Proceedings of the 15th ACM conference on Computer and communications security
Proceedings of the 6th ACM conference on Embedded network sensor systems
TinyOS 2.1 adding threads and memory protection to TinyOS
Proceedings of the 6th ACM conference on Embedded network sensor systems
Detecting overflow vulnerabilities using automated verification
Proceedings of the 5th Annual Workshop on Cyber Security and Information Intelligence Research: Cyber Security and Information Intelligence Challenges and Strategies
Surviving sensor network software faults
Proceedings of the ACM SIGOPS 22nd symposium on Operating systems principles
Lightweight module isolation for sensor nodes
Proceedings of the First Workshop on Virtualization in Mobile Computing
On the difficulty of software-based attestation of embedded devices
Proceedings of the 16th ACM conference on Computer and communications security
Bug-Free Sensors: The Automatic Verification of Context-Aware TinyOS Applications
AmI '09 Proceedings of the European Conference on Ambient Intelligence
Modeling the spread of worm epidemics in wireless sensor networks
WiCOM'09 Proceedings of the 5th International Conference on Wireless communications, networking and mobile computing
Slotted programming for sensor networks
Proceedings of the 9th ACM/IEEE International Conference on Information Processing in Sensor Networks
T-check: bug finding for sensor networks
Proceedings of the 9th ACM/IEEE International Conference on Information Processing in Sensor Networks
KleeNet: discovering insidious interaction bugs in wireless sensor networks before deployment
Proceedings of the 9th ACM/IEEE International Conference on Information Processing in Sensor Networks
Software verification for TinyOS
Proceedings of the 9th ACM/IEEE International Conference on Information Processing in Sensor Networks
MMS: an autonomic network-layer foundation for network management
IEEE Journal on Selected Areas in Communications
Efficient diagnostic tracing for wireless sensor networks
Proceedings of the 8th ACM Conference on Embedded Networked Sensor Systems
eShare: a capacitor-driven energy storage and sharing network for long-term operation
Proceedings of the 8th ACM Conference on Embedded Networked Sensor Systems
Interconnecting Smart Objects with IP: The Next Internet
Interconnecting Smart Objects with IP: The Next Internet
Lazy preemption to enable path-based analysis of interrupt-driven code
Proceedings of the 2nd Workshop on Software Engineering for Sensor Network Applications
On software verification for sensor nodes
Journal of Systems and Software
Intelligible TinyOS sensor systems: explanations for embedded software
CONTEXT'11 Proceedings of the 7th international and interdisciplinary conference on Modeling and using context
Achieving long-term operation with a capacitor-driven energy storage and sharing network
ACM Transactions on Sensor Networks (TOSN)
Prius: generic hybrid trace compression for wireless sensor networks
Proceedings of the 10th ACM Conference on Embedded Network Sensor Systems
Spy-Sense: spyware tool for executing stealthy exploits against sensor networks
Proceedings of the 2nd ACM workshop on Hot topics on wireless network security and privacy
Diagnostic tracing for wireless sensor networks
ACM Transactions on Sensor Networks (TOSN)
Diagnostic Tools for Wireless Sensor Networks: A Comparative Survey
Journal of Network and Systems Management
Safe system-level concurrency on resource-constrained nodes
Proceedings of the 11th ACM Conference on Embedded Networked Sensor Systems
SEC'13 Proceedings of the 22nd USENIX conference on Security
Hi-index | 0.00 |
Reliable sensor network software is difficult to create: applications are concurrent and distributed, hardware-based memory protection is unavailable, and severe resource constraints necessitate the use of unsafe, low-level languages. Our work improves this situation by providing efficient memory and type safety for TinyOS 2 applications running on the Mica2, MicaZ, and TelosB platforms. Safe execution ensures that array and pointer errors are caught before they can corrupt RAM. Our contributions include showing that aggressive optimizations can make safe execution practical in terms of resource usage; developing a technique for efficiently enforcing safety under interrupt-driven concurrency; extending the nesC language and compiler to support safety annotations; finding previously unknown bugs in TinyOS; and, finally, showing that safety can be exploited to increase the availability of sensor networks applications even when memory errors are left unfixed.