宏EXPORT_SYMBOL在内核中的作用
生活随笔
收集整理的這篇文章主要介紹了
宏EXPORT_SYMBOL在内核中的作用
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
Module運行在kernel space,不能直接調(diào)用應(yīng)用程序庫,只能調(diào)用內(nèi)核函數(shù)。
EXPORT_SYMBOL的作用是把內(nèi)核函數(shù)的符號導(dǎo)出,也就是將函數(shù)的入口地址導(dǎo)出。
?
Module在運行的時候會根據(jù)Kernel中的符號表(EXPORTSYMBOL的名字表)去找Symbol(根據(jù)內(nèi)核函數(shù)loadmodule()中的_findsymbol),如果該Module無法找到symbol,函數(shù)無法執(zhí)行,該Module也就無法加載。
?
如果非要執(zhí)行module入口函數(shù),可以用寫上絕對地址的函數(shù)指針來調(diào)用未被EXPORT_SYMBOL的函數(shù)。
總結(jié)
以上是生活随笔為你收集整理的宏EXPORT_SYMBOL在内核中的作用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux copy_from/to_u
- 下一篇: 内核定时器的使用