硬中斷、軟中斷和信號的區別:
硬中斷是外部設備對CPU 的中斷,
軟中斷通常是硬中斷服務程序對內核的中斷,
而信號則是由內核(或其他進程)對某個進程的中斷。
Linux 的中斷處理分爲兩個半部,頂半部處理緊急的硬件操作,底半部處理不緊急的耗時操作。tasklet
和工作隊列都是調度中斷底半部的良好機制,tasklet 基於軟中斷實現。內核定時器也依靠軟中斷實現。
內核中的延時是忙等待或者睡眠等待,爲了充分利用CPU 資源,使系統有更好的吞吐性能,在對延遲
時間的要求並不是很精確的情況下,睡眠等待通常是值得推薦的。