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

内核学习——1、list_head

双向循环链表:list_head
头节点head是不使用的:
struct list_head {
struct list_head *next, *prev;
};
结构体中没有数据域,所以一般把list_head嵌入到其他结构中使用
struct file_node {
char c;
struct list_head node;
};
此时,list_head就作为它父结构体中的一个成员了,我们知道list_head的地址(指针)时,就可以通过list_entry来获得它的父结构的地址
#define list_entry(ptr, type, member) container_of(ptr,type,member)
通过结构体成员地址来求得结构体地址:ptr是所求结构体中的list_head成员指针,type是所求结构体类型,member是结构体list_head成员名
list_for_each:遍历双向链表
LIST_HEAD():生成双向链表头节点
list_add():插入操作
list_del():删除操作
list_empty():判断是否为空

http://www.lryc.cn/news/377312.html

相关文章:

  • JavaEE初阶--网络基本概念
  • gitlab-cicd-k8s
  • 盘点下常见 HDFS JournalNode 异常的问题原因和修复方法
  • 深入了解python生成器(generator)
  • 【Linux】Xshell和Xftp简介_安装_VMware虚拟机使用
  • 【轮询负载均衡规则算法设计题】
  • 张一鸣的产品哲学:与巨头共舞,低调中寻求突破
  • 【面试干货】throw 和 throws 的区别
  • 安卓手机删除的照片怎么恢复?3个方法,小技巧大作用
  • Unity制作背包的格子
  • 道可云元宇宙每日资讯|厦门:运用元宇宙技术助力直播电商发展
  • 电脑怎么卸载软件?多个方法合集(2024年新版)
  • 【深度学习基础】详解Pytorch搭建CNN卷积神经网络LeNet-5实现手写数字识别
  • 面试技巧:正确回答JavaScript中Map和Object的选择问题
  • sd StableDiffusion库学习笔记
  • 【单片机毕业设计选题24017】-基于STM32的禽舍环境监测控制系统(蓝牙版)
  • 每天一个数据分析题(三百七十八)- 系统聚类
  • 守护系统稳定性的关键技术之看门狗
  • 【Linux】进程间通信上 (1.5万字详解)
  • 测试用例设计:提升测试覆盖率的策略与方法
  • 【微服务】什么是Hystrix?一文带你入门Hystrix
  • AI学习指南机器学习篇-支持向量机超参数调优
  • 掉电安全文件系统分析
  • React-Redux学习笔记(自用)
  • 【机器学习】:线性回归模型学习路线
  • C++设计模式——Flyweight享元模式
  • Github 2024-06-19 开源项目日报 Top10
  • 【ARM】如何通过Keil MDK查看芯片的硬件信息
  • elasticsearch的安装和配置
  • 华为云下Ubuntu20.04中Docker的部署