《FreeRTOS任务控制块篇》

  • Task control block, 即任务控制块。任务控制块(TCB)是一个结构体,它会分配给每个任务,其中存储着任务的状态信息,包括指向任务上下文(任务的运行时环境,包括寄存器值)的指针。
  • 任务控制块就像是任务的身份ID,必不可少。
  • 基于DSP芯片TMS320F28377D上移植到FreeRTOS系统。

1. 源码定义

  • 注意,已经根据宏定义,在源码中去除了未用到的部分。
/*
 * Task control block.  A task control block (TCB) is allocated for each task,
 * and stores task state information, including a pointer to the task's context
 * (the task's run time environment, including register values)
 */
typedef struct tskTaskControlBlock
{
   
    /* 指向任务堆栈中最后一个项目的位置。这必须是TCB结构的第一个成员 */
    volatile StackType_t * pxTopOfStack; /*< Points to the location of the last item placed on the tasks stack.  THIS MUST BE THE FIRST MEMBER OF THE TCB STRUCT. */

    /* 任务的状态列表项所引用的列表,用来表示该任务的状态(就绪、阻止、挂起) */
    ListItem_t xStateListItem; /*< The list that the state list item of a task is reference from denotes the state of that task (Ready, Blocked, Suspended ). */

    /* 用于从事件列表中引用任务 */
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值