您现在的位置: 电脑知识网 >> 电脑系统 >> Linux FreeBSD >> :关于Linux下_init与_exit的解释

:关于Linux下_init与_exit的解释

 2008-3-12 7:59:03 来源:PC235.COM 您有问题?请联系我们
关 键 词::关于Linux下_init与_exit的解释

原始定义: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修饰词标记函数只在模块卸载时使用。

如果模块被直接编进内核则该函数就不会被调用。如果内核编译时没有包含该模块,则此标记的函数将被简单地丢弃。

:关于Linux下_init与_exit的解释文章结束

更多内容请看 电脑系统 > > Linux FreeBSD专题
  • 上一个文章:

  • 下一个文章:
  • 【最新推荐::关于Linux下_init与_exit的解释】
    Pc235-免费的教育教学网络资源
    【频道更新】
    【相关文章】
    电脑知识网 版权所有 严禁转载本站文章 违者追究法律责任
    copyright © 2007 www.Pc235.com online services. all rights reserved. 渝ICP备07500547号