如何将驱动或模块编译进内核

转载地址:http://blog.youkuaiyun.com/marz07101/article/details/7647400

我们知道若要给linux内核添加模块(驱动)有如下两种方式:

(1)动态方式:采用insmod命令来给运行中的linux加载模块。

(2)静态方式:修改linux的配置菜单,添加模块相关文件到源码对应目录,然后把模块直接编译进内核。

对于动态方式,比较简单,下面我们介绍如何采用静态的方式把模块添加到内核。

最终到达的效果是:在内核的配置菜单中可以配置我们添加的模块,并可以对我们添加的模块进行编译。

一. 内核的配置系统组成

首先我们要了解Linux 2.6内核的配置系统的原理,比如我们在源码下运行“make menuconfig ”为神马会出现一个图形配置菜单,配置了这个菜单后又是如何改变了内核的编译策略滴。

内核的配置系统一般由以下几部分组成:

(1)Makefile:分布在Linux内核源代码中的Makefile,定义Linux内核的编译规则。

(2)配置文件(Kconfig):给用户提供配置选项,修改该文件来改变配置菜单选项。

(3)配置工具:包括配置命令解释器(对配置脚本中使用的配置命令进行解释),配置用户界面(提供字符界面和图形界面)。这些配置工具都是使用脚本语言编写的,如Tcl/TK、Perl等。

其原理可以简述如下:这里有两条主线,一条为配置线索,一条为编译线索。配置工具根据kconfig配置脚本产生配置菜单,然后根据配置菜单的配置情况生成顶层目录下的.config

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值