![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux
光谷中心城打工人
资深菜鸡,万金油程序员,好读书,不求甚解。
写文章目的一半当作给自己的记录,一半给有缘的看。
想到哪,写到哪。
展开
-
巧用clang 的sanitize检测内存越界
巧用clang sanitize 定位内存泄漏不适用任何特殊编译选项编译这段代码:运行后出现下面的结果:使用gdb 看堆栈:可以看到出错的位置在itree_node_id_clone 中realloc 失败了。但是检查代码,这里的代码并没有问题,使用malloc,calloc 替换后情况类似。于是我们借助clang的sanitizer 来定位问题,使用如下编译选项:后重新编译运行,结果如下:观察结果,发现idps_itree.c:53 这里溢出了,...原创 2022-06-22 10:23:58 · 533 阅读 · 0 评论 -
C语言中使用&& 取标号的一个实验
C语言中&& 的另一种用法:取lable ,标号。 配合goto 一起使用,某些场景下会有意想不到的效果#include <stdio.h>#include <stdlib.h>int main(int argc,char * argv[]){ static const void * gt[3] = {&&_goto1,&&_goto2,&&_goto3}; goto *gt[2];_goto1.原创 2021-04-19 11:39:03 · 200 阅读 · 0 评论 -
arm 上 Box86对比QEMU 的一点感受
实测BOX64 因为使用了neno在浮点数方面 比QEMU 快非常多。但是在普通整数指令方面,QEMU占优势,比BOX64快6倍左右。以上言论只是个人实测 感受,避免大家入坑。 arm-qemu-usermod box86 md5 999999 0m6.225s 0m6.145s 0m6.126s 0m37.809s 0m38.179s 0m38.095s pi 10000 17m19.986s 17...原创 2021-04-14 14:48:32 · 3219 阅读 · 8 评论 -
巧用static变量初始化结构体!
本技巧属于编程中的 奇技淫巧。 我们封装接口时经常会涉及到类似以下的代码,它的init函数对接口涉及到的结构体进行初始化 ,通常是清0, 大多数情况下我们会用memset操作结构体 ,如下。typedef struct tag_interface{ int a; int b; char sztest[10];} interface_t, * inte...原创 2020-04-28 17:53:42 · 3744 阅读 · 0 评论 -
linux下使用了-L 编译带动态库的可执行程序,可执行程序执行没法找到第三方动态库的问题
适用情形: 第三方动态库(通常是你自己写的)跟可执行程序同一目录,编译链接通过,执行显示无法找到库。解决办法: 使用 -Wl,--rpath=你的库路径 。重新link可执行程序。...原创 2020-04-16 09:26:22 · 313 阅读 · 0 评论 -
详解Linux内核之双向循环链表 By邪恶八进制
[转载]详解Linux内核之双向循环链表详解Linux内核之双向循环链表<br /><br />信息来源:邪恶八进制信息安全团队(www.eviloctal.com)<br /><br />摘要: 本文详解了内核中面向对象的list结构的原理,以及如何以list为内嵌对象来构造自己的链表结构,如何从内嵌list对象获得自定义的对象指针;探讨了各种宏或者函数的详细使用方法及怎样以通用list结构来操作自定义对象。<br /><br />关键字: 双向循环链表,list,list_entry,ty转载 2010-09-10 09:26:00 · 627 阅读 · 1 评论 -
深入分析 Linux 内核链表
2004 年 8 月 01 日本文详细分析了 2.6.x 内核中链表结构的实现,并通过实例对每个链表操作接口进行了详尽的讲解。一、 链表数据结构简介链表是一种常用的组织有序数据的数据结构,它通过指针将一系列数据节点连接成一条数据链,是线性表的一种重要实现方式。相对于数组,链表具有更好的动态性,建立链表时无需预先知道数据总量,可以随机分配空间,可以高效地在链表中的任意位置实时插入或删除数据。链表的开销主要是访问的顺序性和组织链的空间损失。通常链表数据结构至少应包含两个域:数据域和指针域,数据域用于存储数据,指转载 2010-09-09 13:22:00 · 315 阅读 · 0 评论 -
TrieTree(字典树,前缀树) 的实现 (增删改查)
字典树TrieTree 的增删改查原创 2016-08-24 11:39:44 · 4934 阅读 · 0 评论