W3Cschool
恭喜您成為首批注冊用戶
獲得88經驗值獎勵
迄今, 我們未曾關心并發(fā)的問題 -- 就是說, 當系統(tǒng)試圖一次做多件事時發(fā)生的情況. 然而, 并發(fā)的管理是操作系統(tǒng)編程的核心問題之一. 并發(fā)相關的錯誤是一些最易出現又最難發(fā)現的問題. 即便是專家級 Linux 內核程序員偶爾也會出現并發(fā)相關的錯誤.
早期的 Linux 內核, 較少有并發(fā)的源頭. 內核不支持對稱多處理器(SMP)系統(tǒng), 并發(fā)執(zhí)行的唯一原因是硬件中斷服務. 那個方法提供了簡單性, 但是在有越來越多處理器的系統(tǒng)上注重性能并且堅持系統(tǒng)要快速響應事件的世界中它不再可行了. 為響應現代硬件和應用程序的要求, Linux 內核已經發(fā)展為很多事情在同時進行. 這個進步已經產生了很大的性能和可擴展性. 然而, 它也很大地使內核編程任務復雜化. 設備啟動程序員現在必須從一開始就將并發(fā)作為他們設計的要素, 并且他們必須對內核提供的并發(fā)管理設施有很強的理解.
本章的目的是開始建立那種理解的過程. 為此目的, 我們介紹一些設施來立刻應用到第 3 章的 scull 驅動. 展示的其他設施暫時還不使用. 但是首先, 我們看一下我們的簡單 scull 驅動可能哪里出問題并且如何避免這些潛在的問題.
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯系方式:
更多建議: