gdb调试linux内核

一、编译内核

Debugging kernel and modules via gdb — The Linux Kernel documentation

1.配置内核

Kernel hacking --->

        Compile-time checks and compiler options  --->

                [*] Compile the kernel with debug info 

                [*]   Provide GDB scripts for kernel debugging 

        [*] Kernel debugging 

配置完重新编译内核


​​​​​2.配置.gdbinit文件

向~/.gdbinit添加下面一行:
add-auto-load-safe-path /path/to/linux-build

/path/to/linux-build为文件vmlinux-gdb.py的路径

二、启动模拟器

qemu-system-arm -M orangepi-pc -nic user -kernel zImage -dtb sun8i-h3-orangepi-pc.dtb -nographic -s -S -append "nokaslr root=/dev/mmcblk0 rw console=ttyS0,115200" -sd ubuntu.img

三、启动gdb

$ cd linux-orangepi-orange-pi-5.4

$ arm-none-linux-gnueabihf-gdb vmlinux

(gdb) target remote :1234

(gdb) break start_kernel

(gdb) c

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值