铜仁市论坛

首页 » 分类 » 定义 » LiteOS内核源码解析盘点那些重要的
TUhjnbcbe - 2021/5/21 17:21:00

在《LiteOS源码解析系列》话题中,已经陆续解析了LiteOS内核中的两个基础数据结构,双向循环链表和优先级队列。本文是盘点LiteOS内核重要数据结构的最后一篇,将带大家认识排序链表SortLinkList。

排序链表在LOS_DL_LIST双向链表结构体的基础上,增加了RollNum滚动数,用于到期/超时等业务场景。阻塞任务是否到期,定时器是否超时等场景,强依赖于SortLinkList排序链表。LiteOS排序链表支持单链表LOSCFG_BASE_CORE_USE_SINGLE_LIST和多链表LOSCFG_BASE_CORE_USE_MULTI_LIST,可以通过LiteOS的menuconfig工具更改Kernel→BasicConfig→SortlinkOption选项来配置使用单链表还是多链表,本文讲述的是单链表。

排序链表主要供内部使用,用户进行业务开发时不涉及,所以并未对外提供接口。排序链表的代码都在kernel\base\include\los_sortlink_pri.h和kernel\base\los_sortlink.c文件中。

本文所涉及的LiteOS源码,均可以在LiteOS开源站点

1
查看完整版本: LiteOS内核源码解析盘点那些重要的