__init 和 __exit 修饰符
来源:互联网 发布:淘宝网鲜花图片素材 编辑:程序博客网 时间:2024/06/02 05:32
static int __init initialization_function(void)
{
/* Initialization code here */
{
/* Initialization code here */
}
在内核模块中经常会看见这样的函数定义,声明中的__init标志看起来有点怪;它是一个给内核的暗示,
给定的函数只是在初始化使用。模块加载者在模块加载后会丢掉这个初始化函数,给它的内存可做其他用途。
一个类似的标签 (__initdata) 给只在初始化时用的数据. 使用 __init 和__initdata 是可选的, 但是它带来的麻烦
是值得的. 只是要确认不要用在那些在初始化完成后还使用的函数(或者数据结构)上.
static void __exit cleanup_function(void)
{
/* Cleanup code here */
}
__exit 修饰符标识这个代码是只用于模块卸载( 通过使编译器把它放在特殊的 ELF 段).
如果你的模块直接建立在内核里, 或者如果你的内核配置成不允许模块卸载, 标识为
__exit 的函数被简单地丢弃. 因为这个原因, 一个标识 __exit 的函数只在模块卸载
或者系统停止时调用; 任何别的使用是错的.
- __init 和 __exit 修饰符
- __init和__exit宏
- __init和__exit
- __init和__exit宏
- __init和__exit
- linux内存中的__init和__exit宏
- __init和__exit宏的作用
- linux设备驱动之__init和__exit
- 关于__init、__initdata和__exit、__exitdata
- __init and __exit
- __init and __exit
- 【转载】__init and __exit
- linux kernel __init && __exit
- __init、__initdata、__exit、__exitdata
- linux下的__init和__exit前缀说明
- __init __initdata __exit __exitdata的不同和说明
- 关于__init、__initdata和__exit、__exitdata的学习笔记
- 关于__init、__initdata和__exit、__exitdata的学习笔记
- Middlegen-Hibernate-r5跟hibernate-extensions-2.1.3
- ios c++ 调用oc代码
- TFT-LCD with Touch Panel Data Sheet Note
- NPAPI插件开发[2]
- Struts2教程三——Using Struts 2 Tags
- __init 和 __exit 修饰符
- TCP/IP详解--学习笔记(5)-IP选路,动态选路,和一些细节
- POJ【数论/组合/博弈论】题目列表
- Android文件操作
- 高并发,大数据量,你的系统考虑哪些问题?
- 图像旋转算法
- sqlite的数据导入 导出
- 【春节回家尽五孝】
- NPAPI插件开发[1]