自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Linux 內(nèi)核終于可以 Debug 了!

系統(tǒng) Linux
無奈 Java 出身的我,本來對 c 就很不熟,跑起一個 c 代碼就很費勁了,更別說調(diào)試,而且還是調(diào)試這種和普通 c 項目不一樣的內(nèi)核代碼。

[[414193]]

今天終于成功 debug 了 Linux 內(nèi)核,允許我一驚一乍給大家分享下喜悅吧!

之前讀 Linux 的源碼,一直想著如果能 debug 就好了。

無奈 Java 出身的我,本來對 c 就很不熟,跑起一個 c 代碼就很費勁了,更別說調(diào)試,而且還是調(diào)試這種和普通 c 項目不一樣的內(nèi)核代碼。

僅僅是出于學習 Linux 內(nèi)核源碼的目的想要調(diào)試,所以不想花太多時間研究如何構(gòu)建這個調(diào)試環(huán)境,想著在網(wǎng)上找個教程,一次性部署好之后就一直用了,無奈一直沒找到能照著文檔就搭建成功的。

今天終于找到一個大佬的文檔,直接按上面說的就能操作成功,分享給大家,同時我自己也做個備份。

先照著這個文檔,使得可以用 gdb 進行調(diào)試:

  1. https://wenfh2020.com/2021/05/19/gdb-kernel-networking/ 

再按照這個文檔,用 vscode 進行更直觀地調(diào)試(當然也是 gdb 方式):

  1. https://wenfh2020.com/2021/06/23/vscode-gdb-debug-linux-kernel/ 

最終效果是。

虛擬機這邊用 qemu 啟動 Linux 5.0.1 內(nèi)核。

本機這邊用 vscode 的 ssh-remote 插件遠程連接虛擬機,然后用 gdb debug。

給大家放大點。

main.c 下的主方法。

看到斷點進來相當激動了!這個文檔我可得保存好,虛擬機鏡像也不敢動了,哈哈,以后就可以開開心心 debug Linux 內(nèi)核啦。

不過中間也踩了好多坑,原本我想著靈活一點,用自己的 ubuntu 版本,用自己想調(diào)試的 Linux 內(nèi)核版本,無奈都失敗了,中間有各種奇奇怪怪的問題...

我就放棄了,乖乖先按照人家的文檔跑起來再說吧~

不知道文檔里是不是有多余操作,反正各種騷操作我是看不懂,還要改 gdb 的源碼。

 

之后我看看能不能把低版本的 Linux 也搞通,如果大家有更方便地調(diào)試方法,可以教教我,這塊真是空白。

本文轉(zhuǎn)載自微信公眾號「低并發(fā)編程」,可以通過以下二維碼關(guān)注。轉(zhuǎn)載本文請聯(lián)系低并發(fā)編程公眾號。

 

責任編輯:武曉燕 來源: 低并發(fā)編程
相關(guān)推薦

2024-07-16 16:53:09

2016-11-04 12:04:17

Ubuntu內(nèi)核服務

2021-08-10 09:02:37

NumPy視圖內(nèi)存

2022-05-14 17:01:21

開源LinuxNVIDIA

2017-03-19 16:57:59

LinuxAMD處理器

2021-02-25 09:50:01

LinuxWindows內(nèi)核

2013-10-28 09:40:51

Android內(nèi)核

2016-07-19 10:06:59

Linux桌面Windows

2020-04-09 11:50:33

LinuxQQLinux QQ

2021-09-29 09:50:41

Linux內(nèi)核日志

2021-09-08 05:46:51

Linux內(nèi)核日志

2009-03-10 17:15:07

Linux兼容內(nèi)核Win程序

2020-09-14 14:30:31

WindowsLinux命令

2018-02-25 10:49:49

GboardiOS平臺Android

2019-07-24 09:59:21

iPhoneiOS 12.4數(shù)據(jù)遷移

2010-10-25 10:52:34

2010-05-20 09:09:07

Linux內(nèi)核

2023-10-31 07:40:15

EslintJSHint

2024-07-08 00:00:07

2018-05-04 14:11:34

SwiftPython開發(fā)
點贊
收藏

51CTO技術(shù)棧公眾號