|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
但不会命令而成为高手也是不可能的.这就好比学英语,什么语法都不懂,只捧着单词手册背单词是学不会英语的,但是没有单词词汇量英语水平也提不高的。
1.编译毛病(实在这个成绩和Makefile有很年夜干系)
2.Invalidmoduleformat毛病
3.insmod:errorinserting./hello.ko:-1Fileexists
开辟情况
内核版本:2.6.22(我下载的最新版本)
gcc:gcc(GCC)4.1.2
Makefile
gcc-D__KERNEL__-DMODULE-DLINUX-I/usr/local/src/linux2.4/include-c-ohello.ohello.c
下面这类写法合适2.4版本的内核,在2.6下用这类写法极可能招致很多编译毛病,即便编译经由过程也会发生Invalidmoduleformat毛病。
2.6下准确的Makefie以下:
#Makefile2.6
ifneq($(KERNELRELEASE),)
#kbuildsyntax.dependencyrelationshsipoffilesandtargetmodulesarelistedhere.
mymodule-objs:=hello.o
obj-m:=hello.o
else
PWD:=$(shellpwd)
KVER?=$(shelluname-r)
KDIR:=/lib/modules/$(KVER)/build
all:
$(MAKE)-C$(KDIR)M=$(PWD)
clean:
rm-rf.*.cmd*.o*.mod.c*.ko.tmp_versions
endif
利用下面的Makefie同时也办理了Invalidmoduleformat毛病
insmod:errorinserting./hello.ko:-1Fileexists毛病办理
第一次insmod./hello.ko没有输入暗示你的模块被一般载进了,厥后的毛病是你反复载进这个模块招致的
用命令lsmod|grephello看看是否是有这个模块?
用命令tail/var/log/messages
有hello,world
module程序一般实行
</p>
系统管理相关命令:df、top、free、quota、at、lp、adduser、groupaddkill、crontab、tar、unzip、gunzip、last |
|