浅墨浓香

想要天亮进城,就得天黑赶路。

导航

2017年7月11日

摘要: 1. DTLib中双向链表的设计思路 (1)数据结点之间在逻辑上构成双向循环,这有别于Linux内核链表的实现。 (2)头结点仅用于结点的定位,而Linux内核链表是将头结点作为循环的一部分。 2. 实现思路 (1)通过模板定义DualCircleList类,继承自DualLinkList类 (2) 阅读全文

posted @ 2017-07-11 20:44 浅墨浓香 阅读(434) 评论(0) 推荐(0)

摘要: 1. Linux内核链表的位置及依赖 (1)位置:{linux-2.6.39}\\include\linux\list.h (2)依赖 ①#include<linux\types.h> ②#include<linux\stddef.h> ③#include<linux\poison.h> ④#inc 阅读全文

posted @ 2017-07-11 17:54 浅墨浓香 阅读(270) 评论(0) 推荐(0)

摘要: 1. Linux内核中常用的两个宏定义 (1)offsetof宏:用于计算TYPE结构体中MEMBER成员的偏移位置 (2)container_of宏:根据成员变量指针反推结构体对象的起始地址 2. 原理剖析 (1)巧用0地址 ①编译器清楚的知道结构体成员变量的偏移地址 ②通过结构体变量首地址与偏移 阅读全文

posted @ 2017-07-11 09:29 浅墨浓香 阅读(422) 评论(0) 推荐(2)