kernel编译与源码阅读配置

作为一个软件开发者都有一个想了解我们程序运行基础内核的想法,今天无意间又打开了kernel的页面,那就编一个学习下吧。

官网的下载速度比较慢,国内有很多的mirrors站点,这里我用的是网易的加速,下载的是5.6.15的版本。

编译

下载后解压缩,我本机是ubuntu 18.04,开始编译之前要配置下内核的编译参数,这里我们采用简单的界面配置方式,运行make menuconfig打开图形配置界面,按照自己需求配置内核并保存配置。接下来就可以执行make命令进行编译了,由于内核文件实在太多了,这里我们可以采用并行编译的方式,执行make -j8开启8个并行任务,这时你可以选择去喝杯咖啡了,或者开始我们的vscode源码阅读之旅。

vscode 配置

这里vscode需要安装c/c++插件,安装完插件需要配置下.vscode/c_cpp_properties.json文件,包含includePathcStandard,我的配置如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
{
"configurations": [
{
"name": "Linux",
"includePath": [
"${workspaceFolder}/arch/arm64/include/**",
"${workspaceFolder}/include/**",
"${workspaceFolder}/include/linux/**",
"${workspaceFolder}/arch/arm64/**",
"${workspaceFolder}/**"
],
"defines": [],
"compilerPath": "/usr/bin/gcc",
"cStandard": "c89",
"cppStandard": "c++17",
"intelliSenseMode": "clang-x64"
}
],
"version": 4
}

接下来就可以开启我们苦逼的源码阅读之旅了。