ucos代码阅读(3)

OS_InitTCBList(); 

static  void  OS_InitTCBList (void)
{
    INT8U    i;
    OS_TCB  *ptcb1;          
    OS_TCB  *ptcb2;

    OS_MemClr((INT8U *)&OSTCBTbl[0],     sizeof(OSTCBTbl));      /* Clear all the TCBs                 */
    OS_MemClr((INT8U *)&OSTCBPrioTbl[0], sizeof(OSTCBPrioTbl));  /* Clear the priority table           */

    ptcb1 = &OSTCBTbl[0];
    ptcb2 = &OSTCBTbl[1];
    for (i = 0; i < (OS_MAX_TASKS + OS_N_SYS_TASKS - 1); i++) {  /* Init. list of free TCBs            */
        ptcb1->OSTCBNext = ptcb2;
#if OS_TASK_NAME_SIZE > 1
        ptcb1->OSTCBTaskName[0] = '?';                           /* Unknown name                       */
        ptcb1->OSTCBTaskName[1] = OS_ASCII_NUL;
#endif
        ptcb1++;
        ptcb2++;
    }
    ptcb1->OSTCBNext = (OS_TCB *)0;                              /* Last OS_TCB                        */
#if OS_TASK_NAME_SIZE > 1
    ptcb1->OSTCBTaskName[0] = '?';                               /* Unknown name                       */
    ptcb1->OSTCBTaskName[1] = OS_ASCII_NUL;
#endif
    OSTCBList               = (OS_TCB *)0;                       /* TCB lists initializations          */
    OSTCBFreeList           = &OSTCBTbl[0];
}

这个函数的实质是对着几个全局变量的操作


OSTCBTbl[]数组本来就是一个全局变量,元素是TCB

OSTCBPrioTbl[] 也是一个全局变量

OSTCBList            
OSTCBFreeList      

首先就是初始化 OSTCBTbl和OSTCBPrioTbl

然后把OSTCBTbl中的元素串成链表(单方向)

接着OSTCBFreeList 指向这个链表的第一个元素,这个变量指向未分配的TCB链表

OSTCBList初始化 





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
uCos-II是一个轻量级的嵌入式操作系统。想要下载uCos-II的代码,首先需要确定下载的源,可以从官方网站或者其他可信的渠道获取最新版本的代码。通常,官方网站会提供源代码的下载链接。 在下载uCos-II代码之前,应该先了解一下软件包的目录结构和文件组织方式,以便更好地使用和理解代码。 下载uCos-II的代码可以通过以下步骤完成: 1. 打开浏览器,输入uCos-II的官方网站地址,如:www.ucos-ii.com。 2. 寻找并点击官方网站中的"Download"或类似的按钮,以进入下载页面。 3. 在下载页面中,查找uCos-II的源代码下载链接,并点击进入。 4. 根据个人需求和情况,选择合适的版本(可能有不同的平台和编译器版本可供选择),并点击下载。 5. 下载完成后,将代码解压缩到计算机的合适目录中。 6. 打开解压后的目录,可以看到代码的各个文件和子目录。 7. 可以使用集成开发环境(IDE)或者编译器来打开代码文件进行查看和编辑。 在下载之后,可以根据需要进行代码的修改、编译和移植等操作,以满足具体的嵌入式系统开发需求。 需要注意的是,在使用uCos-II的代码时,应该遵循相关的开发协议和授权要求,确保代码的合法使用。此外,也可以参考官方网站提供的文档和示例代码,以便更好地理解和使用uCos-II嵌入式操作系统。 总之,下载uCos-II的代码需要从可信的渠道获取,并根据个人需求选择合适的版本,下载后将代码解压缩到计算机中,然后可以使用适当的开发工具进行查看和编辑,以满足嵌入式系统开发的需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值