vxWorks 任务异常
来源:互联网 发布:qq聊天变声软件 编辑:程序博客网 时间:2024/05/29 13:32
转载自: http://blog.csdn.net/zyboy2000/article/details/6877691
做VxWorks的时候经常会碰到任务异常的问题,有时很难定位,下面是我在工作中的一点心得。不正确的地方请指出,谢谢!
1、任务异常的一般表现
2、可能的原因
3、处理策略
具体定位提示:
3、重现问题,如果通过上述步骤无法直接找到原因,那么恭喜你,你已经遇到恐怖的随机内存改写问题,这类问题通常难以重现,而且通过分析单个任务的运行轨迹很难找到原因,这类问题很可能的情况是:虽然任务A在运行函数FuncA时产生的异常,但真正的内存改写代码很可能是在任务X或函数FuncX中,解决这类问题的关键是如何重现问题,一旦问题可以比较容易的重现,那么可以说问题已经解决了一半。
重现问题的办法:
4、解决问题
[ 本帖最后由 nicozhou 于 2008-7-9 20:19 编辑 ]
2008-7-9 18:05Cyberman.Wu
栈越界和栈溢出没有本质区别吧。你第四点说的有点问题,在中断中可以调用msgQSend的,而其它一些不允许的调用本身也是直接返回失败,一般不会直接导致异常;之所以异常往往是调用了semTake返回就以为成功了,直接访问被信号量保护的资源。
另外异常是分类型的,而且不同的CPU系统上是有区别的。你上面讲的感觉是PPC的,DSI,实际上常见的还有ISI和Program等,具体看CPU的手册。
我原来写过一份基于PowerPC下的VxWorks中异常定位的PowerPoint文档,可惜虽然是自己写的,但里面的例子是原来公司系统中的,无法直接共享出来,需要有机会重新修改了里面的例子才能发布出来。
另外异常是分类型的,而且不同的CPU系统上是有区别的。你上面讲的感觉是PPC的,DSI,实际上常见的还有ISI和Program等,具体看CPU的手册。
我原来写过一份基于PowerPC下的VxWorks中异常定位的PowerPoint文档,可惜虽然是自己写的,但里面的例子是原来公司系统中的,无法直接共享出来,需要有机会重新修改了里面的例子才能发布出来。
2008-7-9 20:17nicozhou
原帖由 Cyberman.Wu 于 2008-7-9 18:05 发表 [url=http://bbs.chinaunix.net/redirect.php?goto=findpost&pid=8775523&ptid=1193618][img]http://bbs.chinaunix.net/images/common/back.gif[/img][/url]
栈越界和栈溢出没有本质区别吧。你第四点说的有点问题,在中断中可以调用msgQSend的,而其它一些不允许的调用本身也是直接返回失败,一般不会直接导致异常;之所以异常往往是调用了semTake返回就以为成功了,直接访问被信号量保护的资源。
另外异常是分类型的,而且不同的CPU系统上是有区别的。你上面讲的感觉是PPC的,DSI,实际上常见的还有ISI和Program等,具体看CPU的手册。
我原来写过一份基于PowerPC下的VxWorks中异常定位的PowerPoint文档,可惜虽然是自己写的,但里面的例子是原来公司系统中的,无法直接共享出来,需要有机会重新修改了里面的例子才能发布出来。[/quote]
查了一下,你是说的是对的。谢谢!
我们在VX上用的是ARM,可能和你说的是有点不一样
栈越界和栈溢出没有本质区别吧。你第四点说的有点问题,在中断中可以调用msgQSend的,而其它一些不允许的调用本身也是直接返回失败,一般不会直接导致异常;之所以异常往往是调用了semTake返回就以为成功了,直接访问被信号量保护的资源。
另外异常是分类型的,而且不同的CPU系统上是有区别的。你上面讲的感觉是PPC的,DSI,实际上常见的还有ISI和Program等,具体看CPU的手册。
我原来写过一份基于PowerPC下的VxWorks中异常定位的PowerPoint文档,可惜虽然是自己写的,但里面的例子是原来公司系统中的,无法直接共享出来,需要有机会重新修改了里面的例子才能发布出来。[/quote]
查了一下,你是说的是对的。谢谢!
我们在VX上用的是ARM,可能和你说的是有点不一样
0 0
- VxWorks异常任务检测
- vxWorks任务异常
- vxworks任务异常处理
- vxWorks 任务异常
- VxWorks任务编程中常见异常分析
- VxWorks任务编程中常见异常分析
- VxWorks任务编程中常见异常分析
- VxWorks 任务
- VxWorks 任务
- VxWorks 任务
- vxworks环境下的CPU\内存\任务\异常 监控
- VxWorks系统任务
- [转帖]VxWorks任务调度
- vxworks任务调度
- VxWorks的系统任务
- VxWorks任务钩子示例
- VxWorks的任务状态
- VxWorks任务控制API
- volatile 多线程同步关键字
- MFC异形窗口-多边形窗口-根据图片自定义窗口形状-CRgn
- 三分_3
- c++中printf("%5d%5d%5d%5d%5d", ++i, --i, i++, --i, -i--)的问题
- MagicIndicator系列之一 —— 使用MagicIndicator打造千变万化的ViewPager指示器
- vxWorks 任务异常
- PowerBuilder创建与释放对象实例
- Android实践之ScrollView中滑动冲突处理
- NOIP2006普及组复赛试题 1.明明的随机数(桶排序,冒泡排序,快速排序)
- iPhone彻底删除itunes程序列表中的应用
- U盘安装centos6.5
- ThreadLocal 多线程同步关键字
- HDU1011——Starship Troopers(树状dp)
- vs2013 中localdb 的使用(2)