任务(线程)的定义
任务栈
术中自有万钟粟\Cortex-M4内核原理\函数栈帧与压栈出栈.md,了解函数调用里的压栈出栈
这里就是每个任务都有一个栈
这里栈顶需要注意8字节对齐,看cpu通用寄存器组里R13的记录
TCB(任务控制块)
TCB 是系统管理每个任务的数据结构,核心保存两个东西:任务栈的栈顶指针(pxTopOfStack)和任务入口函数地址(即任务代码在 ROM 中的位置)。系统通过 TCB 随时找回任务的运行现场和代码起点。
初始化代码(xTaskCreate 内部)中做了这些事情:申请栈空间、初始化 TCB 字段、在栈帧中按异常返回格式预填入初始寄存器值(xPSR、PC、R14 等),使任务首次被调度时能像”刚从异常中返回”一样自动开始执行。
存储在堆(xTaskCreate)或者栈中(xTaskCreateStatic)