为什么使用Vmware而不是QEMU 这种模拟器调试呢,我觉得QEMU这种模拟器对于Vmware来说,有些不方便的是
qemu 命令行太复杂:) !!!
1 Linux Vmware 串口双机调试 2 ======================================== 3 1.注意,当配置好Vmrare串口后,在各自的串口对应的设备是 4 /dev/ttyS1,这是最关键的,然后相互cat,echo 看是否能够 5 收到消息。 6 2.添加grub 启动项目,设置内核调试参数. 7 添加额外的内核参数: 8 kgdboc=ttyS1,115200 kgdbwait nokaslr 9 10 menuentry ‘Ubuntu Kernel Debug‘ --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option ‘gnulinux-simple-07472ed4-59a9-4ce4-9fdd-05a662658ac1‘ { 11 recordfail 12 load_video 13 gfxmode $linux_gfx_mode 14 insmod gzio 15 if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi 16 insmod part_msdos 17 insmod ext2 18 set root=‘hd0,msdos1‘ 19 if [ x$feature_platform_search_hint = xy ]; then 20 search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 07472ed4-59a9-4ce4-9fdd-05a662658ac1 21 else 22 search --no-floppy --fs-uuid --set=root 07472ed4-59a9-4ce4-9fdd-05a662658ac1 23 fi 24 linux /boot/vmlinuz-5.3.18 root=UUID=07472ed4-59a9-4ce4-9fdd-05a662658ac1 ro quiet splash $vt_handoff kgdboc=kms,kbd,ttyS1,115200 kgdbwait nokaslr 25 initrd /boot/initrd.img-5.3.18 26 } 27 3. 启动gdb 28 gdb ./vmlinux 29 dir /home/maojun/kernel/linux-source-5.3.0 30 target remote /dev/ttyS1 31 hb start_kernel 32 33 停止被调试的机器进入调试器: 34 echo g > /proc/sysrq-trigger
echo c > /proc/sysrq-trigger