
C
xiaoyulovly
这个作者很懒,什么都没留下…
展开
-
C语言 特殊功能宏 offsetof container_of member_size array_len
1、计算结构体成员偏移量#define offsetof(type, member) ((unsigned long) &((type*)0)->member)type-- 结构体类型,member-- s类型结构体成员变量计算结果:type结构中偏移到member成员的偏移量(字节)2、根据结构成员地址找到结构首地址#define container_of(...原创 2019-07-19 14:36:27 · 284 阅读 · 0 评论 -
Linux C语言工具
Cflow:静态分析C语言生成函数调用关系的利器https://blog.youkuaiyun.com/breaksoftware/article/details/75576878nm:输出目标文件的符号表addr2line:根据PC地址,在目标文件中查找对应的源代码行号ldd: 打印可执行文件依赖的动态库...原创 2019-06-02 11:39:33 · 210 阅读 · 0 评论 -
Linux tracepoint
1、将do 和 while 分为两部分,分配定义在START 和 END宏中2、tracepoint生效时,如果是callback类型的tracepoint,则可执行callback,同时跳过START与END之间的流程。3、tracepoint注册、tracepoint插入(设置START、END点)在代码过程中完成。(tracepoint注册信息需单独管理)4、tracepoint...原创 2019-08-22 10:17:59 · 357 阅读 · 0 评论 -
glibc 内存管理
mallocchunk:该 Allocated chunk 的起始地址mem:该 Allocated chunk 中用户可用区域的起始地址(= chunk + sizeof(malloc_chunk))next_chunk:下一个 chunk(无论类型)的起始地址prev_size:若上一个 chunk 可用,则此字段赋值为上一个 chunk 的大小;否则,此...原创 2019-09-09 11:43:38 · 326 阅读 · 0 评论