在上面提到的MODULE_AUTHOR、MODULE_DESCRIPTION、MODULE_LICENSE、MODULE_ALIAS,这些宏定义,查看其声明,我们发现: /* For userspace: you can also call me... */#define MODULE_ALIAS(_alias) MODULE_INFO(alias, _alias)/* Soft module
module_init(hello_init); //内核加载函数 static void __exit hello_exit(void) { printk(KERN_INFO "Hello world exit\n"); } module_exit(hello_exit); //内核卸载函数 MODULE_AUTHOR("Test Hello"); MODULE_LICENSE("GPL"); MODULE_DESCRIPTION("A simple Hello World Module"); MODULE_ALIAS("A ...
可以在模块中包含的其他描述性定义有MODULE_AUTHOR(声明谁编写了模块)。MODULE_DESCRIPION(一个人可读的关于模块做什么的声明),MODULE_VERSION(一个代码修订版本号; 看 <linux/module.h> 的注释以便知道创建版本字串使用的惯例),MODULE_ALIAS (模块为人所知的另一个名子),以及MODULE_DEVICE_TABLE ( 来告知用户空间...
MODULE_VERSION (version_string); //声明模块的版本 MODULE_DEVICE_TABLE (table_info); //声明模块的设备表 MODULE_ALIAS (alternate_name); //声明模块的别名 MODULE_LICENSE("GPL"); //声明模块的许可证 MODULE_PARM_DESC //参数作用的描述 MODULE_SUPPORTED_DEVICE //模块支持的设备...
alias wildcard modulename:给模块名指定一个别名。 options modulename option…:指定模块插入时,可以带入的参数项。 install modulename command…:定义模块插入时的自定义动作。 remove modulename command… :定义模块卸载时的自定义动作。 详细的modprobe.conf的使用说明,请参考“man modprobe.conf”。具体的例子请...
# 列出所有别名 $ alias alias ll='ls -l --color=auto' alias ls='ls --color=auto' alias mv='mv -i' alias rm='rm -i' ... # 设置别名,仅当前终端窗口生效,重启消失 $ alias ll='ls -l --color=auto' # 查看别名设置 $ alias ll alias ll='ls -l --color=auto' 或$ which ll a...
**MODULE_ALIAS()为用户空间提供一个合适的别名。**下面我们来看如何编译这个内核模块。在优麒麟Linux上编译该内核模块,下面是编写内核模块的Makefile文件。 现在创建好了咱们的模块,下一步就是来编写内核模块的makefile文件 b. 内核模块的makefile文件
MODULE_LICENSE("Dual BSD/GPL"); /*模块许可证明,描述内核模块的许可权限,必须*/ MODULE_DESCRIPTION("A simple Hello World Module"); /*模块说明,可选*/ MODULE_ALIAS("a simplest module"); /*模块说明,可选*/ 1. 2. 3. 4. 5. 6.
( 一个人可读的关于模块做什么的声明 ), MODULE_VERSION ( 一个代码修订版本号; 看 <linux/module.h> 的注释以便知道创建版本字串使用的惯例), MODULE_ALIAS ( 模块为人所知的另一个名字 ), 以及 MODULE_DEVICE_TABLE ( 来告知用户空间, 模块支持那些设备 ). 我们会讨论 MODULE_ALIAS 在第 11 章以及 ...
module_init(my_device_init);module_exit(my_device_exit); 1. 2. 2、模块依赖 内核模块之间一般存在着依赖关系,比如某个模块需要依赖于另一个模块才能正常工作。内核模块的依赖关系可以通过MODULE_DEPEND或MODULE_ALIAS来实现,其中MODULE_DEPEND表示一个模块依赖于另一个模块,而MODULE_ALIAS则表示一个模块别名。