• Linux 内核模块可选信号


    一 。 内核模块可选信号

      1 . 模块申明

        (1). MODULE_LICENSE(遵守的协议)

          申明该模块遵守的许可证协议,如:“GPL”、"GPL V2"

        (2). MODULE_AUTHOR(作者)

          申请模块的作者

        (3). MODULE_DESCRIPTION(模块的功能描述)

          申请模块的功能

        (4). MODULE_VERSION(v1.0)

          申请模块的版本

      2 . 模块参数

        通过宏module_param指定保存模块参数的变量。模块参数用于在加载模块时传递参数给模块。

          module_param(name,type,perm)

        #name:变量的名称

        #type:变量类型,bool:布尔型int:整型charp:字符串型

        #perm是访问权限。S_IRUGO:读权限S_IWUSR:写权限

        #例 :

          int a = 3;

          char *st;

          module_param(a,int, S_IRUGO);

          module_param(st,charp, S_IRUGO);

      3 . 符号输出(将内核模块里面的符号导出,输出的值就可以被其他内核模块所调用)

            内核符号的导出使用宏

          EXPORT_SYMBOL(符号名)

         EXPORT_SYMBOL_GPL(符号名)

        说明:其中EXPORT_SYMBOL_GPL只能用于包含GPL许可证的模块。

      

  • 相关阅读:
    网络编程:心跳检测保证连接有效
    网络编程:端口复用
    网络编程:优雅的关闭
    网络编程:小包数据的处理
    网络编程:理解TCP中的“流”
    网络编程:TCP故障模式
    C语言实现高阶阶乘(1000的阶乘C语言实现)
    函数指针
    CCS(TI IDE)中英文切换
    命令行与C++
  • 原文地址:https://www.cnblogs.com/lvxiaoning/p/5020735.html
Copyright © 2020-2023  润新知