linux kernel module -----------hello modules
时间:2009-08-13 来源:zjlikaifa
网上高人说学习内核 通过写module开始 那是一个捷径
今天就初步的学习了下 module 就写篇以防以后查询吧
主要是参考下面得网页 来写的 还是挺好的
http://dirac.org/linux/writing/lkmpg/2.6/chinese/lkmpg_chs/#AEN30
但是按照他第二章步骤来出现了很多问题 不得不依从从网上查找资料 慢慢解决
如下
首先得把 hello module编译成功吧
首先得明白一个问题 这个hello module是用运行的内核来编译的 具体
说就是 如果你电脑运行的内核是2.6.24 而你自己做arm开发用的内核是2.6.12
你做的hello module 实验是跟2.6.12 是没相关的 除非你吧 .ko文件下载到
arm板子上 在运行 不知道我说明白了没有??
然后在写Makefile 文件的时候,你不能跟他写了 要换成下面的
然后输make 的时候 你就不这样写了make -C /usr/src/linux-`uname -r` SUBDIRS=$PWD modules (如果你直接复制黏贴的 话 是有问题的 在你黏贴后要吧 命令行的开头的空格删了 再加TAB 建 这是makfile规定的 命令前只能是TAB)
直接make就行了
就能生成.ko文件了
然后一个问题就是 在你insmod 的时候 你的终端上不显示printk要输出的东西
解决办法就是 你另外打开一个一个终端 输命令 sudo su - 在输 cat /proc/kmsg
就可以 至于说直接在一个终端上显示 好像要修改什么syslogd和klogd 具体我要不知道 我晚上试试吧 到此为止吧
ifneq ($(KERNELRELEASE),) |
相关阅读 更多 +