linux字符設(shè)備驅(qū)動程序 linux字符設(shè)備文件有什么作用?
linux字符設(shè)備文件有什么作用?/Dev/audio是字符設(shè)備文件,其他是塊設(shè)備文件。其他設(shè)備,如/dev/CDROM、/dev/fd0、/dev/had,都是磁盤(CD-ROM驅(qū)動器、軟盤驅(qū)動器、
linux字符設(shè)備文件有什么作用?
/Dev/audio是字符設(shè)備文件,其他是塊設(shè)備文件。其他設(shè)備,如/dev/CDROM、/dev/fd0、/dev/had,都是磁盤(CD-ROM驅(qū)動器、軟盤驅(qū)動器、主硬盤)。字符設(shè)備是串行口設(shè)備,如鍵盤和鼠標(biāo),具有串行讀取的特點,不能切斷輸出(即不能隨機(jī)訪問)。例如,鼠標(biāo)通過滑動而不是跳躍來移動。
塊設(shè)備通常是存儲設(shè)備,如硬盤、軟盤等。其特點是隨機(jī)訪問系統(tǒng),如硬盤。您可以在硬盤的不同塊中讀寫,也可以隨意訪問硬盤的數(shù)據(jù)。
linux中什么是塊設(shè)備和字符設(shè)備?
Linux中有兩種類型的I/O設(shè)備:字符設(shè)備和塊設(shè)備。這兩種設(shè)備沒有嚴(yán)格的限制,但根據(jù)不同的功能進(jìn)行分類。(1) 字符設(shè)備:提供連續(xù)的數(shù)據(jù)流,應(yīng)用程序可以順序讀取,通常不支持隨機(jī)存取。相反,這種設(shè)備支持按字節(jié)/字符讀寫數(shù)據(jù)。例如,鍵盤、串行端口和調(diào)制解調(diào)器是典型的字符設(shè)備。(2) 塊設(shè)備:應(yīng)用程序可以隨機(jī)訪問設(shè)備數(shù)據(jù),程序可以自行確定讀取數(shù)據(jù)的位置。硬盤、軟盤、光驅(qū)和閃存是典型的塊設(shè)備。應(yīng)用程序可以尋址磁盤上的任何位置并從中讀取數(shù)據(jù)。此外,數(shù)據(jù)只能以塊的倍數(shù)讀取和寫入(通常為512b)。與字符設(shè)備不同,塊設(shè)備不支持基于字符的尋址??傊@兩種設(shè)備的根本區(qū)別在于它們是否可以隨機(jī)訪問。字符設(shè)備只能順序讀取,而塊設(shè)備可以隨機(jī)讀取。
塊設(shè)備和字符設(shè)備有什么區(qū)別?
在Linux中使用ls-l命令列出文件時,以B和C開頭的文件分別表示塊設(shè)備和字符設(shè)備,這是特殊類型的文件。也就是說,linux字符設(shè)備文件以字母C開頭。您可以執(zhí)行以下命令來查看大量字符設(shè)備的文件:ls-l/dev | more。執(zhí)行結(jié)果如下圖所示:
linux字符設(shè)備文件類型的標(biāo)志?
所謂塊設(shè)備是指以“塊”為單位對其信息的訪問,如普通光盤、硬盤、軟盤、磁帶等,塊長度為512字節(jié)或1024字節(jié)或4096字節(jié)。塊設(shè)備可以通過塊設(shè)備特殊文件直接訪問。為了提高數(shù)據(jù)傳輸?shù)男?,在塊設(shè)備驅(qū)動程序中采用了塊緩沖技術(shù)。磁盤和磁帶設(shè)備可以在塊模式和字符模式下訪問,因此它們都是塊設(shè)備和字符設(shè)備。因此,上一節(jié)中的字符設(shè)備切換表配備了一組用于磁盤和磁帶的字符驅(qū)動程序。從概念上講,我們傾向于以一種類型訪問設(shè)備。例如,對于磁帶機(jī),采用塊模式,即將磁帶機(jī)分類為塊設(shè)備類型。如果磁帶機(jī)采用字符模式,雖然是可行的,但它比塊模式占用更多的磁帶空間來存儲相同數(shù)量的數(shù)據(jù)。
linux里什么是塊設(shè)備?
可以“讀、寫、發(fā)控制指令”的是文件,那么什么不能是文件呢?