内核Kconfig详尽分析

本文详细分析了Linux内核Kconfig的作用和格式,Kconfig文件位于kernel源码的各个目录,负责提供配置选项。在驱动移植等场景中,通过修改Kconfig可以将设备驱动添加到内核配置。Kconfig的结构与menuconfig的菜单层级对应,menuconfig的配置选项与Kconfig的config和menuconfig关键字相关联。Kconfig还使用source指令包含子目录的配置,并通过if和endif处理依赖关系,确保所有配置项都被包含。bool和tristate定义了配置项的可选状态,depands关键字表示配置项的依赖条件。
摘要由CSDN通过智能技术生成

内核Kconfig详尽分析

Kconfig位于kernel源码内大部分的文件夹中,是一种特殊格式的文件,负责提供kernel各个功能的配置选项。
比如进行驱动移植等工作时,有时需要自己添加Kconfig中的一个配置项,从而将某个设备驱动添加到内核的配置项目中。
需要注意的是,Kconfig仅仅负责提供配置选项本身,而不提供各选项的值,关于kernel的配置和编译流程以及推荐阅读顺序请移步 [ ]。

  • 我们以driver/net/目录下的Kconfig为例,分析其内部格式,以及与menuconfig的关系
  • 首先打开menuconfig,进入 Device Drivers 菜单,里面的Network device support菜单对应的就是driver/net/目录下的Kconfig
    这里写图片描述
    由此可知,menuconfig里面菜单的层级关系,是与我们Kconfig所在的路径几乎相同的
  • 再来看看Kconfig的内部,从第五行开始:
    menuconfig NETDEVICES
        default y if UML
        depends on NET
        bool "Network device support"</
  • 0
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值