Benchmark库的建立03:空指针异常Bug
2016-02-25 11:37
531 查看
Bug类型
空指针异常Bug
正确版本程序
apps/benchmark/BlinkToRadio
1、运行BlinkToRadio节点结果:
2、PC端运行结果:
程序描述
以计数和发送节点id作为packet的有效负载,通过无线定时将packet发送出去;
BaseStation节点将接收到的数据包通过串口转发给PC端,并在PC端打印接收到的数据包;
接收其它节点发送过来的数据,计数值的三个最低有效位分别显示在LED1、LED2、LED3上。
Avrora运行程序
alias avrora=’java -jar avrora-beta-1.7.113.jar -colors=false
-banner=false’;
make mica2;
mv build/mica2/main.exe btr.elf;
avrora -platform=mica2 -monitors=serial,leds,packet -ports=1:0:2390 -stagger-start=6140 -seconds=4 -simulation=sensor-network -nodecount=1,1 btr.elf bs.elf (bs.elf为BaseStation程序编译之后的可执行文件)
java net.tinyos.tools.Listen -comm network@localhost:2390
运行结果分析(正确版本)
能正确发送和接收数据包;
PC端运行的Listen程序能正确打印接收到的数据包。
bug版本程序
/apps/benchmark/bm_BlinkToRadio
1、运行BlinkToRadio节点程序结果:
2、PC端运行结果:
程序修改的部分
event void Timer0.fired()事件中当counter计数为4的倍数时指针赋值为NULL。
bug的显现条件
counter计数为4的倍数时
Bug症状
节点发送和接收的数据包有重复;
PC端接收的数据包的有效负载中counter你内容有重复。
空指针异常Bug
正确版本程序
apps/benchmark/BlinkToRadio
1、运行BlinkToRadio节点结果:
2、PC端运行结果:
程序描述
以计数和发送节点id作为packet的有效负载,通过无线定时将packet发送出去;
BaseStation节点将接收到的数据包通过串口转发给PC端,并在PC端打印接收到的数据包;
接收其它节点发送过来的数据,计数值的三个最低有效位分别显示在LED1、LED2、LED3上。
Avrora运行程序
alias avrora=’java -jar avrora-beta-1.7.113.jar -colors=false
-banner=false’;
make mica2;
mv build/mica2/main.exe btr.elf;
avrora -platform=mica2 -monitors=serial,leds,packet -ports=1:0:2390 -stagger-start=6140 -seconds=4 -simulation=sensor-network -nodecount=1,1 btr.elf bs.elf (bs.elf为BaseStation程序编译之后的可执行文件)
java net.tinyos.tools.Listen -comm network@localhost:2390
运行结果分析(正确版本)
能正确发送和接收数据包;
PC端运行的Listen程序能正确打印接收到的数据包。
bug版本程序
/apps/benchmark/bm_BlinkToRadio
1、运行BlinkToRadio节点程序结果:
2、PC端运行结果:
程序修改的部分
event void Timer0.fired()事件中当counter计数为4的倍数时指针赋值为NULL。
bug的显现条件
counter计数为4的倍数时
Bug症状
节点发送和接收的数据包有重复;
PC端接收的数据包的有效负载中counter你内容有重复。
相关文章推荐
- C#中正则表达式在replace中的应用!
- 解决mac os x下 tomcat启动报 java.net.BindException: Permission denied <null>:80 错误
- matlab plot一点小细节
- ansible 系列教程
- Java基础:Day10笔记内容 (多态概述、抽象类)
- Android Launcher 解决BubbleTextView 点击事件只在ICON上面触发,防止误触
- 对 oc 学习的 阶段反思
- I/O复用——poll系统调用
- sql server查询技巧
- 怎样推断手机用户是移动,电信,联通?
- JavaScript中call,apply,bind方法的总结
- PHP字符串函数(4)
- 用户认证
- STM32 USB学习笔记4
- android 自定义选项卡tabhoust
- MongoDB数据自动同步到ElasticSearch(实现中文全文检索)
- 微商逆袭?指数开始暴涨
- iOS9适配注意点(转)
- プロポーズ大作戦 求婚大作战 台词
- fastjson解析json工具类