Record and Replay for Debugging Wireless Embedded Devices
A new record and replay system enhances the debugging of network embedded systems by efficiently capturing and replaying all sources of non-determinism, enabling accurate, on-site troubleshooting.
Networked Embedded Systems (NESs) are commonly used in wireless sensor networks, with embedded nodes that are able to collect and process sensor data and then wirelessly transfer it to other nodes. These systems have been used to monitor the environment, electrical grids, manufacturing plants, buildings, and battlefields. Because of the limited hardware resources of the nodes, their remote locations, and the non-determinism of their execution, debugging a NES can be challenging. Debugging is typically done using a record and replay mechanism, which creates a log of the node's execution that can be traced using debugging tools. This method allows debugging to be done on more powerful hardware and it captures the exact sequence of events that happened to the node in the field, allowing it to be better replicated in a laboratory.
Researchers at Purdue University have developed a new record and replay method that further improves the debugging of NESs. The solution makes it practical to record all of the sources of non-deterministic for a node despite the limited resources of the node itself. With this new system, an efficient mechanism has been developed to efficiently compress and communicate the traces of the node and another mechanism has been made to replay the traces so that all of the sources of non-determinism are captured. These software tools make it possible to perform debugging, in a laboratory or on-the-fly, which accurately reflects the conditions in the field.
Advantages:
- Captures all sources of non-determinism
- Nodes can remain in the field for debugging
TRL: 4
Intellectual Property:
Provisional-Patent, 2013-10-22, United States
PCT-Patent, 2014-10-03, WO
NATL-Patent, 2016-04-21, United States
Keywords: record and replay debugging, NES debugging, non-deterministic embedded systems, debugging software tools, trace compression and communication, on-the-fly debugging, field debugging, capturing non-determinism, embedded system fault isolation, system trace replay, Computer Technology, Database & Information Management, Electrical Engineering, Embedded Software, Embedded Systems, Network Software, Software