码迷,mamicode.com
首页 > 移动开发 > 详细

Android深度探索第十章

时间:2016-07-03 19:00:01      阅读:158      评论:0      收藏:0      [点我收藏+]

标签:

Android模拟器只能通过端口映射的方式使用kgdbserver调试程序。但开发板除了可以通过ip连接到kgdbserver外还可以通过串口进行连接。开发板同样也带了kgdbserver程序,可直接运行。

大多数开发人员认为kgdb是最好的内核调试工具。Kgdb除了提供类似的printk函数的日志输出功能,还允许开发人员直接在pc上通过gdb链接目标设备。Kgdb包含了两部分:kgdb内核和一套连接接口。这些接口目前支持串口tty设备连接和以太网连接。其中串口连接需要通过内核参数kgdboc指定要连接的串口tty设备;以太网连接通过内核参数kgdboc指定ip和端口号。Kgdb支持多种处理器架构。由于这些处理器架构差异很大,所以kgdb单独为每个支持的处理器架构实现了kgdb内核,如arm架构的kgdb内核源代码文件是arch/armkernel/kgdb.c。

linux内核调试一直被很多人认为是非常困难的。大多数人宁愿直接使用printk函数输出调试信息,也不愿意使用各种命令(gdb、gdbserver、kgdb等)进行调试。因为这样做并不一定能换来更多的好处。当发现某段代码的bug太多或很难printk函数输出信息找到,可以考虑使用kgdb用step by step的方式定位bug。

Android深度探索第十章

标签:

原文地址:http://www.cnblogs.com/purelair/p/5638389.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!