Font Size: a A A

Development Of A Dynamic Testing Tool For Sensor Network Programs Based On Concurrent Bug Patterns

Posted on:2018-12-18Degree:MasterType:Thesis
Country:ChinaCandidate:M ChengFull Text:PDF
GTID:2348330536983361Subject:Software engineering
Abstract/Summary:PDF Full Text Request
In recent years,wireless sensor network has been rapidly developed with the progress of wireless communication technology and microelectronics technology.However,with more and more WSN programs are deployed in real-world applications,unpredictable failures often occur in these applications because of software quality problems.TinyOS operation system is the standard platform for WSN node-level programming.Due to the complex concurrent model of TinyOS program,concurrent defects are common but difficult to be detected in TinyOS program.The main functions of the WSN program include collecting,transmitting,and processing data,it requires a large number of event handler instances to work together to accomplish these functions.The event handler instance is executed concurrently,including the execution of reading and writing to shared variables and the using of shared channels.The intertwined access to shared resources by event handler instances can cause concurrent bugs in sensor network programs.In this paper,we study the concurrent bugs patterns caused by event handler instances' intertwined access to shared resources in TinyOS programs,including the concurrent bugs caused by shared memory locations and shared channels.We propose a set of bug patterns to describe these concurrent bug features,and we use these patterns to detect concurrent bugs in sensor network programs.We realize an algorithm to detect these two types of concurrent bug patterns,which are used to identify the concurrent bugs that may occur in TinyOS program's running.Based on this algorithm,we realize a dynamic test tool based on TinyOS concurrent bugs,which can visually report the bug patterns and bug statement of the tested program.During the program's running,this tool tracks the access sequence of each shared variable and the use of shared channel to identify the bug patterns.It reports deterministic or suspicious concurrent bug.For each particular bug pattern,this tool also can locate the bug pattern to the source code line.
Keywords/Search Tags:Concurrent Bug Patterns, Sensor Network Program, Dynamic Test, TinyOS
PDF Full Text Request
Related items