ZeroOS—附录—gdb联合qemu调试内核

gdb基本使用

仔细想了想,虽有雄心壮志,但我还是决定不重复造轮子了(主要是忘得差不多了),还是分享大佬文章先:文章传送门

gdb联合qemu的基本使用

在掌握了gdb基本调试技巧后,接着我们要联合qemu调试内核,虽然专门写了这篇文章介绍联合调试,其实是非常简单:

sudo qemu-system-i386 $(QEMU_OPTION) -S -s --kernel kernel &
gdb -x gdbinit

其中的QEMU_OPTION是运行qemu的参数,gdbinit是让gdb提前执行的脚本,主要功能是方便我们打断点,其中联合qemu调试的关键如下:

file kernel
target remote :1234

是不是简单的令人发指,这也是我选择qemu的原因,在这两个脚本下就可以写上我们自己的调试命令了。

好了,有了gdb和qemu,妈妈再也不用担心我找不到BUG了。

未完待续

每个BUG作者都有自己的一份独特的调试技巧,这个附录会在以后编写ZOS的过程中逐渐添加内容,每当遇到典型的BUG时,比如空指针,死锁,我就会将完整的调试过程在这个小节进行叙述,用自己的拙见为大家抛砖引玉。同时欢迎大家将自己的调试技巧分享出来。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值