内核的配置原理

来源:互联网 发布:cpu百分率 linux命令 编辑:程序博客网 时间:2024/05/02 05:03

以下内容源于朱友鹏《物联网大讲堂》课程的学习,如有侵权,请告知删除。


1、配置的关键是得到.config文件

(1).config文件是一个隐藏文件,需要ls -a来查看。

(2)前两步配置,是为了得到内容合适的.config文件。

(3).config文件是linux内核在编译过程中很重要的一个文件。

  • 作用类似与uboot中的include/configs/x210_sd.h,内核在编译过程中会读取.config中的配置项,并且用这些配置项去指导整个编译链接过程。

(4).config文件的格式类似于脚本文件


  • 其中内容为类似于:CONFIG_ARM=y 的一个个配置项。
  • 这些配置项类似于脚本文件中定义的一个一个变量,可以理解为定义了一个变量CONFIG_ARM,这个变量的值为y(yes)。

(5)从.config文件的规模可以看出linux内核的可配置项有两三千个。

  • 因此linux内核是高度可配置的,而且linux内核的所有配置项很难全部搞明白;
  • linux内核的配置项太多太繁杂超出了人的大脑能够记忆和处理的数量级;
  • 因此linux内核不像uboot那样直接手工配置,而是发明了一个图形化的配置工具menuconfig。
  • 只要人的大脑足够厉害,完全可以手工去修改.config文件,完成内核的配置。只要.config中内容是最终正确的,就不影响编译过程。

2、make xx_defconfig、make menuconfig相配合

(1)为了对.config文件中的两三千个配置项做逐一合适的配置,专门发明了两步结合的配置方式。

  • make xxx_defconfig完成大部分的配置项(这一步结束后99%的配置项就已经正确了);
  • make menuconfig完成细节的调整。

(2)make xx_defconfig工作实质

  • make x210ii_qt_defconfig其实相当于cp  arch/arm/configs/x210ii_qt_defconfig  .config;
  • arch/arm/configs目录下的xxx_defconfig从哪里来的?

    • 由他人手工配置好的、适合一定的开发板的.config文件;
    • 譬如说S5PV210这个SoC,针对这个SoC的开发板的最初配置由三星的工程师完成。

(3)make menuconfig工作实质

  • 读取第一步得到的.config,然后给出一个图形化的界面,让我们很容易地找到要修改的配置项,然后更改配置。

0 0
原创粉丝点击