天天看點

【LiteOS】LiteOS任務篇-源碼分析-建立任務函數

目錄

前言

連結

參考

筆錄草稿

部分源碼分析

源碼分析

LOS_TaskCreate函數

LOS_TaskCreateOnly函數

宏 OS_TCB_FROM_PENDLIST 和 宏 LOS_DL_LIST_FIRST

任務控制塊 LOS_TASK_CB

20201009

LiteOS 2018

需要會通用連結清單

LiteOS源碼連結

常見問題

華為開發者社群

華為LiteOS官方教程

我的源碼

包含 裸機源碼

LiteOS 工程模闆

其它關于 LiteOS 的 demo 及 note

上面連結

需要一個 任務初始化參數結構體 <code>TSK_INIT_PARAM_S</code> 和 一個任務句柄。

TSK_INIT_PARAM_S 源碼

LOS_TaskCreate 函數源碼

内含解讀

g_stTskRecyleList

任務可回收連結清單

g_stLosFreeTask

任務可用連結清單

OS_TCB_FROM_PENDLIST

擷取 連結因子 ptr 中所在的任務控制塊的首位址

意思就是:擷取某條 stPendList 連結清單 中 ptr 節點的 TCB句柄

LOS_DL_LIST_ENTRY

通用連結清單的算法

擷取連結因子 item 所在的資料塊的首位址

LOS_OFF_SET_OF

算出 結構體首位址 到 成員 之間的便宜。

繼續閱讀