linux驱动学习--第六天:第四章 Linux 内核模块 之 Linux 内核模块编译

模块加载函数 

Linux 内核模块加载函数一般以_ _init 标识声明

1 static int _ _init initialization_function(void)
2 {
3     /* 初始化代码 */
4 }
5 module_init(initialization_function);


模块卸载函数

Linux 内核模块卸载函数一般以_ _exit 标识声明

1 static void _ _exit cleanup_function(void)
2 {
3     /* 释放代码 */
4 }
5 module_exit(cleanup_function);

 


模块参数

 

导出符号

 

模块声明与描述

 

模块的使用计数

 

模块的编译

 

模块与 GPL

 

总结
本章主要讲解了 Linux 内核模块的概念和基本的编程方法。内核模块由加载/卸载函数、功能函数以及
一系列声明组成,它可以被传入参数,也可以导出符号供其他模块使用。
由于 Linux 设备驱动以内核模块的形式而存在,因此,掌握这一章的内容是编写任何类型设备驱动
所必须的。在具体的设备驱动开发中,将驱动编译为模块也有很强的工程意义,因为如果将正在开发中
的驱动直接编译入内核,而开发过程中会不断修改驱动的代码,则需要不断地编译内核并重启Linux,
但是如果编译为模块,则只需要rmmod 并insmod 即可,开发效率大为提高。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值