嵌入式linux调试技术
Android模擬器只能通過端口映射的方式使用kgdbserver調(diào)試程序。但開發(fā)板除了可以通過ip連接到kgdbserver外還可以通過串口進(jìn)行連接。開發(fā)板同樣也帶了kgdbserver程序,可直接運行。
大多數(shù)開發(fā)人員認(rèn)為kgdb是最好的內(nèi)核調(diào)試工具。Kgdb除了提供類似的printk函數(shù)的日志輸出功能,還允許開發(fā)人員直接在pc上通過gdb鏈接目標(biāo)設(shè)備。Kgdb包含了兩部分:kgdb內(nèi)核和一套連接接口。這些接口目前支持串口tty設(shè)備連接和以太網(wǎng)連接。其中串口連接需要通過內(nèi)核參數(shù)kgdboc指定要連接的串口tty設(shè)備;以太網(wǎng)連接通過內(nèi)核參數(shù)kgdboc指定ip和端口號。Kgdb支持多種處理器架構(gòu)。由于這些處理器架構(gòu)差異很大,所以kgdb單獨為每個支持的處理器架構(gòu)實現(xiàn)了kgdb內(nèi)核,如arm架構(gòu)的kgdb內(nèi)核源代碼文件是arch/armkernel/kgdb.c。
linux內(nèi)核調(diào)試一直被很多人認(rèn)為是非常困難的。大多數(shù)人寧愿直接使用printk函數(shù)輸出調(diào)試信息,也不愿意使用各種命令(gdb、gdbserver、kgdb等)進(jìn)行調(diào)試。因為這樣做并不一定能換來更多的好處。當(dāng)發(fā)現(xiàn)某段代碼的bug太多或很難printk函數(shù)輸出信息找到,可以考慮使用kgdb用step by step的方式定位bug。
轉(zhuǎn)載于:https://www.cnblogs.com/liyan521/p/5638385.html
總結(jié)
以上是生活随笔為你收集整理的嵌入式linux调试技术的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 第十章 Internet
- 下一篇: 偷学Office 2007之易用性改造