contiki调度程序是否优先?

时间:2013-03-14 17:19:38

标签: contiki

contiki调度程序是否优先? Tinyos不是;还有nanork,我不确定它的发展状态是什么。

3 个答案:

答案 0 :(得分:2)

Contiki支持抢先线程。请参阅:

https://github.com/contiki-os/contiki/wiki/Multithreading

答案 1 :(得分:1)

Contiki-OS for IoT支持抢先式多线程。在contiki中,多线程作为事件驱动内核之上的库实现,用于动态加载和替换单个服务。该库可以与需要多线程的应用程序链接。 Contiki多线程库分为两部分:(i)平台独立部分(2)平台特定。平台独立部分与事件内核接口,并且库的特定于平台的部分实现堆栈切换和抢占原语。 Contiki使用protothreads来实现所谓的多线程。 Protothreads专为严重的内存限制设备而设计,因为它们无堆栈且轻量级。 protothreads的主要特征是:非常小的内存开销(每个protothread只有两个字节),没有额外的线程堆栈,高度可移植(即,它们完全用C语言编写,因此没有架构特定的汇编代码)。 Contiki不允许中断处理程序发布新事件,Contiki不提供进程同步。必须同步中断处理程序(如果需要)和读取器功能以避免竞争条件。请查看以下链接[环形缓冲区库]:https://github.com/contiki-os/contiki/wiki/Libraries

答案 2 :(得分:0)

值得注意的是,使用最广泛的传感器节点TelosB的端口支持抢占。