当前位置: 首页 > news >正文

从零开始掌握FreeRTOS(2)链表之节点的定义

  

目录

节点

节点定义

节点实现

根节点

根节点定义

 精简节点定义

根节点实现


      在上篇文章,我们完成了 FreeRTOS 的移植。在创建任务之前,我们需要先了解FreeRTOS的运转机制。

        FreeRTOS是一个多任务系统,由操作系统来管理执行每个任务。这些任务全都挂载到一个双向循环链表上。同时链表的每个节点都能挂载多个任务。

节点

节点定义

        在 FreeRTOS 中,关于链表的定义在 list.h 中实现。下面代码为链表节点的结构体定义。

PS:在 list.h 中,我的宏 configUSE_LIST_DATA_INTEGRITY_CHECK_BYTES 设置为0,当其为0时,listFIRST_LIST_ITEM_INTEGRITY_CHECK_VALUE 和 listSECOND_LIST_ITEM_INTEGRITY_CHECK_VALUE 这两个宏不代表实际值,为提高可读性所以我在后续出现这两个宏的地方都将他们删去了。

struct xLIST_ITEM
{			configLIST_VOLATILE TickType_t xItemValue;			struct xLIST_ITEM * configLIST_VOLATILE pxNext;		struct xLIST_ITEM * configLIST_VOLATILE pxPrevious;	void * pvOwner;										void * configLIST_VOLATILE pvContainer;							
};
typedef struct xLIST_ITEM ListItem_t;	

configLIST_VOLATILE TickType_t xItemValue:这里的 configLIST_VOLATILE 就是C语言中的VO

http://www.xdnf.cn/news/431821.html

相关文章:

  • 虹科干货 | CAN XL安全实践:深度防御下的密钥协商优化
  • 自然语言生成在商业智能中的应用实践
  • Future,Callable,CompletableFuture是什么?
  • 2025年项目管理软件革命:AI与国产化浪潮如何重塑企业协作生态
  • tc qdisc参数详解
  • 智慧校园场景下iVX 研发基座应用实践与行业适配研究
  • Milvus(21):过滤搜索、范围搜索、分组搜索
  • python面试实战经验分享
  • Python 实战:如何智能修改字典中的实体值?
  • 从 Vue3 回望 Vue2:响应式的内核革命
  • 集成设备管理(IDM)
  • Android组件权威解析:Activity与Fragment的深度探索与实战
  • 双种群进化算法:动态约束处理与资源分配解决约束多目标优化问题
  • AI模拟了一场5亿年的进化
  • Python Django基于模板的药品名称识别系统【附源码、文档说明】
  • 支付宝小程序开发指南
  • servlet-api
  • 转发多台px4仿真UDP数据到地面站
  • R²AIN SUITE:AI+文档切片,重塑知识管理新标杆
  • Sails.js 知识框架整理
  • 超声波传感器模块
  • 消息~组件(群聊类型)ConcurrentHashMap发送
  • 自适应稀疏核卷积网络:一种高效灵活的图像处理方案
  • Java自定义线程池:从原理到高性能实践
  • NY164NY165美光固态闪存NY166NY172
  • 医疗设备EMC测试为什么推荐GRJ1080B系列滤波器?
  • 工作常用的git命令
  • APS排程系统(Advanced Planning and Scheduling,高级计划与排程系统)
  • U-BOOT
  • talk-centos6之间实现