Chinaunix首页 | 论坛 | 博客
  • 博客访问: 127935
  • 博文数量: 75
  • 博客积分: 1485
  • 博客等级: 上尉
  • 技术积分: 720
  • 用 户 组: 普通用户
  • 注册时间: 2009-05-11 20:57
文章分类
文章存档

2011年(1)

2010年(15)

2009年(59)

我的朋友

分类: LINUX

2009-10-14 13:58:51

 static int _init **_init
_init不属于c的标准
在内核代码里,这个表示把这个函数放在.init.text section里
在include/linux/init.h里有定义
#define __init __attribute__ ((__section__ (".init.text")))
这个section的空间是会被回收的,
init section的代码/数据都只是在内核初始化的时候用到
所以初始化完成以后就可以释放了
内核的启动信息 freeing init memory就是指的这个
这个段的数据和函数只有在kernel初始化的时候会被调用,以后一定不会被使用,kernel可能会在以后的某个时候释放掉这个段所占用的内存,给别的地方使用
 
void exit **_exit
阅读(600) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~