歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> 關於Linux

linux 補充原語, 中斷,軟中斷

解決up可能會訪問一個不存在的數據結構的問題(down後釋放信號量): 見深入3,page216-217.

1. completion()對應up()

2. wait_for_completion()對應down

與信號量的不同在於, completion等待隊列的自旋鎖確保completion()和wait_for_completion()不會並發,而信號量用於避免down()並發執行

禁中斷:local_irq_disable(), local_irq_save()

使能中斷:local_irq_enable(), local_irq_restore()

禁止可延遲函數:local_bh_disable()

使能可延遲函數:locaLbh_enable()

軟中斷和可延遲函數(tasklet)運行在中斷上下文(在硬件中斷處理結束時激活), 當然也可通過禁止中斷的方式禁止, 但是有時我們還是希望cpu能響應中斷,這是可用preempty字段中的軟中斷計數器,如果為正,不執行就不執行軟中斷(local_bh_disable()給該值加1)

Copyright © Linux教程網 All Rights Reserved