环境:ubuntu-16.04-beta2-desktop-amd64.iso + VMware
1. Makefile:
①需要是Makefile,不能是makefile;
②ker_ver = $(shell uname -r) 用于找到当前Ubuntu的发行版号;
③obj-m
④make -C …… modules
⑤make -C …… modules clean
注意 -c和-C 区别:
-C,切换到指定目录再执行 make,这个指定目录里会有Makefile;
-c,只编译。
2.module_test.c
①头文件:linux/init.h 、linux/module.h;
②__init、__exit;
③MODULE_LICENSE
root@ubuntu:/tmp/drv_test# cat Makefile
ker_ver = $(shell uname -r)
ker_dir = /lib/modules/$(ker_ver)/build
obj-m += module_kk.o
all:
make -C $(ker_dir) M=`pwd` modules
clean:
make -C $(ker_dir) M=`pwd` modules clean
3.module 相关命令:
insmod、rmmod、modinfo、lsmod
以上. 先这些。