天天看点

【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

算出 结构体首地址 到 成员 之间的便宜。

继续阅读