__init、__initdata、__exit、__exitdata
来源:互联网 发布:mac苹果系统如何更新 编辑:程序博客网 时间:2024/06/05 20:36
__init 宏常用在驱动模块初始化函数的定义处,其目的是将驱动模块的初始化函数放入名叫.init.text的输入段。当内核启动完毕后,这个段中的内存会被释放掉供其他使用。
__initdata宏用于数据定义,目的是将数据放入名叫.init.data的输入段。其它几个宏也类似。
__exit只在模块卸载时使用。如果模块被直接编进内核则该函数就不会被调用。如果内核编译时没有包含该模块,则此函数将被简单地丢弃。
__exitdata:
static char hdlc_unregister_ok[]__exitdata =
KERN_INFO "N_HDLC: line discipline unregistered\n";
static char hdlc_unregister_fail[]__exitdata =
KERN_ERR "N_HDLC: can't unregister line discipline (err = %d)\n";
static void __exit n_hdlc_exit(void)
{
/* Release tty registration of line discipline */
int status = tty_unregister_ldisc(N_HDLC);
if (status)
printk(hdlc_unregister_fail, status);
else
printk(hdlc_unregister_ok);
}
通过它的使用推测一下它的作用,定义一个静态变量当模块的退出函数使用之后自动释放该变量,达到节省资源的目的。
- __init、__initdata、__exit、__exitdata
- __init __initdata __exit __exitdata解析
- 关于__init、__initdata和__exit、__exitdata
- __init __initdata __exit __exitdata的不同和说明
- 关于__init、__initdata和__exit、__exitdata的学习笔记
- 关于__init、__initdata和__exit、__exitdata的学习笔记
- 关于__init、__initdata和__exit、__exitdata的学习笔记
- 关于__init、__initdata和__exit、__exitdata的学习笔记
- __init、__initdata和__exit、__exitdata的学习笔记
- 关于__init、__initdata和__exit、__exitdata的学习笔记
- 关于__init、__initdata和__exit、__exitdata的学习笔记
- 关于__init、__initdata和__exit、__exitdata的学习笔记
- 关于__init、__initdata和__exit、__exitdata的学习笔记
- 关于__init、__initdata和__exit、__exitdata的学习笔记
- 关于__init、__initdata和__exit、__exitdata的学习笔记
- 关于__init、__initdata和__exit、__exitdata的学习笔记
- 关于__init、__initdata和__exit、__exitdata的学习笔记
- 内核中的宏定义__init,__initdata,__exitdata
- 【书籍推荐】软件估算——“黑匣子”揭秘
- 通信系统的主要性能指标
- ubuntu下软件的安装、卸载、查看
- 新学的next_permutation 算法和KMP
- c\c++复习基础要点08--c++单例模式
- __init、__initdata、__exit、__exitdata
- #R-ggplot#qplot笔记
- 支持Lazy loading的图片画廊jQuery插件 - Least.js
- java的System.getProperty()方法可以获取的值
- [leetcode刷题系列]Gas Station
- 互斥量和信号量的区别
- 高并发数据量在J2EE系统中应用OSCache
- 使用xcode打包上传ios app
- Hyperion essbase入门(一)安装