VirtualBox虚拟机的内核版本:
[root@localhost ~]# uname -r
3.10.0-1127.el7.x86_64
此内核版本已集成KDB功能。

一、虚拟串口
创建1对串口:COM2和COM3。
搭建LINUX KDB调试环境-LMLPHP
二、将COM2分配给LINUX系统
搭建LINUX KDB调试环境-LMLPHP
三、配置LINUX串口
1. 查看系统是否支持串口
[root@localhost ~]# dmesg | grep tty
[    0.000000] console [ttyS0] enabled
[    0.931818] 00:02: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
2. 在配置文件 /etc/default/grub 中添加如下配置(红色部分)
[root@localhost ~]# cat /etc/default/grub 
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto spectre_v2=retpoline rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet"
GRUB_DISABLE_RECOVERY="true"
GRUB_CMDLINE_LINUX_DEFAULT="console=tty0 console=ttyS0,9600"
3. 更新grub配置文件
grub2-mkconfig -o /boot/grub2/grub.cfg
更新完成后,重启。
四、通过串口COM3连接LINUX系统
工具 xshell 或 CRT 等。连接成功后,什么都没有,不要奇怪。
可以通过向串口发送消息来测试:
echo helloworld >/dev/ttyS0
搭建LINUX KDB调试环境-LMLPHP
五、激活KDB功能
echo kdb,ttyS0,9600 >/sys/module/kgdboc/parameters/kgdboc
六、触发KDB
echo g > /proc/sysrq-trigger

04-24 22:54