QF实时框架:原理、实现与移植
1. QPSet64操作
在集合操作中,插入和移除元素的操作十分重要。插入元素‘n_’到集合‘me_’的实现如下:
#define QPSet64_insert(me_, n_) do { \
(me_)->bits[QF_div8Lkup[n_]] |= QF_pwr2Lkup[n_]; \
(me_)->bytes |= QF_pwr2Lkup[QF_div8Lkup[n_] + 1]; \
} while(0)
移除元素‘n_’从集合‘me_’的实现如下:
#define QPSet64_remove(me_, n_) do { \
(me_)->bits[QF_div8Lkup[n_]] &= QF_invPwr2Lkup[n_]; \
if ((me_)->bits[QF_div8Lkup[n_]] == (uint8_t)0) { \
(me_)->bytes &= QF_invPwr2Lkup[QF_div8Lkup[n_] + 1]; \
} \
} while(0)
2. 原生协作“Vanilla”内核
“Vanilla”内核是一种简单的协作式内核,其实现分布在两个文件中:
- qvanilla.h 头文件,位于 <qp>\qpc\include\
QF实时框架原理、实现与移植详解
超级会员免费看
订阅专栏 解锁全文
53

被折叠的 条评论
为什么被折叠?



