TinyOS swMATH ID: 2023 Software Authors: Dalton, Andrew R.; Wahba, Sally K.; Dandamudi, Sravanthi; Hallstrom, Jason O. Description: Visualizing the runtime behavior of embedded network systems: A toolkit for TinyOS. TinyOS is an effective platform for developing lightweight embedded network applications. But the platform’s lean programming model and power-efficient operation come at a price: TinyOS applications are notoriously difficult to construct, debug, and maintain. The development difficulties stem largely from a programming model founded on events and deferred execution. In short, the model introduces non-determinism in the execution ordering of primitive actions - an issue exacerbated by the fact that embedded network systems are inherently distributed and reactive. The resulting set of possible execution sequences for a given system is typically large and can swamp developers’ unaided ability to reason about program behavior. In this paper, we present a visualization toolkit for TinyOS 2.0 to aid in program comprehension. The goal is to assist developers in reasoning about the computation forest underlying a system under test and the particular branches chosen during each run. The toolkit supports comprehension activities involving both local and distributed runtime behavior. The constituent components include (i) a full-featured static analysis and instrumentation library, (ii) a selection-based probe insertion system, (iii) a lightweight event recording service, (iv) a trace extraction and reconstruction tool, and (v) three visualization front-ends. We demonstrate the utility of the toolkit using both standard and custom system examples and present an analysis of the toolkit’s resource usage and performance characteristics Homepage: https://github.com/tinyos/tinyos-main Source Code: https://github.com/tinyos/tinyos-main Keywords: embedded network systems; sensor networks; TinyOS; nesC; program visualization; program comprehension; dynamic analysis; static analysis Related Software: FDR3; ProB; AUTOSAR; Magiclock; Goblint; ASTREE; PRISM-games; PRISM; Viptos; Rebeca; SymmSpin; Spin-to-Grape; Uppaal; SPIN; TopSpin; MPI; PVaniM; Jove; VAMPIR; SEAT Cited in: 6 Documents Standard Articles 2 Publications describing the Software, including 2 Publications in zbMATH Year Visualizing the runtime behavior of embedded network systems: A toolkit for TinyOS. Zbl 1183.68191Dalton, Andrew R.; Wahba, Sally K.; Dandamudi, Sravanthi; Hallstrom, Jason O. 2009 Design and implementation of tinyos integrated developing environment. Zbl 1173.68439Guo, Wen-Sheng; Liu, Kui-An; Sang, Nan 2008 all top 5 Cited by 18 Authors 1 Dalton, Andrew R. 1 Dandamudi, Sravanthi 1 Guo, Wensheng 1 Hallstrom, Jason O. 1 Jaghoori, Mohammad Mahdi 1 Khamespanah, Ehsan 1 Kwiatkowska, Marta Z. 1 Liu, Kui-An 1 Llorens, Marisa 1 MinĂ©, Antoine 1 Mousavi, Mohammadreza 1 Movaghar, Ali 1 Oliver, Javier 1 Sang, Nan 1 Silva, Josep 1 Sirjani, Marjan 1 Tamarit, Salvador 1 Wahba, Sally K. Cited in 4 Serials 1 Acta Informatica 1 Science of Computer Programming 1 Journal of Computer Applications 1 Journal of Logical and Algebraic Methods in Programming Cited in 2 Fields 6 Computer science (68-XX) 1 Operations research, mathematical programming (90-XX) Citations by Year