当我们构建可加载的内核模块时,幕后发生了什么

时间:2015-03-10 16:12:08

标签: linux build linux-kernel makefile kernel-module

之前我已经构建了一些内核模块,然后按照步骤生成.ko文件到insmod。

我写了一个有

的Makefile
obj-m := filename.o

并从shell执行命令

# make -C /lib/modules/$(uname -r)/build M=`pwd` modules

此命令生成filename.ko,filename.mod,filename.o,filename.mod.o。

一些谷歌搜索显示/ lib / modules / $()/ build是我的内核源代码树的符号链接。 并且M=pwd是我的源文件目录。

但是当只是执行这一小段命令来生成我的.ko内核对象文件时会发生什么。 make命令使用哪些目录或二进制文件实用程序。

PS :( filename.ko文件将使用filename.o和filename.mod.o由某些编译魔法生成。)

谢谢。

0 个答案:

没有答案