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