原始定义:include/linux/init.h
| #define __init __attribute__ ((__section__ (".init.text"))) #define __initdata __attribute__ ((__section__ (".init.data"))) #define __exitdata __attribute__ ((__section__(".exit.data"))) #define __exit_call __attribute_used__ __attribute__ ((__section__ (".exitcall.exit"))) #ifdef MODULE #define __exit __attribute__ ((__section__(".exit.text"))) #else #define __exit __attribute_used__ __attribute__ ((__section__(".exit.text"))) #endif__init和__exit标记函数,__initdata和__exitdata标记数据。 |
此宏定义可知标记后的函数与数据其实是放到了特定的(代码或数据)段中。
标记为初始化的函数,表明该函数供在初始化期间使用。
在模块装载之后,模块装载就会将初始化函数扔掉。这样可以将该函数占用的内存释放出来。
__exit修饰词标记函数只在模块卸载时使用。
如果模块被直接编进内核则该函数就不会被调用。如果内核编译时没有包含该模块,则此标记的函数将被简单地丢弃。本U R L:http://www.qqread.com/linux/2008/03/r401052.html
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
相关专题
- Linux集群技术 (8461篇文章)
- 体验Linux的音影世界 (8133篇文章)
- Linux驱动大全 (8939篇文章)
- Linux下的路由的配置与应用 (11941篇文章)
- Linux命令简介 (10002篇文章)
- Linux防火墙 (9816篇文章)
- Linux日志专题 (8587篇文章)
- .NET移动与嵌入式技术 (5982篇文章)
- Linux服务器的安全性能 (20613篇文章)
- 揭秘Linux内存管理 (8197篇文章)
- 2007年Linux平台下的8款最佳游戏(图) (198次浏览)
- 什么样的linux才适合国内办公 (114次浏览)
- 最具影响力的七大GNU/Linux发行版 (70次浏览)
- Linux“装机”一条龙 (46次浏览)
- 安装qmail全套功略 (37次浏览)
- TurboLinux 入门教程:第七课 TurboLinux简介 (33次浏览)
- Linux系统管理员秘技:用快捷命令一招制胜 (32次浏览)
- Linux系统命令分类详解 (1) (32次浏览)
- 桌面Linux:微软无需畏惧 (28次浏览)
- 高级Linux安全管理技巧(上) (28次浏览)



