基于TI-RTOS的CC2650DK开发(8)---任务


3.6 Tasks
SYS/BIOS task对象是由Task模块管理的线程。Tasks的优先级高于Idle Loop并低于硬件中断和软件中断。参阅video introducing Tasks进行概览。
Task模块基于task的优先级和当前task的运行状态动态地安排和抢占tasks。 这确保了处理器永远运行那些拥有最高优先级的线程。tasks的优先级总共有32个级别,默认优先级是16。MSP430和C28x的最高优先级是16。最低优先级0保留用于运行Idle Loop。
Task模块提供了一系列函数用于控制task对象。它们通过Task_Handle类型句柄访问Task对象。
内核为每个task对象维护了一个处理器寄存器拷贝。每个task都有自己的运行时栈用于存储本地变量以及下一层嵌套函数调用。见3.6.3节获取更多关于任务栈尺寸的输电网信息。
所有运行于单个程序中的tasks共享一个公共的全局变量集合,按照为C函数定义的标准规则范围进行访问。
3.6.1 创建Tasks