Makefile: ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- obj-m += test.o KDIR := /home/workspace/M6G2C/linux-src ---------- 内核地址 PWD = $(shell pwd) all:$(MAKE) -C $(KDIR) M=$(PWD) modules clean:rm -r...
一、什么是modules? modules 的字面意思就是模块,在此指的是 kernel modules;简单来说,一个模块提供了一个功能,如isofs、minix、nfs、lp等等。传统来讲,模块化有两个方法解决:设计者可以把各项功能分离到单独的叫做线程的处理中去,或者是将内核以包含/排除一些功能的方式重新编译。如果把功能分离到线程中去,那么内核就叫做微内核(micro-kernel),这种...
在开始之前,我们要先了解一些数论的基本符号(a,b)表示a,b的最大公约数,[a,b]表示a,b的最小公倍数,b|a表示a%b=0。在数论中我们定义同余:设m!=0,若m|a-b,则a-b=km。称m为模,a同余于b模m以及b是a模m的剩余。记做a≡b(modm),也称作模m的同余式。例如对于偶数我们总可以除尽2,那么用同余式就可写为a≡0(mod2),同理对于奇数我们可以写成a≡1(mod2)。...