[ZLG-ARM] UCOSII】(OS_TCB *)0 为什么可以理解为在该优先级无任务

[复制链接]
3602|2
 楼主| LPC300 发表于 2010-6-9 21:20 | 显示全部楼层 |阅读模式
请教,如题。

难道不是指向0*00000000这个地址?
OS_TCB *
类型为 任务控制块结构体的指针..
(OS_TCB *)0是指向空的任务块,(OS_TCB *)1表示有任务
这该如何理解呢?

lenomerlion 发表于 2010-8-3 10:32 | 显示全部楼层
(OS_TCB *)0的意思是在这个TCB类型指针所指的地址为NULL 就是他指向的地址没有东西。
hgjinwei 发表于 2010-8-3 19:12 | 显示全部楼层
因为他有这么一句
    OS_ENTER_CRITICAL();
    if (OSTCBPrioTbl[newprio] != (OS_TCB *)0) {                 /* New priority must not already exist */
        OS_EXIT_CRITICAL();
        return (OS_ERR_PRIO_EXIST);
    }

还有,如果不出意外,不会出现某个TCB指针指向 1
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:30——驱动高手、流利的英语

107

主题

525

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部