tasklet 和工作佇列的區別

2022-05-06 12:36:11 字數 301 閱讀 1375

工作佇列類似 tasklets,允許核心**請求在將來某個時間呼叫乙個函式,不同在於: 

(1)tasklet 在軟體中斷上下文中執行,所以 tasklet **必須是原子的; 而工作佇列函式在乙個特殊核心程序上下文執行,有更多的靈活性,且能夠休眠。

(2)tasklet 只能在最初被提交的處理器上執行,而這只是工作佇列的預設工作方式。

(3)核心**可以請求工作佇列函式被延後乙個給定的時間間隔。

(4)tasklet 執行的很快, 短時期, 並且在原子態, 而工作佇列函式可能是長週期且不需要是原子的,兩個機制有它適合的情形。

軟中斷 tasklet和工作佇列

中斷機制的下半部實現機制 軟中斷 tasklet 工作佇列。軟中斷軟中斷適用於像網路這樣效能要求非常高的情況使用,可以再所有處理器上執行,兩個型別相同的軟中斷有可能被同時執行。軟中斷在編譯期間必須進行靜態註冊。軟中斷使用的比較少 軟中斷對時間要求比較嚴格,對加鎖要求高。如果需要擴充套件到多處理器執行...

軟中斷 tasklet 工作佇列

深入理解linux核心 筆記4 軟中斷 tasklet 工作佇列 2009年06月02日 星期二 10 48 軟中斷 tasklet和工作佇列並不是linux核心中一直存在的機制,而是由更早版本的核心中的 下半部 bottom half 演變而來。下半部的機制實際上包括五種,但2.6版本的核心中,下...

軟中斷 tasklet 工作佇列

軟中斷 tasklet和工作佇列並不是linux核心中一直存在的機制,而是由更早版本的核心中的 下半部 bottom half 演變而來。下半部的機制實際上包括五種,但2.6版本的核心中,下半部和任務佇列的函式都消失了,只剩下了前三者。本文重點在於介紹這三者之間的關係。函式細節將不會在本文中出現,可...