Vscode qemu GDB远程调试linux内核

本文介绍了如何通过QEMU在服务器端启动Linux内核,并使用VSCode作为客户端进行远程调试。配置包括QEMU的启动参数,如-S-s选项,以及VSCode的launch.json文件设置,针对x86和ARM架构的不同配置。通过这种方式,开发者可以在VSCode中便捷地调试Linux内核。
摘要由CSDN通过智能技术生成

一、qemu(server端)启动Linux内核,带上-S -s选项

qemu-system-x86_64 -m 1024\
    -nographic $SMP -kernel arch/x86/boot/bzImage \
    -append "noinintrd console=ttyS0 crashkernel=256M root=/dev/vda             
    rootfstype=ext4 rw loglevel=8" \
    -drive if=none,file=rootfs_debian_x86_64.ext4,id=hd0 \
    -device virtio-blk-pci,drive=hd0 \
    -netdev user,id=mynet\
    -device virtio-net-pci,netdev=mynet\
    --fsdev local,id=kmod_dev,path=./kmodules,security_model=none \
    -device virtio-9p-pci,fsdev=kmod_dev,mount_tag=kmod_mount\
    -S -s

二、vscode端(client端)的json文件配置(qemu运行x86)

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "kernel-debug",
            "type": "cppdbg",
            "request": "launch",
            "miDebuggerServerAddress": "127.0.0.1:1234",
            "program": "${workspaceFolder}/vmlinux",
            "args": [],
            "stopAtEntry": true,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": false,
            "logging": {
                "engineLogging": false
            },
            "MIMode": "gdb",
        }
    ]
}

 三、vscode端(client端)的json文件配置(qemu运行arm)

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "kernel-debug",
            "type": "cppdbg",
            "request": "launch",
            "miDebuggerServerAddress": "127.0.0.1:1234",
            "program": "${workspaceFolder}/vmlinux",
            "args": [],
            "stopAtEntry": true,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": false,
            "logging": {
                "engineLogging": false
            },
            "MIMode": "gdb",
            "miDebuggerPath": "/opt/gcc-arm-none-eabi-10.3-2021.07/bin/arm-none-eabi-gdb"
        }
    ]
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

denglin12315

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值