This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

请问EVM6678 NDK组件中的Stack与SYS/BIOS的task有什么区别吗?



单独跑过NDK的例程,能够成功用UDP实现DSP与PC通信。也单独跑过SYS/BIOS创建的task,但是我合在一起就跑不通了。

我发现NDK的CFG静态配置页面不止有SYS/BIOS的。它包含两个部分:NDK core Stack和SYS/BIOS。

然后通过测试我发现,NDK情形下的Stack和SYS/BIOS中创建的task不一样,我想请问下,他们的运行顺序有什么区别呢?然后他两会互相冲突吗?

我希望通过新建一个SYS/BIOS的task来触发一个SWI,从而运行NDK,这需要怎么做呢?

期待回复,谢谢大家!

  • NDK stack创建task是调用它自己的TaskCreate函数,不是调用sys/bios里的task函数,请参考下面NDK user guide里的注释。
    With the exception of calling TaskCreate() to create a new sockets thread, NDK applications should no longer make calls to the Task*() functions that directly access the Task threads provided by the TI-RTOS Kernel. This is because the NDK itself uses POSIX pthread calls. While internally the POSIX threading APIs may be using TI-RTOS Kernel, calls to pthread are not compatible with calls to the TI-RTOS Kernel's Task module.
    www.ti.com/.../spru523k.pdf