Qemu 调试 Linux 内核

本文介绍了如何开启Linux内核的调试编译选项,并通过QEMU模拟器进行调试。步骤包括修改qemu启动脚本添加调试参数,安装gdb工具,然后使用gdb远程连接到QEMU进行内核调试。详细阐述了从启动QEMU到设置断点的全过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 开启 Linux 内核调试编译选项

make menuconfig
在这里插入图片描述

2. 设置 qemu 启动脚本参数

增加 -S -s 命令:

sudo qemu-system-x86_64 \
    -S -s       \
    -m 1024M    \
    -kernel ../linux/arch/x86/boot/bzImage      \
    -nographic  \
    -append "root=/dev/ram0 console=ttyS0 init=/linuxrc"        \
    -initrd ../make_rootfs/rootfs.img.gz

3. 下载 gdb 调试工具

sudo apt-get install gdb gdb-multiarch

4. 进行调试

先启动 qemu 脚本

sudo sh start_x86_kernel.sh

再另一个窗口中,输入

gdb-multiarch

在这里插入图片描述
然后再输入下面的命令:

add-auto-load-safe-path ~/linux/

target remote localhost:1234

file vmlinux

在这里插入图片描述
在这里插入图片描述

下面就可以打断点进行调试了,谢谢浏览!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值