```cpp
(global-set-key [f9] 'compile)
(global-set-key [f10] 'gud-gdb)
(global-set-ket (kbd "C-s") 'save-buffer)
(setq c-default-style "awk")
(setq def... ...
分类:
系统相关 时间:
2018-09-18 19:05:13
阅读次数:
173
当程序被停住了,你需要做的第一件事就是查看程序是在哪里停住的。当你的程序调用了一个函数,函数的地址,函数参数,函数内的局部变量都会被压入“栈”(Stack)中。你可以用GDB命令来查看当前的栈中的信息。 一、gdb 查看堆栈信息下面是一些查看函数调用栈信息的GDB命令:1、backtrace、bt ...
分类:
数据库 时间:
2018-09-18 13:49:00
阅读次数:
149
命 令 描 述 file 装入想要调试的可执行文件. kill 终止正在调试的程序. list 列出产生执行文件的源代码的一部分. next 执行一行源代码但不进入函数内部. step 执行一行源代码而且进入函数内部. run 执行当前被调试的程序 quit 终止 gdb watch 使你能监视一个 ...
分类:
数据库 时间:
2018-09-15 13:14:38
阅读次数:
171
TECH books linux GDB用法小结-resound-博客园 用GDB调试程序(四)-陈皓专栏【空谷幽兰,心如皓月】-博客频道-CSDN.NET ubuntu9.10pdf中文字符显示为空白的解决方法-whmbao的专栏-博客频道-CSDN.NET APIchangesinthe2.6k ...
分类:
其他好文 时间:
2018-09-14 21:32:20
阅读次数:
241
我们在开发iOS程序的时候常常会用到调试跟踪,如何正确的使用调试器来debug十分重要。xcode里有内置的Debugger,老版使用的是GDB,xcode自4.3之后默认使用的就是LLDB了。 GDB: UNIX及UNIX-like下的调试工具。 LLDB: LLDB是个开源的内置于XCode的具 ...
分类:
数据库 时间:
2018-09-14 11:08:58
阅读次数:
218
一、概述 GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具。没有统一的界面,所有的操作都是通过命令的方式进行提供.对于习惯了图形界面方式进行调试的猿猿来说可能不是很顺手,但是如果你在linux下面开发,却不得不适应,很多疑问和问题,都必须通过gdb去定位,用的久了,它除了没有像VC、B ...
分类:
数据库 时间:
2018-09-10 17:58:16
阅读次数:
189
简单来说, 就是先preload上tcmalloc, 日常用用没啥问题, 当感觉出现问题时, gdb attach 上, 然后执行 call HeapProfilerStart("xxx") , 过一段时间, 再执行call HeapProfilerStop, 产出相应的profile文件, 然后d ...
分类:
系统相关 时间:
2018-09-09 22:14:50
阅读次数:
472
最近一直在阅读ovs的源码,看到用户态代码的时候,需要对用户态的代码进行调试,一开始想直接使用linux中的GDB进行调试,但是ovs的工程太过于复杂,从网上找了些文章,发现vs2017能够支持linux c++程序的调试,捣鼓了一下午,遇到了一些坑,终于搭建好了开发环境。 最新版的vs 2017支 ...
分类:
编程语言 时间:
2018-09-06 20:34:32
阅读次数:
325
今天面试被问到一个问题,如何调试多进程的程序,我回答gdb attach [pid],之后又问如果程序中有些数据读取不对,但这种现象是偶然发生的,这时候要怎么操作,当时就懵了......,通过查找资料找到了答案,现在写篇博文记下来。 checkpoint 有些时候bug的出现是偶然发生的,如果有东西 ...
分类:
数据库 时间:
2018-09-06 02:43:26
阅读次数:
162
经常看到有人介绍一些IDE或者像gdb这样的调试器的很高级的调试功能,也听人说过有些牛人做工程的时候就用printf来调试,不用特殊的调试器。特别是在代码经过编译器一些比较复杂的优化后,会变得“难以辨认”,使用调试器也变得有些头疼。先举个简单的例子: 如果采用gcc(笔者的版本是4.7.3)编译,使 ...
分类:
编程语言 时间:
2018-09-05 12:53:17
阅读次数:
195