(gdb) b start_kernel#在入口函数start_kernel上下断点(gdb) c (gdb) layout src#如果是安装了gef,就不要layout了,乱码~~... Linux 的内核入口函数是位于 init/main.c 中的 start_kernel ,在这里完成各种内核数据结构的初始化。但是这已经是 bootstrap 很后面的过程了。真正的第一行代码在 arch/x86/boot/...
(gdb) c (gdb) layout src #如果是安装了gef,就不要layout了,乱码~~ ... Linux 的内核入口函数是位于 init/main.c 中的 start_kernel ,在这里完成各种内核数据结构的初始化。但是这已经是 bootstrap 很后面的过程了。真正的第一行代码在 arch/x86/boot/header.S。 5调试可加载驱动模块 为了调试内核模块,...
启动GDB并读取vmlinux中的符号信息 $ gdb ./linux-4.9.304/vmlinux# 如果不是x86,用gdb-multiarch...(gdb)target remote localhost:1234(gdb)b start_kernel#在入口函数start_kernel上下断点(gdb)c(gdb)layout src#如果是安装了gef,就不要layout了,乱码~~... 1. 2. 3. 4. 5. 6. 7. Linux 的内核...
地址https://github.com/hugsy/gef # via the install script #下载 `gef.sh` 并执行 wget -q -O- https://github.com/hugsy/gef/raw/master/gef.sh | sh # manually # 下载 `gef.py`, 并将其 `source` 写入 `.gdbinit` wget -q -O ~/.gdbinit-gef.py https://github.com/hugsy/gef/r热门...