MAKEDEV(8) Linux Programmer's Manual MAKEDEV(8)

MAKEDEV - 建立裝置

總覽 (SYNOPSIS)

cd dev; ./MAKEDEV -V
cd dev; ./MAKEDEV [ -n ] [ -v ] update
cd dev; ./MAKEDEV [ -n ] [ -v ] [ -d ] device ...

描述 (DESCRIPTION)

MAKEDEV 是 一個 指令碼程式, 用於 在 /dev 目錄下 建立 裝置, 透過 這些 裝置檔案 可以 訪問 位於 核心 的 驅動程式.

注意, 如果 應用程式 顯示 出錯資訊 ``ENOENT: No such file or directory'', 一般指 裝置檔案 不存在, 而 ``ENODEV: No such device'' 則 表明 核心 沒有 配置 或 裝載 相應的 驅動程式.

選項 (OPTIONS)

顯示 版本資訊 (實際上 是 RCS 版本資訊) 然後 退出.
並不做 真正的 更新, 只是 顯示 一下 它的 執行 效果.
刪除 裝置檔案. 主要 供 MAKEDEV 自己 用.
繁瑣模式. 顯示出 執行的 每一個 動作. 它的 輸出內容 和 -n 選項 的 輸出內容 一樣.

自定義 (CUSTOMISATION)

由於 目前 還沒有 系統 使用者 和 使用者組 的 標準名稱, 你 可能 需要 修改 MAKEDEV 以 配合 你的 系統設定. 在 這個 程式 的 開始位置, 定義了 從 裝置型別 到 使用者, 使用者組 和 訪問許可權 的 對映關係 (例如, 所有的 CD-ROM 裝置 透過 $cdrom 變數 設定). 如果 你 打算 改變 預設定義, 就需要 編輯 這個 部分.

裝置 (DEVICES)

基本選項 (General Option)
該選項 只用於 實現了 /proc/interrupts 的 核心(從 1.1.x 開始). MAKEDEV 掃描 這個檔案, 檢查 目前 核心 配置了 什麼裝置, 它 和 上次 配置 的 裝置 做 比較 (記錄在 檔案 DEVICES 中), 建立 新裝置 或 主裝置號 不相同 的 裝置, 刪除 沒有 配置的 裝置.
建立 通用裝置 子集. 包括 標準裝置, 軟碟機, 各種硬驅, 偽終端, 控制檯裝置, 基本序列裝置, 匯流排滑鼠 和 列印口.
標準裝置. 它們有:
mem - 訪問 物理記憶體;
kmem - 訪問 核心虛擬記憶體;
null - 空裝置 (無限寫入 infinite sink);
port - 訪問 I/O 埠;
zero - 空(0)位元組 來源 (無限讀出 infinite source);
core - /proc/kcore 的 符號連線 (用於 核心除錯);
full - 寫訪問 這個裝置 一定 返回 ENOSPACE;
ram - 虛擬磁碟 (ramdisk);
tty - 訪問 程序 的 控制終端.
執行 MAKEDEV.local. 它是個 指令碼程式, 用來 建立 各種 本地裝置 (local devices).
虛擬終端 (Virtual Terminal)
用於 建立 關聯(associate) 控制檯 的 裝置. 就是 虛擬終端 ttyx, x 從 0 到 63. 裝置 tty0 是 當前的 活動 虛擬終端, 也就是 console. 每個 虛擬終端 有 兩個 裝置, vcsx 和 vcsax, 用做 虛擬終端 的 螢幕轉儲(screen-dump), vcsx 只有 文字, vcsax 還包括 屬性.
序列裝置 (Serial Device)
序列口 和 對應的 撥出裝置(dial-out). 對於 ttySx 裝置, 有 同樣的 裝置 cuax 用於 撥出. 在 一些 簡單 的 應用環境, 這種 形式 可以 避免 使用 協作鎖.
用於 cyclades 智慧 I/O 序列卡 的 撥入和撥出 裝置. 撥入裝置 是 ttyCx, 對應的 撥出裝置 是 cubx. 預設情況是 建立 7線 裝置, 但是 去掉 註釋 可以 改成 15線.
偽終端 (Pseudo Terminal)
引數中的 每個字元 可以 建立 一組 共 16 個 主從偽終端對. 1.2 版本的 核心 支援 64 對. 主偽終端 是 pty[p-s][0-9a-f], 從偽終端是 tty[p-s][0-9a-f].
並行口 (Parallel Port)
標準並行口. 建立的 裝置 是 lp0, lp1lp2. 它們 對應的 埠 是 0x3bc, 0x378 和 0x278. 因此, 有些 機器 上 的 第一個 列印口 是 lp1.
lp 的替換. 埠 由 parx 命名, 代替了 lpx.
匯流排滑鼠 (Bus Mice)
各種 匯流排滑鼠 裝置. 有 logimouse (Logitech bus mouse), psmouse (PS/2-style mouse), msmouse (Microsoft Inport bus mouse) 和 atimouse (ATI XL bus mouse) 和 jmouse (J-mouse).
遊戲杆裝置 (Joystick Device)
遊戲操縱桿. 建立 js0js1.
軟碟機裝置. fdx 裝置 能夠 自動檢測 (盤面)格式, 其他裝置 採用 固定格式, 在 名字中 指定 容量. 命名格式 是 fdxLn, 字母 L 表明 軟盤 規格 (d = 5.25" DD, h = 5.25" HD, D = 3.5" DD, H = 3.5" HD, E = 3.5" ED). 數字 n 代表 這種規格下 的 盤面 容量 (單位是K). 因此 標準的容量 是 fdxd360, fdxh1200, fdxD720, fdxH1440, 和 fdxE2880.
更多的 內容 請參看 Alain Knaff 的 fdutils 發行包.
fd0*fd3* 的 裝置 是 第一個 控制器 上的 軟碟機, 而 fd4*fd7* 則 位於 第二個 控制器 上.
AT 硬碟. 裝置 hdx 提供 對 整個 硬碟 的 訪問, 訪問 分割槽 用 hdx[0-20]. 四個 主分割槽 從 hdx1hdx4, 它們的 邏輯分割槽 從 hdx5 開始 到 hdx20. (主分割槽 可以 配置為 擴充套件分割槽, 擴充套件分割槽 可以 容納 4個 邏輯分割槽). 預設情況下, 一個 裝置 只建立 4個 邏輯分割槽. 如果 要求 更多的 邏輯分割槽, 可以 在 MAKEDEV 中 去掉 相應的 註釋.
驅動器 hda 和 hdb 位於 第一個 控制器 上. 如果 使用 新型的 IDE 驅動器 (而非 老式的 HD 驅動器), 還會有 hdc 和 hdd, 在 第二個 磁碟控制器上. 這些裝置 同樣可以 訪問 IDE CDROM 驅動器.
XT 硬碟. 分割槽結構 和 IDE 硬碟 一樣.
SCSI 硬碟. 分割槽結構 和 IDE 硬碟 類似, 但是 邏輯分割槽 限制在 11 個 以內, (sdx5 到 sdx15). 允許 有 128個 SCSI 硬碟.
自環(loopback) 磁碟裝置. 允許 你 把 普通檔案 當做 塊裝置 使用. 這 意味著 可以 掛載(mount) 各種 檔案系統 的 映像(檔案), 用起來 和 普通 的 檔案系統 一樣. 一般 建立 8個 裝置, loop0 到 loop7.
磁帶裝置 (Tape Device)
SCSI 磁帶. 有 可回捲(rewinding)的 磁帶裝置 stx 和 不可回捲(non-rewinding) 的 nstx.
QIC-80 磁帶. 建立 的 裝置 有 rmt8, rmt16, tape-dtape-reset.
軟碟機磁帶 (QIC-117). 根據 不同的 驅動方法, 有 四種 存取 方法 0, 1, 2 和 3, 對應 各自的 裝置 rftx (可回捲) 和 nrftx (不可回捲). 另外 還提供了 相容裝置 ftapenftape , 它們是 rft0nrft0 的 符號連線.
SCSI CD 播放器.
Sony CDU-31A CD 播放器.
Mitsumi CD 播放器.
Sony CDU-535 CD 播放器.
LMS/Philips CD 播放器.
Sound Blaster CD 播放器. 核心 能夠 支援 16個 CDROM, 透過 sbpcd[0-9a-f] 訪問. 它們 每四個 一組 分配 在 各個 控制器 上. sbpcdsbpcd0 的 符號連線.
掃描器 (Scanner)
Logitech ScanMan32 & ScanMan 256.
Mustek M105 手持式.
A4Tek 彩色手持式.
音訊 (Audio)
建立 供 聲音驅動程式 使用的 音訊裝置. 包括 mixer, sequencer, dspaudio.
PC 揚聲器 聲音驅動程式 的 裝置. 有 pcmixer. pxsp, 和 pcaudio.
雜項 (Miscellaneous)
通用 SCSI 裝置. 從 sgasgh , sg0sg7. 它們 允許 對 任何 SCSI 裝置 發出 任意指令. 可以 查詢 裝置資訊, 或者 控制 不是 磁碟, 磁帶 或 CDROM 的 SCSI 裝置 (例如 掃描器, 可擦寫CDROM).
允許 任何程式 從 檔案描述符 x 中 獲取 輸入, 檔名 是 /dev/fd/x. 而且 還建立了 /dev/stdin, /dev/stdout, 和 /dev/stderr. (注意, 這些 只是 到 /proc/self/fd 的 符號連線).
IBCS2 模擬器 所需的 裝置(和符號連線).
電源管理裝置.
DCF-77 radio clock 驅動程式 用的 裝置.
核心模組 的 演示裝置. 見 模組 源程式.
網路裝置
Linux 曾經在 /dev 下面 放了一些 裝置檔案, 用於 控制 網路裝置, 現在 取消了. 想知道 核心 支援 什麼 網路裝置, 請 檢視 /proc/net/dev.

另見 (SEE ALSO)

Linux Allocated Devices, H. Peter Anvin 維護, <Peter.Anvin@linux.org>.

作者 (AUTHOR)

Nick Holloway, <Nick.Hollowa

徐明 <xuming@iname.com>

2001/11/03

《中國linux論壇man手冊頁翻譯計劃》:

http://cmpp.linuxforum.net

本頁面中文版由中文 man 手冊頁計劃提供。
中文 man 手冊頁計劃:https://github.com/man-pages-zh/manpages-zh

14th August 1994 Linux