vxworks下的问题定位及调试方法

上一篇 / 下一篇  2010-11-24 10:44:32

vxworks是一种实时操作系统,单个CPU下只能有一个任务运行,系统有多任务运行时采用调度算法,将内核插入到某个任务中执行。任务是系统中独立,相互作用的程序单元。调度算法有:基于优先级抢占的任务调度、轮询调度。两者常常一起使用,优先级高的任务优先得到调度,同优先级时,采用轮询机制,如果不采用轮询调度,同优先级的任务间,第一个得到CPU的任务将独占CPU,会造成死循环等。

vxworks下的问题定位调试手段有:

1.异常情况下的调用栈信息查看,发生异常时,系统会记录异常指令。寄存器中会写入发生异常时的函数调用。

2. 内存dump,怀疑内存被改写的时候,打印相应的内存内容。

如,发生空指针,设备重启的时候,设备打印异常信息,提示空指针。然后在寄存器中查看函数调用关系。把.bin文件反汇编,把调用栈中的函数地址映射到代码中。

发生死循环等,也可以根据上述方法,定位问题。

 


TAG: Vxworks 调试 定位 vxworks

 

评分:0

我来说两句

我的栏目

日历

« 2024-04-26  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 8714
  • 日志数: 9
  • 建立时间: 2010-11-23
  • 更新时间: 2011-01-18

RSS订阅

Open Toolbar