当前位置: 技术问答>linux和unix
关于qemu调试linux内核的问题
来源: 互联网 发布时间:2016-10-29
本文导语: 我在网上找了很多资料,但是关于使用qemu调试内核的东西就没找到,只有以下一个网页: 步骤如下 1。启动Qemu,使用大S参数 qemu -kernel bzImage -hda linux-0.2.img -append "root=/dev/hda" -S,系统会跳出一个黑显示界面,无...
我在网上找了很多资料,但是关于使用qemu调试内核的东西就没找到,只有以下一个网页:
步骤如下
1。启动Qemu,使用大S参数 qemu -kernel bzImage -hda linux-0.2.img -append "root=/dev/hda" -S,系统会跳出一个黑显示界面,无任何内容。此时通过 ctrl+alt+1 与 ctrl+alt+2可以切换,一个是屏幕输出,一个是qemu控制台。
2。切换到qemu控制台,输入命令gdbserver 1234
3。同时打开gdb程序,通过qemu说明中提供的方法既可进行调试:
Then launch gdb on the 'vmlinux' executable:
> gdb vmlinux
In gdb, connect to QEMU:
(gdb) target remote localhost:1234你可以设置断点如break start_kernel,停在linux内核的第一个c程序之上。
但是我在使用的是很并没有显示In gdb, connect to QEMU: ,不知道是不是我的qemu没有连上gdb,请问应该如何使用qemu调试linux内核????
高分相送!!!!!!!!!!!!!!!!!
步骤如下
1。启动Qemu,使用大S参数 qemu -kernel bzImage -hda linux-0.2.img -append "root=/dev/hda" -S,系统会跳出一个黑显示界面,无任何内容。此时通过 ctrl+alt+1 与 ctrl+alt+2可以切换,一个是屏幕输出,一个是qemu控制台。
2。切换到qemu控制台,输入命令gdbserver 1234
3。同时打开gdb程序,通过qemu说明中提供的方法既可进行调试:
Then launch gdb on the 'vmlinux' executable:
> gdb vmlinux
In gdb, connect to QEMU:
(gdb) target remote localhost:1234你可以设置断点如break start_kernel,停在linux内核的第一个c程序之上。
但是我在使用的是很并没有显示In gdb, connect to QEMU: ,不知道是不是我的qemu没有连上gdb,请问应该如何使用qemu调试linux内核????
高分相送!!!!!!!!!!!!!!!!!
|
try -s -S
|