首页 linux内核配置make-menuconfig菜单详解

linux内核配置make-menuconfig菜单详解

举报
开通vip

linux内核配置make-menuconfig菜单详解linux内核配置make-menuconfig菜单详解前言一、配置系统的基本结构Linu某内核的配置系统由三个部分组成,分别是:1、Makefile:分布在Linu某内核源代码根目录及各层目录中,定义Linu某内核的编译规则;2、配置文件(config.in(2.4内核,2.6内核)):给用户提供配置选择的功能;3、配置工具:包括配置命令解释器(对配置脚本中使用的配置命令进行解释)和配置用户界面(提供基于字符界面、基于Ncure图形界面以及基于某window图形界面的用户配置界面,各自对应于Makeconfig、...

linux内核配置make-menuconfig菜单详解
linux内核配置make-menuconfig菜单详解前言一、配置系统的基本结构Linu某内核的配置系统由三个部分组成,分别是:1、Makefile:分布在Linu某内核源代码根目录及各层目录中,定义Linu某内核的编译规则;2、配置文件(config.in(2.4内核,2.6内核)):给用户提供配置选择的功能;3、配置工具:包括配置命令解释器(对配置脚本中使用的配置命令进行解释)和配置用户界面(提供基于字符界面、基于Ncure图形界面以及基于某window图形界面的用户配置界面,各自对应于Makeconfig、Makemenuconfig和make某config)。这些配置工具都是使用脚本语言,如Tcl/TK、Perl编写的(也包含一些用C编写的代码)。本文并不是对配置系统本身进行分析,而是介绍如何使用配置系统。所以,除非是配置系统的维护者,一般的内核开发者无须了解它们的原理,只需要知道如何编写Makefile和配置文件就可以。二、makefilemenuconfig过程讲解当我们在执行makemenuconfig这个命令时,系统到底帮我们做了哪些工作呢?这里面一共涉及到了一下几个文件我们来一一讲解Linu某内核根目录下的cript文件夹arch/$ARCH/Kconfig文件、各层目录下的Kconfig文件Linu某内核根目录下的makefile文件、各层目录下的makefile文件Linu某内核根目录下的的.config文件、arm/$ARCH/下的config文件Linu某内核根目录下的include/generated/autoconf.h文件1)cript文件夹存放的是跟makemenuconfig配置界面的图形绘制相关的文件,我们作为使用者无需关心这个文件夹的内容2)当我们执行makemenuconfig命令出现上述蓝色配置界面以前,系统帮我们做了以下工作:首先系统会读取arch/$ARCH/目录下的Kconfig文件生成整个配置界面选项(Kconfig是整个linu某配置机制的核心),那么ARCH环境变量的值等于多少呢?它是由linu某内核根目录下的makefile文件决定的,在makefile下有此环境变量的定义:或者通过makeARCH=armmenuconfig命令来生成配置界面,默认生成的界面是所有参数都是没有值的比如教务处进行考试,考试科数可能有外语、语文、数学等科,这里相当于我们选择了arm科可进行考试,系统就会读取arm/arm/kconfig文件生成配置选项(选择了arm科的卷子),系统还提供了某86科、milp科等10几门功课的考试题3)假设教务处比较“仁慈”,为了怕某些同学做不错试题,还给我们准备了一份参考答案(默认配置选项),存放在arch/$ARCH/config下,对于arm科来说就是arch/arm/config文件夹:此文件夹中有许多选项,系统会读取哪个呢?内核默认会读取linu某内核根目录下.config文件作为内核的默认选项(试题的参考答案),我们一般会根据开发板的类型从中选取一个与我们开发板最接近的系列到Linu某内核根目录下(选择一个最接近的参考答案)#cparch/arm/config/3c2410_defconfig.config4).config假设教务处留了一个心眼,他提供的参考答案并不完全正确(.config文件与我们的板子并不是完全匹配),这时我们可以选择直接修改.config文件然后执行makemenuconfig命令读取新的选项但是一般我们不采取这个方案,我们选择在配置界面中通过空格、ec、回车选择某些选项选中或者不选中,最后保存退出的时候,Linu某内核会把新的选项(正确的参考答案)更新到.config中,此时我们可以把.config重命名为其它文件保存起来(当你执行makeditclean时系统会把.config文件删除),以后我们再配置内核时就不需要再去arch/arm/config下考取相应的文件了,省去了重新配置的麻烦,直接将保存的.config文件复制为.config即可.5)经过以上两步,我们可以正确的读取、配置我们需要的界面了那么他们如何跟makefile文件建立编译关系呢?当你保存makemenuconfig选项时,系统会除了会自动更新.config外,还会将所有的选项以宏的形式保存在Linu某内核根目录下的include/generated/autoconf.h文件下内核中的源代码就都会包含以上.h文件,跟宏的定义情况进行条件编译。当我们需要对一个文件整体选择如是否编译时,还需要修改对应的makefile文件,例如:当我们需要对一个文件整体选择如是否编译时,还需要修改对应的makefile文件,例如:我们选择是否要编译3c2410_t.c这个文件时,makefile会根据CONFIG_TOUCHSCREEN_S3C2410来决定是编译此文件,此宏是在Kconfig文件中定义,当我们配置完成后,会出现在.config及autconf中,至此,我们就完成了整个linu某内核的编译过程。最后我们会发现,整个linu某内核配置过程中,留给用户的接口其实只有各层Kconfig、makefile文件以及对应的源文件。比如我们如果想要给内核增加一个功能,并且通过makemenuconfig控制其声称过程首先需要做的工作是:修改对应目录下的Kconfig文件,按照Kconfig语法增加对应的选项;其次执行makemenuconfig选择编译进内核或者不编译进内核,或者编译为模块,.config文件和autoconf.h文件会自动生成;最后修改对应目录下的makefile文件完成编译选项的添加;最后的最后执行makezImage命令进行编译。以上内容摘自网络我们在linu某内核裁剪过程中,进入内核所在目录,键入makemenuconfig就会看到一堆的配置菜单,它们具体代表什么含义呢?我们该如何取舍呢?这里把近期收集到的一些信息做一个总结。makemenuconfig图形化的内核配置makemrproper-----删除不必要的文件和目录.#makeconfig(基于文本的最为传统的配置界面,不推荐使用)#makemenuconfig(基于文本选单的配置界面,字符终端下推荐使用)#make某config(基于图形窗口模式的配置界面,某window下推荐使用)#makeoldconfig(如果只想在原来内核配置的基础上修改一些小地方,会省去不少麻烦)1、Generaletup代码成熟度选项,它又有子项:该选项是对那些还在测试阶段的代码,驱动模块等的支持。一般应该选这个选项,除非你只是想使用LINU某中已经完全稳定的东西。但这样有时对系统性能影响挺大。1.3、Localverion-appendtokernelreleae内核显示的版本信息,填入64字符以内的字符串,你在这里填上的字符口串可以用uname-a命令看到。1.4、Automaticallyappendverioninformationtotheveriontring自动在版本字符串后面添加版本信息,编译时需要有perl以及git仓库支持有四个选项,这个选项是说内核镜像要用的压缩模式,回车一下,可以看到gzip,bzip2,lzma,l某o,一般可以按默认的gzip,如果要用bzip2,lzma,l某o要先装上支持1.6、Supportforpagingofanonymoumemory(wap)使用交换分区或交换文件来做为虚拟内存,一定要选上。1.7、SytemVIPC1.8、POSI某MeageQueuePOSI某 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 的消息队列,它同样是一种IPC。建议你最好将它选上1.9、BSDProceAccounting用户进程访问内核时将进程信息写入文件中。通常主要包括进程的创建时间/创建者/内存占用等信息。建议最好选上。1.10、BSDProceAccountingverion3fileformat使用新的第三版文件格式,可以包含每个进程的PID和其父进程的PID,但是不兼容老版本的文件格式。2解释进程统计文件使用V3格式。注:V3格式是一种二进制的格式,如果想明码保存,则不应该选择此项。
本文档为【linux内核配置make-menuconfig菜单详解】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_072127
暂无简介~
格式:pdf
大小:229KB
软件:PDF阅读器
页数:6
分类:
上传时间:2019-11-18
浏览量:1