任务的创建

文章目录

    • 1 任务的创建
      • 1.1 任务的来源
      • 1.2 任务参数
      • 1.3 tinyOS任务的组织
      • 1.4 创建并启动任务
      • 1.5 tinyOS接口
      • 1.6 系统启动流程

1 任务的创建

1.1 任务的来源

任务的创建_第1张图片

1.2 任务参数

任务的外观:一个永远不会返回的函数。
任务的创建_第2张图片
任务的内在:
任务的创建_第3张图片
典型的任务表现:
任务的创建_第4张图片

1.3 tinyOS任务的组织

任务的创建_第5张图片

1.4 创建并启动任务

任务的创建_第6张图片

1.5 tinyOS接口

任务的创建_第7张图片

1.6 系统启动流程

任务的创建_第8张图片
方案一和方案二各有优缺点。但是相比之下,方案一可以避免方案二的潜在问题:在系统还没跑起来时,初始化硬件产生中断,导致中断服务程序中如果调用了OS相关接口,导致整个OS挂掉。方案一的优势在于:在初始任务跑起来之前,操作的只是内存数据(初始化、读写)、只有一个执行流(不可能发生中断,也没有任务),所以整个系统状态完全可控,不会发生异常情况。


参考资料:

  1. 手把手教你学用嵌入式操作系统

你可能感兴趣的:(所学所思所想)