您的位置:首页 > 运维架构 > Linux

如何将自己的模块添加到Linux 2.6内核的配置系统中

2011-05-03 09:31 645 查看
要将自己开发的内核代码加入到 Linux 内核中,需要有三个步骤:

Ø 首先确定把自己开发代码放入到内核源代码结构中;

Ø 其次,通过Kconfig文件把自己开发的功能增加到 Linux 内核的配置选项中,使用户能够选择此功能;

Ø 最后,构建子目录 Makefile,根据用户的选择,将相应的代码编译到最终生成的 Linux 内核中去。

本例将添加一个test_char的字符设备驱动。按三个步骤来:

ü 放置驱动代码:在目录drivers/char/中新建驱动对应文件test_char.c(读者在实践时可先用touch test_char.c 生成一个空的测试文件)。

ü 编辑配置文件:编辑drivers/char/Kconfig文件,在文件末尾添加如下的配置脚本:

config TEST_CHAR

bool “My Test Character driver”

help

This is my help content.

ü 编辑Makefile:编辑drivers/char/Makefile,在文件末尾添加如下脚本:

obj-$(CONFIG_TEST_CHAR) += test_char.o

做完以上工作,就可以用make menuconfig查看并修改配置了。

在配置菜单 Device drivers à Character devices里的最后应该可以看到如下界面:





发现我们所定义的“My Test Character driver”已经出现在配置选择菜单里了。

这时可以移动到此菜单实体,然后通过空格选定此项。





最后退出并保存配置。

这时再打开根目录下的.config文件可以发现如下代码:

CONFIG_TEST_CHAR = y

这说明在编译时CONFIG_TEST_CHAR=y,也就是编译时会编译test_char.o (根据Makefile)。

至此,我们已经完成了将自己的模块添加到Linux内核中,并且可以通过界面进行配置。当然,由于篇幅所限,这里只说明了Linux 2.6内核配置系统的基本内容,更多内容读者可参见其他资料。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: