中级会员
 
- 积分
- 388
- 金钱
- 388
- 注册时间
- 2017-3-2
- 在线时间
- 156 小时
|

楼主 |
发表于 2018-11-13 09:55:25
|
显示全部楼层
程序跑飞之前会进入这个系统函数:
OS_PRIO OS_MutexGrpPrioFindHighest (OS_TCB *p_tcb)
{
OS_MUTEX **pp_mutex;
OS_PRIO highest_prio;
OS_PRIO prio;
OS_PEND_DATA *p_head;
highest_prio = OS_CFG_PRIO_MAX - 1u;
pp_mutex = &p_tcb->MutexGrpHeadPtr;
while(*pp_mutex != (OS_MUTEX *)0) {
p_head = (*pp_mutex)->PendList.HeadPtr;
if (p_head!= (OS_PEND_DATA *)0) {
prio = p_head->TCBPtr->Prio;
if(prio < highest_prio) {
highest_prio = prio;
}
}
pp_mutex = &(*pp_mutex)->MutexGrpNextPtr;
}
return (highest_prio);
}
我看了下,那个p_head是0x11111111,一看这个值就不正常,但是真的不知道为什么会出现这种情况。
|
|