
Linux
air5005
希望能记录工作中学习到的所有知识,与大家分析、一起学习
展开
-
linux下使用libasan检测进程内存异常
软件环境CentOS Linux release 8.3.2011按照libasan包yum install libasan测试例子#include <stdio.h>#include <stdlib.h>#include <unistd.h> int my_print(){ int *a = malloc(10); printf("this is my_print, a:%p\n", a); return 0;} int原创 2021-05-19 16:43:49 · 3248 阅读 · 0 评论 -
解决git在win下无法clone linux内核源码的问题
解决git在win下无法clone linux内核源码的问题step 1 :初始化空库mkdir linux cd linuxgit init #初始化空库 step 2 : 拉取remote的all objects信息git remote add -f origin git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git拉取remote的all objects信息开启sparse clone,设置需要pull的目原创 2020-06-28 08:49:04 · 2618 阅读 · 2 评论 -
Linux 的启动流程
半年前,阮一峰写了《计算机是如何启动的?》,探讨BIOS和主引导记录的作用。那篇文章不涉及操作系统,只与主板的板载程序有关。今天,阮一峰接着往下写了 Linux 的启动流程,探讨操作系统接管硬件以后发生的事情,也就是操作系统的启动流程。这个部分比较有意思。因为在BIOS阶段,计算机的行为基本上被写死了,程序员可以做的事情并不多;但是,一旦进入操作系统,程序员几乎可以定制所有方面。所以,这个转载 2013-08-25 23:52:18 · 303 阅读 · 0 评论 -
i++和++i的区别
i++和++i的区别概念意思i++:先取值后自加++i:先自加后取值汇编代码生成分析在汇编层面看这两个语句的区别,可以知道具体的实现细节code 1 for i++#include void main(){ int index = 0; printf("index1:%d \r\n", index++); printf("index2:%d \r\n"...原创 2019-03-08 14:35:02 · 639 阅读 · 2 评论 -
linux 常用命令
记录在使用linux过程中常用的命令,方便查找centos装机建议安装软件yum install -y net-tools vim gcc gcc-c++yum install -y psmisc sysstatyum install -y numactl-devel*x86_64yum install -y bzip2sudo apt-get -y install libnuma-...原创 2019-04-13 10:36:43 · 891 阅读 · 0 评论 -
busybox之reboot命令流程分析
busybox初始化注册reboot处理信号busybox启动的时候,会注册reboot的处理信号init_main bb_signals(0 + (1 << SIGUSR1) /* halt */ + (1 << SIGTERM) /* reboot */ + (1 << SIGUSR2) /* poweroff */ , ha...原创 2019-09-06 12:43:25 · 2652 阅读 · 0 评论 -
gdb使用技巧总结
简介一般来说,GDB主要帮忙你完成下面四个方面的功能:启动你的程序,可以按照你的自定义的要求随心所欲的运行程序。可让被调试的程序在你所指定的调置的断点处停住。(断点可以是条件表达式)当程序被停住时,可以检查此时你的程序中所发生的事。动态的改变你程序的执行环境。技巧1 启动时不显示提示信息[ych@localhost ~]$ gdbGNU gdb (GDB) Red Hat En...原创 2019-09-06 16:27:35 · 433 阅读 · 0 评论