Linux Kernel 的 Notify Chain 與應用

在很久很久以前有個遠的要命王國.....
(下略...)

扯遠了,現在不是在演史瑞克...
早在Linux Kernel version 1.2.X時代(資料來源:LXR),
就有Notify Chain的設計了。

Notify Chain 就是核心裡面的Callback Function List
跟一般的Callback Function不同處就在於它是個LIST(廢話)
所以可以註冊一個以上的Callback。

對應的LIST處理函示有:
notifier_chain_register
notifier_chain_unregister
notifier_call_chain
前面兩個是登錄跟註銷,最後是啟動整串Callback
典型的應用就是reset跟panic的處理,
可以加一大串對應的處理函示,相當方便。

另外如果核心程式有連動的需求,也可以自己創一個:
static struct notifier_block *your_notifier_list;

留言

這個網誌中的熱門文章

RTC & CMOS 技術詳解

[自由網路] 如何取得 Google Drive (真實)外連位址 (Direct Link)