fd 特殊文件
用途
提供对软盘设备驱动程序的访问。
描述
联邦 特殊文件提供对软盘驱动器中的软盘的块和字符 (原始) 访问权。 特殊文件名通常同时指定驱动器号和软盘的格式。 异常为 /dev/fd0 和 /dev/fd1,它们分别指定软盘驱动器 0 和 1 ,而不指定它们的格式。
通用特殊文件 /dev/fd0 和 /dev/fd1 自动确定驱动器 0 和驱动器 1 的软盘类型。 首先,设备驱动程序尝试使用该驱动器类型的缺省软盘的特征来读取软盘。 如果此操作失败,那么设备驱动程序将更改其特征并尝试进行读取,直到它成功读取软盘或尝试了设备驱动程序所支持的驱动器类型的所有可能性为止。
受支持的软盘类型
fd 特殊文件支持三个软盘驱动器: 1.2MB, 5.25-inch 软盘驱动器, 1.44MB 和 2.88MB, 3.5-inch 软盘驱动器。 所有 fd 特殊文件名 (通用特殊文件 /dev/fd0, /dev/fd1, /dev/rfd0和 /dev/rfd1除外) 都包含指示如何处理软盘的后缀。 这些特殊文件名的格式为前缀 XY ,其中前缀、X 和 Y 变量的含义如下:
| 项 | 描述 |
|---|---|
| prefix | 特殊文件类型。 可能的值为 联邦 和 雷夫德,其中 R 指示对特殊文件的原始访问。 |
| X | 驱动器号指示灯。 0 和 1 的可能值分别指示驱动器 0 和 1。 |
| Y | 软盘格式指示符。 可能的值取决于正在使用的软盘的类型。 允许使用单个字符或后跟数字字符的十进制小数点。 可能的值为:
|
1.44MB, 3.5-inch 软盘特殊文件
有 10 个不同的特殊文件可用于 1.44MB, 3.5-inch 软盘驱动器。 对于此驱动器类型,假定的缺省软盘类型是双面, 80 柱面,每磁道 18 个扇区的软盘。
作为特殊文件名的后缀的 H 或 .18 (例如,/dev/rfd0h或/dev/fd0.18) 强制将软盘作为双侧, 80-柱面, 18 个扇区/磁道软盘处理。 作为特殊文件名的后缀的 我 或 .9 (例如,/dev/fd1l或/dev/rfd0.9) 强制将软盘视为双侧, 80-9 , 9 扇区/磁道软盘。
2.88MB, 3.5-inch 软盘特殊文件
有 12 个不同的特殊文件可用于 2.88MB, 3.5-inch 软盘驱动器。 对于此驱动器类型,假定的缺省软盘类型是双面, 80-柱面, 36 个扇区/磁道软盘。
作为特殊文件名的后缀的 H 或 .36 (例如,/dev/fd1h或/dev/fd0.36) 强制将软盘视为双面, 80-柱面, 36 个扇区/磁道软盘。 作为特殊文件名的后缀的 我 或 .9 (例如,/dev/rfd0l或/dev/fd1.9) 强制将软盘视为双侧, 80-9 , 9 扇区/磁道软盘。 .18 的后缀 (例如:/dev/fd1.18) 强制将软盘视为双面, 80-柱面, 18 个扇区-每磁道软盘。
1.2MB, 5.25-inch 软盘特殊文件
有 10 个不同的特殊文件可用于 1.2MB, 5.25-inch 软盘驱动器。 对于此驱动器类型,假定的缺省软盘类型是双面, 80 柱面,每磁道 15 个扇区的软盘。
使用注意事项
将子例程与 联邦 特殊文件配合使用时,请考虑以下项:
| 项 | 描述 |
|---|---|
| 打开和关闭子例程 | 一次只有一个进程可以发出 开 子例程以获取对特定驱动器的访问权。 但是,由成功打开软盘驱动器的父进程创建的所有子进程都将继承打开的软盘驱动器。 |
| 读写子例程 | 无特殊注意事项。 |
| ioctl 子例程 | 可能的 ioctl 操作及其描述如下所示:
格式化期间使用的软盘特性是设备驱动程序在接收格式化命令时所使用的值。 在发出 格式 命令之前,需要将这些特征设置为期望的值。 有三种方法可以执行此操作:
对于格式化,仅当设置了 O_NDELAY 标志时才应打开软盘驱动程序。 否则,驱动程序将尝试确定驱动器中软盘的类型,从而导致打开操作失败。 |