- 博客(10)
- 收藏
- 关注
原创 linux下异常coredump函数调用栈解析(二)
本文介绍了Linux下软件异常复位的定位方法,主要围绕core文件解析技术展开。文章详细讲解了gdb命令的使用,包括bt命令查看调用栈、i r命令分析寄存器值、以及disass命令反汇编指令。通过实例演示,展示了如何通过寄存器分析和汇编指令追溯空指针访问等常见问题。这些方法可以帮助开发者捕捉异常第一现场,快速定位软件复位根因,适用于复杂程序的调试场景。
2025-07-20 18:07:20
287
原创 linux下异常coredump函数调用栈解析(一)
linux下软件开发中,有个重要的问题就是如何界定当前软件异常复位的根因。由于是异常复位,此时如果不依赖于问题复现,捕捉第一现场,那就只能通过一些corddump信息确定当前发生异常的调用栈,进而界定问题根因。
2025-05-05 23:20:23
264
原创 二进制文件分析之Linux下符号表裁剪对可执行文件影响(三)
变量:存储变量的数据类型、作用域等信息。函数:存储函数的参数类型、返回值等信息。其他符号:如常量、类型定义等。该信息在.o文件中被划分到主要两个section内,静态符号表、动态符号表。
2025-01-06 00:07:24
1162
原创 二进制文件分析之Linux下so文件编译策略&对可执行文件影响(二)
so文件全称为共享对象文件(Shared Object file),是一种。与静态链接库(.a)不同的是,so文件在程序运行时以动态链接的方式与其他程序或库进行连接(生成可执行文件较小)。
2024-12-15 02:11:24
475
原创 二进制文件分析之Linux下字符串优化对可执行文件影响(一)
作为一名软件开发,如何在开发迭代过程中减少软件二进制大小,进而降低我们所依赖的硬件成本是我们应该仔细考虑的。
2024-03-24 22:08:16
317
原创 jffs2文件系统浅析----第二章从文件创建到flash固化存储
在第一章中我们讲述了jffs2文件系统如何通过文件ino信息找到flash中对应文件的数据实体,本章将与各位探讨下如何将文件固化到flash中存储。
2024-03-09 20:02:08
449
1
原创 jffs2文件系统浅析----第一章 认识linux文件系统与flash之间的交互流程
总所周知,对于linux系统来说,上层采用VFS对所有文件系统的操作进行抽象,屏蔽了底层不同文件系统之间的实现差异。本文主要针对常用的闪存文件系统jffs2,与各位一起探讨下它的实现原理。
2024-02-21 00:26:03
1480
1
原创 jffs2文件系统浅析----第零章 认识linux文件系统架构
什么是文件系统?按照维基百科定义:即在存储设备上组织文件的方法。操作系统中负责管理和存储文件信息的软件机构称为文件管理系统,简称文件系统。简单来说,文件系统可以理解成一种将flash(磁盘)抽象成文件夹,供上层用户管理和使用的机制。
2023-10-05 14:31:32
153
原创 Linux内核内存与硬件交互浅析
我们知道CPU有转移数据、计算、控制程序转移等很多功能,系统运作的核心就是CPU,CPU无时不刻的在处理着大量的事务,但有些事情却没有那么重要,比方说数据的复制和存储数据,如果我们把这部分的CPU资源拿出来,让CPU去处理其他的复杂计算事务,是不是能够更好的利用CPU的资源呢?当我们向系统注册一个驱动时,便会向驱动的管理链表插入我们的新驱动, 同样当我们向系统注册一个设备时,便会向设备的管理链表插入我们的新设备。每次有新驱动driver添加时,bus就会去匹配合适的设备,进而实现驱动和设备间的解耦。
2023-04-06 00:59:15
1461
1
原创 Gcc制作动态符号导出表(动态库)
摘要:简单介绍下在Linux下动态库(.so)中,通过GCC的C++ visibility属性可以控制共享文件导出符号
2023-02-13 16:37:16
1467
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人