内核模块的编写

一个简单的内核模块的举例

#include <linux/module.h>
#include <linux/init.h>
#include <linux/kernel.h>
static int __init test_init(void)
{
    printk("%s %d %s\n", __FUNCTION__, __LINE__, __FILE);
    return 0;
}

static void __exit test_exit(void)
{
    printk("%s %d %s\n", __FUNCTION__, __LINE__, __FILE__);
}

module_init(test_init);
module_exit(test_exit);
MODULE_LICENSE("GPL");

内核模块的一些知识点总结:

  • 模块加载函数:insmod 或 modprobe
  • 模块卸载函数:rmmod
  • 模块许可证: LICENSE
  • 模块参数: module_param(参数名, 参数类型, 参数的权限(r/w)
  • 参数数组:module_param(数组名, 数组类型, 数组长, 参数权限)
  • 模块的声明与描述:
    MODULE_LICENSE(“GPL”);
    MODULE_AUTHOR(“author”);
    MODULE_DESCRIPTION(“description”);
    MODULE_VERSION(“version”);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值