- 博客(4)
- 收藏
- 关注
原创 offsetof 详解
offsetof 本质上是 linux 内核的一个宏函数,其作用是获取结构体中某个成员相对于结构体起始地址的偏移量。
2023-08-04 14:38:12
3388
1
原创 Linux container_of() 函数详解
container_of(ptr, type, member) 是一个宏函数,其作用是通过结构体成员的地址找到结构体的地址。该宏函数常在 linux 内核链表遍历之后使用,以此来获取虚节点所寄生的宿主结构体,详情可以参考这篇文章。参数简介:container_of(ptr, type, member) 中,ptr 为结构体成员地址,type 为结构体的类型,member 为结构体成员在结构体里的名字。
2023-08-04 14:13:27
2053
3
原创 Linux 链表
Linux的链表一般是双向循环链表,并且链表的节点也只有链表的前驱指针 prev 和 后继指针next。可以发现 linux 里链表结构体只定义了指针段的前驱指针 prev 和 后继指针 next,没有数据段。也就是说,在 linux 中使用 list_head 所定义的链表节点只有前趋后继这两个指针,只做为链表串联时的对接机构,不存储实际数据。为了方便理解,我们暂且把这种链表节点叫做“虚节点”。其实在实际使用过程中,链表的完整构建包括虚节点和宿主结构体两个部分。
2023-08-01 18:50:13
819
4
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人