linux应用调试技术之GDB和GDBServer
摘要:1、调试原理 GDB调试是应用程序在开发板上运行,然后在PC机上对开发板上得应用程序进行调试,PC机运行GDB,开发板上运行GDBServer。在应用程序调试的时候,pc机上的gdb向开发板上的GDBServer发出命令,而开发板上的gdbserver就会向应用程序发出信号,使应用程序停下来或者完成
阅读全文
GDB调试命令
摘要:1、查看源码: list [函数名][行数] 2、暂停程序 (1)设置断点: a、break + [源代码行号][源代码函数名][内存地址] b、break ... if condition ...可以是上述任一参数,condition是条件。例如在循环体中可以设置break ... if i =
阅读全文
linux内核调试技术之修改内核定时器来定位系统僵死问题
摘要:1.简介 在内核调试中,会经常出现内核僵死的问题,也就是发生死循环,内核不能产生调度。导致内核失去响应。这种情况下我们可以采用修改系统内核中的系统时钟的中断来定位发生僵死的进程和函数名称。因为内核系统系统时钟采用的是硬件中断的形式存在,所以,软件发生僵死的时候,系统时钟照样会发生中断。 1.1、我们
阅读全文
linux内核调试技术之自构proc
摘要:1、简介 在上一篇中,在内核中使用printk可以讲调试信息保存在log_buf缓冲区中,可以使用命令 #cat /proc/kmsg 将缓冲区的数区的数数据打印出来,今天我们就来研究一下,自己写kmsg这个文件,我们取名叫做 mymsg。 2、查看内核中 /proc/kmsg怎么写的! 在Proc
阅读全文
linux内核调试技术之printk
摘要:原创博客:欢迎转载,转载请注明出处 http://www.cnblogs.com/veryStrong/p/6218383.html 1、简介(基于s3c2440 linux) 在内核调试技术之中,最简单的就是printk的使用了,它的用法和C语言应用程序中的printf使用类似,在应用程序中依靠的
阅读全文