學完這一章,你將能夠做以下事情:
解釋設備檔的用途
解釋主號和次號的意義
描述塊設備和字元設備的不同
使用lsdev來列出內核驅動程式的主號
使用ls -l觀察一個設備檔的主號和次號
使用ioscan列出與一個指定設備關聯的設備檔
使用issf來說明一個設備檔的特徵。
賦予磁片,磁帶,或者CD設備檔案名,確定控制卡的目標號和關聯設備的目標位址
賦予一個終端或者一個modern設備檔案名,確定控制卡號和關聯設備的埠號。
描autoconfig進程的工作原理
使用insf創建設備檔
設備檔是什麼?
作業系統與外部設備(例如,磁帶磁碟機,磁片磁碟機,印表機,終端,modern)是通過一種被稱為設備檔的檔來進行通信。 unix輸入輸出到外部設備的方式和輸入輸出到一個檔的方式是相同的。 在UNIX 同一個外部設備進行通訊之前,這個設備必須首先要有一個設備檔存在。 例如,每一個終端都有自己的設備檔來供UNIX寫資料(出現在終端螢幕上),和讀取資料(使用者通過鍵盤輸入)。
設備檔和普通檔不一樣,設備檔中並不包含任何資料。
作業系統通過設備檔來與一個設備進行通訊。 設備檔存在於/dev目錄下。
注意:設備檔與特殊檔是同義字。 你可以互換這兩個術語。
由於UNIX作業系統為你創建所有的設備檔,所以在你存取一個外部設備的時候,你需要知道這個設備對應的設備檔案名。 8630.html">有時候你會需要自己創建一個設備檔。 如果你永久地去掉一個外部設備,你應該刪除它對應的設備檔。
以下的例子說明了UNIX命令如何使用一個設備檔:
#tar -cvf /dev/rmt/0m /usr
tar應用使用-f選項來打開一個檔以供輸出。 然後tar會備份資料到那個檔。 tar可以寫到一個普通檔或者直接寫到一個設備。 tar並不需要知道它們之間的不同。
# echo hello > /dev/tty0p1
在這個例子中,echo命令的標準輸出通過被重定向到一個終端,其方式是通過這個終端的設備檔
使用ls -l列出設備檔
使用ls -l /dev列出設備檔案名
brw-r----- 1 root sys 31 0x005000 Feb 10 1997 /dev/dsk/c0t5d0
brw-r----- 1 root sys 31 0x006000 Feb 10 1997 /dev/dsk/c0t6d0
crw-r----- 1 root sys 31 0x005000 Feb 10 1997 /dev/rdsk/c0t5d0
crw-r----- 1 root sys 31 0x006000 Feb 10 1997 /dev/rdsk/c0t6do
crw-r----- 2 root tty 17 0x000001 Jan 9 09:25 /dev/ttyp1
crw-r----- 2 root tty 17 0x000002 Jan 9 17:25 /dev/ttyp2
設備檔案類型 主號 次號 設備檔案名
設備檔通常都是在/dev目錄下。 你可以使用ls -l命令來列出這個目錄下的檔,就像你列出其它目錄下的檔一樣。 注意:ls -l列出的設備檔和其它檔有一點點的不同。