Bandera: extracting finite-state models from Java source code
Proceedings of the 22nd international conference on Software engineering
GPSR: greedy perimeter stateless routing for wireless networks
MobiCom '00 Proceedings of the 6th annual international conference on Mobile computing and networking
System architecture directions for networked sensors
ASPLOS IX Proceedings of the ninth international conference on Architectural support for programming languages and operating systems
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
A sensor network application construction kit (SNACK)
SenSys '04 Proceedings of the 2nd international conference on Embedded networked sensor systems
Region streams: functional macroprogramming for sensor networks
DMSN '04 Proceeedings of the 1st international workshop on Data management for sensor networks: in conjunction with VLDB 2004
JiST: an efficient approach to simulation using virtual machines: Research Articles
Software—Practice & Experience
EESR '05 Proceedings of the 2005 workshop on End-to-end, sense-and-respond systems, applications and services
Networking Wireless Sensors
Issues in designing a compilation framework for macroprogrammed networked sensor systems
InterSense '06 Proceedings of the first international conference on Integrated internet ad hoc and sensor networks
Programming wireless sensor networks with logical neighborhoods
InterSense '06 Proceedings of the first international conference on Integrated internet ad hoc and sensor networks
Building up to macroprogramming: an intermediate language for sensor networks
IPSN '05 Proceedings of the 4th international symposium on Information processing in sensor networks
EnviroSuite: An environmentally immersive programming framework for sensor networks
ACM Transactions on Embedded Computing Systems (TECS)
Portable worst-case execution time analysis using Java byte code
Euromicro-RTS'00 Proceedings of the 12th Euromicro conference on Real-time systems
Logical neighborhoods: a programming abstraction for wireless sensor networks
DCOSS'06 Proceedings of the Second IEEE international conference on Distributed Computing in Sensor Systems
Macro-programming wireless sensor networks using Kairos
DCOSS'05 Proceedings of the First IEEE international conference on Distributed Computing in Sensor Systems
Energy-Efficient Task Mapping for Data-Driven Sensor Network Macroprogramming
DCOSS '08 Proceedings of the 4th IEEE international conference on Distributed Computing in Sensor Systems
Srijan: a graphical toolkit for sensor network macroprogramming
Proceedings of the the 7th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software engineering
A modular and extensible macroprogramming compiler
Proceedings of the 2010 ICSE Workshop on Software Engineering for Sensor Network Applications
Model-driven development with optimization of non-functional constraints in sensor network
Proceedings of the 2010 ICSE Workshop on Software Engineering for Sensor Network Applications
Model driven development for data-centric sensor network applications
Proceedings of the 9th International Conference on Advances in Mobile Computing and Multimedia
Hi-index | 0.00 |
Macroprogramming-the technique of specifying the behavior of the system, as opposed to the constituent nodes-provides application developers with high level abstractions that alleviate the programming burden in developing wireless sensor network (WSN) applications. However, as the semantic gap between macroprogramming abstractions and node-level code is considerably wider than in traditional programming, converting the high level specification to running code is a daunting process, and a major hurdle to the acceptance of macroprogramming. In this paper, we propose a general compilation framework for a data-driven macroprogramming language that allows for plugging in different modules implementing various stages of compilation.We also demonstrate an actual instantiation of our framework by showing an end-to-end solution for compiling macroprograms. Our compiler provides the final code to be deployed on real nodes as well as an estimate of the costs the running system will incur, e.g., in terms of messages exchanged. We compared the auto-generated code against a handcoded version for the same application behavior to verify the outcome of our compiler.