linux下打印用户态段错误信息的一种方法
2015-04-15 19:00
411 查看
引自:韦东山嵌入式视频第二期 “第31课第3节_应用调试之配置修改内核打印用户态段错误信息_P” 第6分钟起。
1.配置内核支持DEBUG_USER (勾选 Kernel hacking -> Verbose user fault messages[*] 即可)(视频第8:23)
2.设置bootargs,添加参数 user_debug = 0xFF 即可。 user_debug的每一位代表设置不同的模式,具体模式可参考文件:include/asm-arm/System.h下的UDBG_XXX。
如果执行有段错误的程序时会有详细错误信息打印出来。
你可以根据PC值和各个寄存器值来定位错误位置。
首先对问题应用程序进行反汇编: arm-linux-objdump -D FileName > AnotherFile
然后打开AnotherFile查看反汇编,定位PC值处的指令即可。
附:
查看系统调用函数的地址范围:查看文件system.map即可。
查看当前系统某个函数所在地址:查看/proc/kallsyms文件(文件较大,最好重定位到文件后再查看)
查看函数调用顺序: strace -o xxxFile ./xxx 然后查看xxxFile即可
1.配置内核支持DEBUG_USER (勾选 Kernel hacking -> Verbose user fault messages[*] 即可)(视频第8:23)
2.设置bootargs,添加参数 user_debug = 0xFF 即可。 user_debug的每一位代表设置不同的模式,具体模式可参考文件:include/asm-arm/System.h下的UDBG_XXX。
如果执行有段错误的程序时会有详细错误信息打印出来。
你可以根据PC值和各个寄存器值来定位错误位置。
首先对问题应用程序进行反汇编: arm-linux-objdump -D FileName > AnotherFile
然后打开AnotherFile查看反汇编,定位PC值处的指令即可。
附:
查看系统调用函数的地址范围:查看文件system.map即可。
查看当前系统某个函数所在地址:查看/proc/kallsyms文件(文件较大,最好重定位到文件后再查看)
查看函数调用顺序: strace -o xxxFile ./xxx 然后查看xxxFile即可
相关文章推荐
- 去掉linux内核打印信息的一种方法
- 去掉linux内核打印信息的一种方法
- 去掉linux内核打印信息的一种方法
- Linux下使用函数打印程序堆栈错误的方法
- 项目开发时,出现异常,但控制台没有打印错误信息处理方法
- Linux 程序开发打印 Debug 信息的使用技巧--C语言中几种输出调试信息的方法
- linux中打印错误信息
- 一种错误信息传递转义方法、装置和系统
- Linux 程序开发打印 Debug 信息的使用技巧--C语言中几种输出调试信息的方法
- linux C 打印错误信息和标准输入输出详细介绍
- Linux下安装Apache Http Server 的配置+一些错误信息的解决方法
- linux 打印错误的简单方法
- Linux下安装ArcSDE的一种典型错误和解决方法
- Linux下安装ArcSDE的一种典型错误和解决方法
- Linux下安装ArcSDE的一种典型错误和解决方法
- Linux中应用程序运行库错误问题的一种解决方法
- linux下关闭printk打印信息以及通过网络查看方法
- ASP.NET 项目收集详细错误信息的一种方法
- ASP.NET 项目收集详细错误信息的一种方法
- Windows 打印选项设置在 Linux 平台上的一种移植方法