Linux内核宏__init/__initdata/__exit

在内核模块编程中,或许会发现有这样的一些特殊关键字 __init ,_initdata ,__exit 等等,其实这些都是gcc的扩展属性: __init  宏最常用的地方是驱动模块初始化函数的定义处,其目的是将驱动模块的初始化函数放入名叫 .init.text 的段。当内核启动完毕后,这个段中的内存会被释放掉供其他使用。 __initdata 宏用于数据定义,目的是将数据放入名叫 .init.data 的段。其它几个宏也类似。

猜你喜欢

转载自blog.csdn.net/xiezhi123456/article/details/80029771