首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux-Kconfig总结与分析

使用Kconfig时,需要注意的地方 1.在Kconfig中定义的配置宏,前缀都没有"CONFIG_",只有编译内核时,自动生成autoconf.h才会出现前缀. 2.如果XX_defconfig板卡配置文件中定义新的宏...=y时,而在Kconfig并没有声明它,则内核编译出来的autoconf.h里也不会定义它的. 3.如果XX_defconfig板卡配置文件中没有设置CONFIG_MODULES=y,则编译make modules...时将会失败,而make menuconfig时, Kconfig中的tristate参数也会被读写为bool参数(也就是不能设置m) CONFIG宏变量参数 bool: 表示该CONFIG宏只能选择...-探索宏变量参数 接下来我们来试试如何给不同宏设置不同参数,以MY_SYMBOL1~ MY_SYMBOL5为例 设置MY_SYMBOL3~ MY_SYMBOL5依赖于MY_SYMBOL2 修改内核顶层Kconfig...其中上面的CONFIG_MY_SYMBOL2_MODULE宏是因为我们在Kconfig设置它为default m,所以CONFIG_MY_SYMBOL2_MODULE是个模块宏.

3K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Kconfig与Makefile

    毫不夸张地说,Kconfig和Makefile是我们浏览内核代码时最为依仗的两个文件。基本上,Linux内核中每一个目录下边都会有一个Kconfig文件和一个Makefile文件。...对于一个希望能够在Linux内核的汪洋代码里看到一丝曙光的人来说,将它们放在怎么重要的地位都不过分。...Kconfig和Makefile就是Linux Kernel迷宫里的地图。地图引导我们去认识一个城市,而Kconfig和Makefile则可以让我们了解一个Kernel目录下面的结构。...这时就有必要先去阅读Kconfig和Makefile文件。 对于Kconfig文件,我们可以看到下面的选项。...Kconfig和Makefile很好的帮助我们定位到了所要关注的目标,就像我们到一个陌生的地方要随身携带地图,当我们学习Linux内核时,也要谨记寻求Kconfig和Makefile的帮助。

    1.6K20

    Linux 内核中 Kconfig 文件的作用和添加 menuconfig 项的方法

    这里就需要配置 Kconfig 文件了。本文简单说明一下如何修改。...便于需要时查找 Ref: Linux内核中Kconfig文件的作用 本文章采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。...---------- Kconfig的作用 Kconfig就是服务于menuconfig的一个配置文件。在对应目录下配置Kconfig文件,就是在配置对应的menuconfig项目。...完成了make menuconfig之后,内核会生成.config文件,就在Linux代码树的根目录下。这个文件制定了各个模块是否会被编译,由Makefile读取并在编译过程中配置内核。...以前文为例,我添加了配置项在Kconfig中,这个Kconfig的位置是drivers/char/,那么我必须在这个文件夹下的Makefile中添加一行: obj-$(CONFIG_XXXX_MOTOR

    3.6K50

    浅谈内核的Makefile、Kconfig和.config文件

    Linux内核源码文件繁多,搞不清Makefile、Kconfig、.config间的关系,不了解内核编译体系,编译修改内核有问题无从下手,自己写的驱动不知道怎么编进内核,不知道怎么配置内核,这些问题都和...Makefile、Kconfig、.config有关,下面简单谈谈Makefile、Kconfig和.config。...作用:决定make menuconfig时展示的菜单项, 参考:linux-3.4.2/drivers/leds/kconfig: config LEDS_S3C24XX        tristate"LED...hello.c: #include linux/module.h>   #include linux/kernel.h>  #include linux/init.h>   static int...Hello World for fengyuwuzu:决定了在make menuconfig时显示的名字 (2)修改上一级(Linux-3.4.2/drivers下)的Makefile、Kconfig。

    3.8K31

    详解Linux内核编译配置(menuconfig)、文件系统制作

    目录 详解Linux内核编译配置(menuconfig)、文件系统制作 一、Linux内核配置原理 Linux内核的配置系统由三个部分组成, Linux 内核的编译菜单有3中方法: Menuconfig...配置内核原理: 二、Menuconfig主要功能选项介绍: 三、编译配置内核步骤 四、文件系统制作步骤 五、文件系统和根文件系统区别联系 博主热门文章推荐: ---- 详解Linux内核编译配置(menuconfig...Menuconfig配置内核原理: 在Linux里面我们所看到的menuconfig界面是通过配置内核顶层的Kconfig产生的,而当输入make menuconfig命令的时候系统会读取Makefile...来解析Kconfig。   ...通常会在Kconfig里面编写以下四项:   1、模块的名字,用module开头;   2、选项,通常设为bool(二选一)或者trastate(三选一);   3、默认选项;   4、帮助说明

    7.3K20

    Linux基础——Linux权限详解

    前言:本篇开始我们要对Linux进行更深入的学习了,让我们来进入新篇章:Linux的权限理解!...理解默认权限以及权限掩码 1. shell命令以及运行原理 Linux操作系统准确来说是:Linux内核+Linux外壳+配套程序 Linux外壳也就是shell Linux严格意义上说的是一个操作系统...首先:命令行解释 因为Linux内核的设计非常复杂,用户无法直接向Linux内核进行沟通,更不能直接读懂内核执行完命令的结果,所以shell外壳充当"媒婆"这一角色,来进行用户和内核沟通上的翻译。...用户 2.1 普通用户和超级用户 一个Linux账号只有一个超级用户:root 创建的其余用户都叫做普通用户 如果想在Linux里切换用户我们可以: 指令:su 用户名 注意:超级用户切换为普通用户不用输密码...总结拓展 在Linux中的权限十分分明,保护也非常到位,除了root外其他用户并不能直接拿走你的文件,也不会修改删除你的文件。

    55810

    Linux权限详解

    前言:   我们在学习Linux的时候,我们知道在Linux下一切皆文件,而不同的文件对于不同的用户有不同的操作权限,有些重要的东西不能让别人随意修改,所以我们就需要给文件加上权限,保证文件的私密性...一、root账号与普通账号   在Linux下有两种用户:一种是 超级用户(root),一种是 普通用户。...区别 超级用户 普通用户 操作范围 可以在Linux系统下做任何事情 在Linux系统下做有限的事情 命令行提示符 ‘#’ ‘$’   如果我们当前账号是root账号,想要切换为普通用户,我们只需要这个命令...3、普通用户想执行更高权限的命令需要在使用命令前加上sudo 二、Linux权限管理 Linux当中,权限的类型一般有r(读),w(写),x(执行)。...其实在Linux当中有这样一条命令: chmod命令: 功能: 设置文件的访问权限。

    9010

    Linux 目录详解

    和 Windows 一样,Linux 也有目录的概念。系统中众多的文件需要借助到目录进行存储与管理。我们下面对 Linux 系统中的目录结构以及经常使用到的概念进行一个完整介绍。...Linux 系统目录结构 在 Windows下,系统把硬盘划分为不同的磁盘分区,每个磁盘分配一个不同的盘符,比如 C:\、D:\ 等等。...而 Linux 则是将整个硬盘统一管理,整个系统只有一个根目录 "/",所有的文件和目录都是在这个根目录下,它表示 Linux 文件系统的起点。...为了规范,绝大多数的 Linux 发行版本中 (参见 《这么多Linux版本,你究竟该怎么选择?》)系统目录的机构都保持了一致。以 CentOS 7 为例,下面介绍一下常用的系统目录和它们的作用。...最后 本文介绍了 Linux 系统目录的结构和它们的用途,目录相关的概念,以及最常用到的相关命令。

    7.6K20

    Linux进程详解

    进程描述符 Linux进程使用 struct task_struct 来描述(include/linux/sched.h), 如下: struct task_struct { /* *...把所有的进程使用双向链表连接起来, 如下图(来源Linux设计与实现>): ?...进程的创建 在Linux系统中,进程的创建使用fork()系统调用,fork()调用会创建一个与父进程一样的子进程,唯一不同就是fork()的返回值,父进程返回的是子进程的进程ID,而子进程返回的是0。...Linux创建子进程时使用了写时复制(Copy On Write),也就是创建子进程时使用的是父进程的内存空间,当子进程或者父进程修改数据时才会复制相应的内存页。...内核线程 Linux内核有很多任务需要去做, 例如定时把缓冲中的数据刷到硬盘, 当内存不足的时候进行内存的回收等, 这些工作都需要通过内核线程来完成.

    4K10

    扫码

    添加站长 进交流群

    领取专属 10元无门槛券

    手把手带您无忧上云

    扫码加入开发者社群

    相关资讯

    热门标签

    活动推荐

      运营活动

      活动名称
      广告关闭
      领券