C/C++程序内存问题分析
今年遇到过几个内存问题:
- 内存泄漏
- san
- tcmalloc stat
- 内存未达到cgroup上限分配失败
max_map_count太多,无法建立更多vma映射了
yanyg@t430:~$ cat /proc/sys/vm/max_map_count 65530
一般是调用mprotect/mmap使用了太多vma区段导致,调大这个参数既可;
- 踩坏导致core
1 踩坏core分析
string是定义在栈上,进程core在了~basic_string上。gdb看到this指针不对。同时用 gdb看栈地址上的string符合预期。分析寄存器,看到r13设置后没有修改,~basic_string 直接使用的r13做为this指针。