共2条
1/1 1 跳转至页
WDB 任务不稳定??

为何要采用时间片轮转调度呢?其实默认的调度器性能非常好,完全可以满足你的应用要求。
WDB报错,可否把详细出错信息贴出来用于分析?
对于你的情况,我觉得要注意几点:
1.串口波特率:如果是9600,发送、接受一个字节大概是1个ms,20ms发36个做不到,所以串口波特率必须比较高。
2.串口驱动:vxWorks中的串口驱动,tty方式的,都是没有启用芯片内部缓冲的,也就是受到和发出一个字节就会中断一次,这点对CPU性能消耗影响很大,中断率会比较高,建议自己根据手册写串口驱动,较大程度上利用好芯片内部缓冲,现在的UART基本上都有缓冲。
3.如果你一定要用时间片轮转,上来说很难兼顾软件实时性和硬件实时性,另外时间粒度太大和时间粒度太小会带来不同的性能问题。
WDB报错,可否把详细出错信息贴出来用于分析?
对于你的情况,我觉得要注意几点:
1.串口波特率:如果是9600,发送、接受一个字节大概是1个ms,20ms发36个做不到,所以串口波特率必须比较高。
2.串口驱动:vxWorks中的串口驱动,tty方式的,都是没有启用芯片内部缓冲的,也就是受到和发出一个字节就会中断一次,这点对CPU性能消耗影响很大,中断率会比较高,建议自己根据手册写串口驱动,较大程度上利用好芯片内部缓冲,现在的UART基本上都有缓冲。
3.如果你一定要用时间片轮转,上来说很难兼顾软件实时性和硬件实时性,另外时间粒度太大和时间粒度太小会带来不同的性能问题。
共2条
1/1 1 跳转至页