![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux
文章平均质量分 68
J3山西王-劫18
我很懒,还没有添加任何简介
展开
-
系统的启动流程
init进程负责读取系统初始化配置文件(如/etc/inittab、/etc/systemd/system/下的服务单元文件等),并根据配置启动其他系统进程和服务。BIOS会读取硬盘的第一个扇区(MBR,Master Boot Record,主引导记录),找到引导加载程序(如GRUB)的位置。找到可启动设备后,BIOS会读取该设备上的MBR(主引导记录),MBR通常位于磁盘的第一个扇区(512字节)。内核初始化完成后,会启动init进程(PID为1),这是Linux系统中第一个由内核启动的用户空间进程。原创 2024-06-20 13:35:50 · 267 阅读 · 0 评论 -
GDB调试内存分析
(3)u表示从的那个前地址往后请求的字节数,如果不指定的话,GDB默认是4个bytes。当我们指定了字节长度后,GDB会从指定内存的内存地址开始,读写指定字节,并把其当作一个值取出来。在处理问题时需要打印一些变量的信息,进行分析,而有些时候遇到的是地址0x7fff5313f65c,这个时候想要查看这个地址中的数据是什么?又不知道要怎么操作。(2)f表示显示的格式。在GDB中使用examine(简写x)来查看内存地址中的值。(1)n是一个正整数,表示显示内存的长度,也就是说从当前地址向后显示几个地址的内容。原创 2024-03-20 11:02:01 · 381 阅读 · 1 评论 -
Linux常用命令
lsof命令用于查看你进程开打的文件,打开文件的进程,进程打开的端口(TCP、UDP)。Linux 常用的压缩与解压缩命令有:tar、gzip、gunzip、bzip2、bunzip2、compress 、uncompress、 zip、 unzip、rar、unrar 等。Linux/Unix 的文件调用权限分为三级 : 文件所有者(Owner)、用户组(Group)、其它用户(Other Users)。只有文件所有者和超级用户可以修改文件或目录的权限。是不加密的,scp 是 rcp 的加强版。原创 2024-03-08 13:39:25 · 1767 阅读 · 1 评论 -
GDB断点调试命令
这里可以是一个函数,这样就会返回函数的返回值,如果函数的返回类型是void那么就不会打印函数的返回值,但是实践发现,函数运行过程中的打印语句韩式没有被打印出来。jump #跳转执行程序到第5行,另外跳转不会改变当前的堆栈内容,所以跳到别的函数中就会有奇怪的现象,因此最好跳转在一个函数内部进行,跳转的参数可以是程序代码行的地址,函数名等等类似。2.查看可以设置的程序语言 (gdb) set language 这里, 使用没有参数的set language可以查看gdb中可以设置的程序语言。原创 2024-03-07 16:35:26 · 2183 阅读 · 1 评论 -
valgrind 内存泄漏检测工具
架构是模块化的,所以可以在不破坏现有的结构的基础上很容易的创建出新的工具来。例如我们原来有一个程序sec_infod,这是一个用gcc –g参数编译的程序,运行它需要:#./aa.out。如果您的程序是会正常退出的程序,那么当程序退出的时候valgrind自然会输出内存泄漏的信息。2、如果还有泄漏,但是分析不出明确原因,长时间跑一下(比如半天,一天等),看看是否有内存持续增加的现象(原因:valgrind有时候有误报)名称:valgrind是一个调试和剖析的程序工具集。双击打开,如提示需要安装文件则安装。原创 2024-03-04 11:29:34 · 314 阅读 · 0 评论