os_prio.c
2016-02-21 18:42
253 查看
CPU_DATA OSPrioTbl[OS_PRIO_TBL_SIZE]; //bitmap定义 保存要运行和正在运行任务的优先级
void OS_PrioInit (void) :
清空bitmap(OSPrioTbl)
OS_PRIO OS_PrioGetHighest (void) :
确定最高优先级的任务的优先级
从OSPrioTbl[0]开始遍历,如果为0优先级增加32,直到遇到不为0计算出前面的0的个数相加,得到最高优先级。
void OS_PrioInsert (OS_PRIO prio) :
将prio对应的bitmap中的位置1
void OS_PrioRemove (OS_PRIO prio):
将prio对应的bitmap中的位置0
取模运算:如果(基数-1)的二进制全部为1,可以使用& 代替。(如32-1=0b11111)
void OS_PrioInit (void) :
清空bitmap(OSPrioTbl)
OS_PRIO OS_PrioGetHighest (void) :
确定最高优先级的任务的优先级
从OSPrioTbl[0]开始遍历,如果为0优先级增加32,直到遇到不为0计算出前面的0的个数相加,得到最高优先级。
void OS_PrioInsert (OS_PRIO prio) :
将prio对应的bitmap中的位置1
void OS_PrioRemove (OS_PRIO prio):
将prio对应的bitmap中的位置0
取模运算:如果(基数-1)的二进制全部为1,可以使用& 代替。(如32-1=0b11111)
相关文章推荐
- 1029. 旧键盘(20)
- javascript之猜数小游戏
- 一种简单的数字图像复制粘贴(Copy—Move)检测
- deque双向队列(转)
- iOS中Container View Controller的使用
- Android之Spinner选中列表数据不显示数据问题
- Linux Hook 笔记
- Ready List
- 【转载】优先队列详解
- PHP MySQL Delete From 之 Delete
- 为什么有些人出3倍薪资也挖不走?
- 15-题目1432:叠筐
- 为什么有些人出3倍薪资也挖不走?
- 深入浅出-iOS Block原理和内存中位置
- C++引用
- uC CPU port
- Openstack镜像和密码
- Vim使用技巧——基础
- 骨骼蒙皮动画(SkinnedMesh Animation)的实现
- uC OSIII port