自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 Linux问题调试(4)--内存问题与tcmalloc

之前的文章介绍过Asan来定位内存泄漏问题,虽然已经被集成到各大编译器中,‌但它的使用可能受到特定环境或配置的限制。‌例如,‌在某些复杂的系统或应用程序中,‌ASan可能会因为与程序的交互复杂性而遇到挑战,‌导致难以准确诊断问题。‌Linux问题调试(2)--内存问题与asan工具。

2024-08-07 10:03:33 651

原创 Linux问题调试(3)--调试文件(core、map、Debug)的生成与调试工具(Addr2line、GDB)的使用

Linux平台生成的可执行文件,带有Debug或Release属性。Debug通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员对程序的调试。在Debug环境下,我们可以使用调试技巧,如观察监视、内存、反汇编等等。Release称为发布版本,它往往进行了各种优化,使程序在代码大小和运行速度上都是最优解,便于用户使用。map文件通常由链接器(Linker)生成,在构建过程中,链接器负责将各个编译单元(如.o或.obj文件)组合成一个可执行文件或库。

2024-07-28 21:49:04 678

原创 Linux问题调试(2)--内存问题与asan工具

asan算法的思想是:如果想防住Buffer Overflow泄漏,只需要在每块内存区域右端(或两端,能防overflow和underflow)加一块区域(RedZone),使RedZone的区域的影子内存(Shadow Memory)设置为不可写,如图1所示。3、运行时库run-time library:运行期间,对代码进行修改,主要是修改了malloc和free函数的实现方法,在heap上分配内存时,在应用数据前后创建毒区(poisoned redzones),用于检测heap类型的越界访问的错误。

2024-07-19 17:04:12 646

原创 Linux问题调试(1)--CPU问题与火焰图

在开发Linux项目的过程中,会时常出现CPU的高消耗而导致的一些异常问题,例如网络包的频繁收发引起系统阻塞,从而导致软狗超时问题等。本文总结了本人项目开发过程中使用的CPU性能调试方案。

2024-07-18 15:05:01 1110

原创 FreeRTOS学习笔记(1)--内存管理

为了提高内存申请/释放的效率,需要弄清楚rtos系统的内存分配机制,虽然项目可以通过调整线程栈大小和总体的内存分配来解决栈空间分配失败的问题,但依旧存在以下几个问题,搞不清楚这些问题,我们系统的中的问题就无法根本性解决。1、RTOS的栈内存的分配机制是怎样的?2、RTOS栈的内存碎片回收是怎样做到的?3、RTOS有没有有效的栈内存统计方案?

2024-07-15 16:22:06 612 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除