外設的驅動模式 中斷 輪詢

2021-10-06 07:23:31 字數 388 閱讀 1449

中斷配合作業系統形成掛起等待模式,掛起等待是順序程式設計。

協程是對擇機輪詢的簡化,將顯式的狀態機設計轉為隱式狀態機,讓非同步程式設計看起來像順序程式設計,簡化設計、提高可讀性。

事件驅動模型是中斷模式的泛化。

dma和fifo是優化措施,將多個中斷或輪詢簡化為乙個中斷或輪詢。

底層驅動是非同步程式設計,上層應用可以按非同步程式設計來使用,也可以按順序程式設計來使用,非同步程式設計可以封裝成順序程式設計。

底層驅動是順序程式設計,上層應用只能按順序程式設計來使用,順序程式設計不能封裝成非同步程式設計。

輪詢模式實現起來比較簡單,但執行效率低,會浪費處理運算資源,擇機輪詢的及時性較差。

中斷模式執行效率高,及時性高,實現起來麻煩一些。

應該按應用需求選擇採用哪種模式,輪詢和中斷各有千秋,各有各的好處。

驅動 按鍵 中斷模式

驅動 按鍵 中斷模式 eint drv.c 驅動 include include include include include include include include include include include static struct class eintdrv class sta...

輪詢 和 中斷 的比較

while 1 週期連續 的檢測外部事件的發生 消耗大量cpu的處理時間 輪詢過程需要和其他 結合 由於cpu可能需要處理其他事件 可能是無關緊要的 可能丟失關鍵事件 週期連續 的檢測外部事件的發生 消耗大量cpu的處理時間 輪詢過程需要和其他 結合 由於cpu可能需要處理其他事件 可能是無關緊要的...

中斷和輪詢的特點

輪詢 對i o裝置的程式輪詢的方式,是早期的計算機系統對 i o裝置的一種管理方式。它定時對各種裝置輪流詢問一遍有無處理要求 輪流詢問之後,有要求的,則加以處理。在處理i o裝置的要求之後,處理機返回繼續工作。儘管輪詢需要時間,但輪詢要比 i o裝置的速度要快得多,所以一般不會發生不能及時處理的問題...