文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>2.4与2.6内核模块文件的区别

2.4与2.6内核模块文件的区别

时间:2007-05-27  来源:xiegang112

.o的文件是对象文件,.ko是kernel object,与.o的区别在于其多了一些sections,比如.modinfo。.modinfo section是由kernel source里的modpost工具生成的,包括MODULE_AUTHOR, MODULE_DESCRIPTION, MODULE_LICENSE, device ID table以及模块以来关系等等。 depmod 工具根据.modinfo section生成modules.dep, modules.*map等文件,以便modprobe更方便的加载模块。

在2.6内核下编译driver, 首先要确认你的linux系统里有没有 kernel tree,检查的方法是看看文件夹/lib/modules/$(uname -r)/build是否指向source code,并进去看看,是否有Makefile, include, scripts等文件夹,在scripts/mod下可以找到前面提到的modpost,这个东东是 生成.ko的关键。 如果没有kernel tree,需要重新build一份kernel来建立这个kernel tree,或者只能通过binary的方法来安装驱动(在网上找binary的驱动需要看kernel的版本号是否一致,因为2.6的内核对kernel的版本号有检查)。

系统中如果有kernel tree,在检查你下载的Makefile是否是利用2.6的kbuild系统来编译的,如果不是,自己试着写一份Makefile,具体写法可以参考linux source code里的kbuild文档。
相关阅读 更多 +
排行榜 更多 +
匿名爱人游戏

匿名爱人游戏

冒险解谜 下载
魔方仆从冲刺

魔方仆从冲刺

休闲益智 下载
跑山越野摩托

跑山越野摩托

体育竞技 下载