Linux编程之内核模块编程.pdf





《Linux编程之内核模块编程.pdf》由会员分享,可在线阅读,更多相关《Linux编程之内核模块编程.pdf(13页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、H He el li ig gh ht t.X Xu u X Xi iy yo ou u L Li in nu ux xG Gr ro ou up pLinux编程之2 内核模块编程(LKM)H He el li ig gh ht t.X Xu u X Xi iy yo ou u L Li in nu ux xG Gr ro ou up p什么是LKMLKM:就是可加载的内核模块(LoadableKernel Module)。这中模块本来是Linux系统用于扩展他的功能的。使用LKM的优点有:他们可以被动态的加载,而且不需要重新编译内核。由于这些优点,他们常常被特殊的设备(或者文件系统),例如
2、声卡,网卡,romfs等使用。H He el li ig gh ht t.X Xu u X Xi iy yo ou u L Li in nu ux xG Gr ro ou up pLKM 的基本结构int hello_init(void)/*用于初始化所有的数据,函数名可以自定义*/void hello_exit(void)/*用于清除数据从而能有一个安全的退出,函数名可自定义*/module_init(hello_init);/*加载模块*/module_exit(hello_exit);/*卸载模块*/H He el li ig gh ht t.X Xu u X Xi iy yo ou u
3、 L Li in nu ux xG Gr ro ou up pLKM的头文件(include)头文件的位置:/usr/src/linux-2.6.x/include/一个模块所必需的头文件:#include#include 其它头文件H He el li ig gh ht t.X Xu u X Xi iy yo ou u L Li in nu ux xG Gr ro ou up p最简单的LKM/*hello.c*/#include#include static int hello_init(void)/*用于初始化*/printk(KERN_ALERT Hello,worldn);retur
4、n 0;static void hello_exit(void)/*用于清除从而能安全退出*/printk(KERN_ALERTGoodbye worldn);MODULE_LICENSE(GPL);module_init(hello_init);/*加载模块*/module_exit(hello_exit);/*卸载模块*/H He el li ig gh ht t.X Xu u X Xi iy yo ou u L Li in nu ux xG Gr ro ou up pLKM的编译准备编译的准备工作:1.与此时运行的内核版本一致的内核源代码一套将其解压放置到/usr/src/目录下,下载网
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Linux 编程 内核 模块

限制150内