你好。 尝试在 QNX 7.0上的线程之间发送 TI-IPC MessageQ 消息时出现错误。 控制台上显示的错误为:"transportPut:write failed: 9, bad file descriptor"。 在与 DSP1交换消息时,相同的代码工作正常。
我的测试设置:
电路板:AM572X-EVM/BeagleBoard X-15
Cortex-A15s/HLOS:QNX 7.0、使用 TI-RTOS/IPC (处理器 SDK v4.02)库(processors.wiki.ti.com/.../IPC_Install_Guide_QNX)
DSP1:TI-RTOS/IPC (处理器 SDK v4.02)
IPC 用户指南(processors.wiki.ti.com/.../IPC_Users_Guide) 声明:
"IPC 可用于与以下设备进行通信:
同一处理器上的其他线程
运行 SYS/BIOS 的其他处理器上的线程
运行 HLOS 的其他处理器上的线程(例如 Linux、QNX、Android)"
这种说法使我认为命名 MessageQ 应该可以从运行在任何操作系统上的任何芯片处理器上的任何线程进行访问。 同样、我能够从 QNX 线程发送到 DSP1 MessageQ、而不会出现任何问题。 这基本上是常用 IPC/ex02_MessageQ 示例、它运行得很好。 这是否特定于 TI 的 QNX IPC 实施? 我是否有误解?
谢谢、
Chris