linux系統中設備分為3類:1、字元設備,是能夠像位元組流一樣被存取的設備,當對字元設備發出讀寫請求,對應的IO操作立即發生;2、塊設備,是Linux系統中進行TO操作時必須以塊為單位進行訪問的設備,塊設備能夠安裝文件系統;3、網絡設備,由Linux的網絡子系統驅動,負責數據包的發送和接收,而不是面向流設備,因此在Linux系統檔案系統中網路設備沒有節點。
本教學操作環境:linux7.3系統、Dell G3電腦。
linux系統中裝置
Linux系統中的裝置可以分為字元裝置、區塊裝置和網路裝置這3類。
(1)字元設備
字元設備是能夠像位元組流一樣被存取的設備,當對字元設備發出讀取和寫入請求,對應的IO操作立即發生。 Linux系統中許多設備都是字元設備,如字元終端機、串列埠、鍵盤、滑鼠等。在嵌入式Linux 開發中,接觸最多的就是字元裝置以及驅動程式。
(2)塊設備
塊設備是Linux系統中進行TO操作時必須以塊為單位進行存取的設備,塊設備能夠安裝檔案系統。區塊裝置驅動會利用一塊系統記憶體作為緩衝區,因此對區塊裝置發出讀寫訪問,並不一定立即產生硬體I/O操作。 Linux系統中常見的區塊裝置有如硬碟、軟驅等等。
(3)網路設備
網路設備既可以是網路卡這樣的硬體設備,也可以是一個純軟體設備如回環設備。網路設備由Linux的網路子系統驅動,負責資料包的發送和接收,而不是面向流設備,因此在Linux系統檔案系統中網路設備沒有節點。網路設備的存取是透過socket呼叫產生,而不是普通的檔案操作如 open/closc和 read/write等。
驅動在linux中的地位
驅動程式是Linux系統中裝置與使用者之間的橋樑,在Linux系統中,存取裝置必須透過設備驅動進行操作,用戶程式是不能直接操作設備的。 Linux系統中硬體、驅動和使用者程式的關係如圖2.2所示。
驅動程式運行與核心空間,用戶程式只能透過核心提供的系統調用,由經VFS 以及驅動程式才能存取和操作硬件,硬體設備傳遞的數據也必須經過驅動、VFS和系統呼叫才能被使用者程式接收。所以說,設備驅動是應用程式存取系統設備以及進行資料傳遞的橋樑和通道。
相關推薦:《Linux影片教學》
以上是linux系統中設備分為幾類的詳細內容。更多資訊請關注PHP中文網其他相關文章!