Linux設(shè)備文件與設(shè)備驅(qū)動程序之間的關(guān)系
設(shè)各驅(qū)動程序在系統(tǒng)中的位置如圖1所示。 由于設(shè)各驅(qū)動程序是直接與外部設(shè)各的寄存器打交道的,并且由于外部設(shè)各的多樣性及其快速的發(fā)展,設(shè)各驅(qū)動程序常常是由外部設(shè)各供應(yīng)廠商或者是需要掛接外部設(shè)備的計算機開發(fā)人員提供的,因此,驅(qū)動程序不便與linux內(nèi)核編制在一起形成一個一體化的結(jié)構(gòu)。于是,linux允許把外部設(shè)備以內(nèi)核模塊的形式來提供設(shè)各驅(qū)動程序。這樣就可使用戶根據(jù)需要'動態(tài)地向linux內(nèi)核插入設(shè)各驅(qū)動模塊,從而大大提高了內(nèi)核的靈活性?! ≡O(shè)備驅(qū)動程序與文件系統(tǒng)及應(yīng)用程序的關(guān)系如圖2所示。
圖1設(shè)備驅(qū)動程序在系統(tǒng)中的位置
圖2 設(shè)備驅(qū)動程序與文件系統(tǒng)及應(yīng)用程序的關(guān)系