前言
之前写了一篇关于使用 Clion 来阅读linux源码的文章《使用Clion 阅读/修改/注释 Linux 内核源码》,通过使用make -j12
转化为使用make -j12 vmlinux bzImage
之后,大大的提高了编译的速度,以及很大的降低了对CLion占用内存的开销,不会再出现卡顿,今天来配置Clion的Remote Debug功能以可以对Linux kernel进行单步调试。
下面过程跳过了准备linux内核、qemu等等工具的准备,仅仅介绍最核心的重要的配置。
试验环境:
- Linux-kernel:5.14.2 -
- QEMU:6.1.0
- HOST:Ubuntu 20.04.3 LTS
- Clion:2020.3.4
- GDB:GNU gdb (Ubuntu 9.2-0ubuntu1~20.04) 9.2
一、修改.config文件的配置
- 关闭编译选项
CONFIG_RANDOMIZE_BASE
,这是取消内核内存地址随机化(KASLR),此配置的信息如下(可通过“/",搜索此信息):
│ Symbol: RANDOMIZE_BASE [=n]
│ Type : bool
│ Defined at arch/x86/Kconfig:2095
│ Prompt: Randomize the address of the kernel image (KASLR)