linux CPU 板上的 SocketCAN 的 CAN 总线中缺少 PDO

问题描述

据观察,当 cpu 使用率高以及通过 SSH 连接的流量很高时,多个 PDO 会丢失。安排是这样的,使用linux系统的SocketCAN api创建一个包含3个设备的CAN BUS。观察candump命令时,可以看到多个PDO以及丢帧。以下是发生 PDO 丢失时的 Candump 快照。

/candump can0 -t A -x -d -e
(2021-02-10 16:58:40.464701)  can0  RX - -  481   [4]  00 00 00 00
 DROPCOUNT: dropped 280 CAN frames on 'can0' socket (total drops 66531)

系统规格:4核处理器,1GB内存,40GB空间。 压测时设备统计cpu使用率:90%,温度:80°c 耐久性测试是通过从服务器 PC 运行 bash 脚本来进行的,该脚本创建 SSH 连接,循环上传和下载大小为 450Mb 的文件。主要想法是看看在这种压力情况下 CAN 帧会发生什么。

是否有人对此类问题有见解或想法,或对此类问题的解决方案有任何建议。提前感谢您的时间和耐心。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)