linux中I/O设备分为两类:字符设备和块设备。
Linux中I/O設備分為兩類:字符設備和塊設備。兩種設備本身沒有嚴格限制,但是,基于不同的功能進行了分類。
(1)字符設備:提供連續的數據流,應用程序可以順序讀取,通常不支持隨機存取。相反,此類設備支持按字節/字符來讀寫數據。舉例來說,鍵盤、串口、調制解調器都是典型的字符設備。
eg:tty是Teletype的縮寫。終端是一種字符型設備,它有多種類型,通常使用tty來簡稱各種類型的終端設備。tty是Teletype的縮寫。Teletype是最早出現的一種終端設備,很象電傳打字機(或者說就是?),是由Teletype公司生產的。設備名放在特殊文件目錄/dev/下,終端特殊設備文件一般有以下幾種:
1.串行端口終端(/dev/ttySn)
串行端口終端(Serial Port Terminal)是使用計算機串行端口連接的終端設備。
2.偽終端(/dev/pty/)
偽終端(Pseudo Terminal)是成對的邏輯終端設備,例如/dev/ptyp3和/dev/ttyp3(或著在設備文件系統中分別是/dev/pty/m3和/dev/pty/s3)。
3.控制終端(/dev/tty)
如果當前進程有控制終端(Controlling Terminal)的話,那么/dev/tty就是當前進程的控制終端的設備特殊文件。
4.控制臺終端(/dev/ttyn, /dev/console)
在UNIX系統中,計算機顯示器通常被稱為控制臺終端(Console)。它仿真了類型為Linux的一種終端(TERM=Linux),并且有一些設備特殊文件與之相關聯:tty0、tty1、tty2等。
5.其它類型
還針對很多不同的字符設備存在有很多其它種類的終端設備特殊文件。例如針對ISDN設備的/dev/ttyIn終端設備等。這里不再贅述。
(2)塊設備:應用程序可以隨機訪問設備數據,程序可自行確定讀取數據的位置。硬盤、軟盤、CD-ROM驅動器和閃存都是典型的塊設備,應用程序可以尋址磁盤上的任何位置,并由此讀取數據。此外,數據的讀寫只能以塊(通常是512B)的倍數進行。與字符設備不同,塊設備并不支持基于字符的尋址。
hda一般是指IDE接口的硬盤,hda一般指第一塊硬盤,類似的有hdb,hdc等
sda一般是指SATA接口的硬盤,sda一般指第一塊硬盤,類似的有sdb,sdc等
現在的內核都會把硬盤,移動硬盤,U盤之類的識別為sdX的形式
總結一下,這兩種類型的設備的根本區別在于它們是否可以被隨機訪問。字符設備只能順序讀取,塊設備可以隨機讀取。
總結
以上是生活随笔為你收集整理的linux中I/O设备分为两类:字符设备和块设备。的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 简述Linux文件系统通过i节点把文件的
- 下一篇: linux中在vi编辑器中执行存盘退出命