Linux驱动开发入门(一)
在Feodra Linux 14编译驱动非常方便,我们可以使用社区提供好的Package,来进行编译工作。
编译过程
首先在系统中安装kernel相关的package:
创建完成后,对代码进行编辑,在上述代码所在目录执行命令如下:-1 Invalid module format
这个是在安装模块时可能会遇到的问题,一般是由于使用的kernel library与kernel版本不一致造成,在Fedora 14下通过yum安装,应该会由系统保证环境的一致性,但如果你真的遇到了这个问题,那么可能就需要自己来编译Linux Kernel,Fedora针对内核编译也有十分方便的方法,请参考这篇文档 http://fedoraproject.org/wiki/Docs/CustomKernel
关于Linux内核及驱动开发的一些有用资源
文中所用代码来源在这里:http://www.linuxquestions.org/questions/programming-9/trying-to-compile-hello-world-kernel-module-please-help-439353/
http://kernelnewbies.org/ - 面向内核开发新手的网站,不少有用资源
http://lwn.net/Articles/2.6-kernel-api/ - linux 2.6内核的新版本特性,非常有用,Linux内核每一次微小升级做出的改变,都需要随时了解。
http://lwn.net/Kernel/LDD3/ - Linux驱动开发第三版,注意这本书里面的不少代码在最新的2.6内核已经不可用了。比如在书中的样例代码中经常见到的linux/config.h在最新的2.6内核版本中已经不再存在。遇到问题时多多利用google可以解决不少问题。