entn 特殊文件
用途
通过以太网设备处理程序提供对以太网高性能 LAN 适配器的访问。
描述
/dev/entn 字符特殊文件提供对以太网设备处理程序的访问,以便提供对以太网 LAN 的访问。 设备处理程序最多支持四个适配器,每个适配器可能正在运行标准以太网和/或 IEEE 802.3 协议。
使用注意事项
访问以太网设备处理程序时,应考虑以下事项:
驱动程序初始化和终止
可以装入和卸载设备处理程序。 处理程序支持用于初始化和终止自身的配置调用。
特殊文件支持
将根据设备处理程序的操作方式来讨论除 open 和 close 子例程以外的调用。
子例程支持
以太网设备处理程序支持 open 和 close, read, 以及采用以下方式的 write 子例程:
打开和关闭子例程
设备处理程序支持 /dev/entn 特殊文件作为字符多路复用特殊文件。 必须打开特殊文件以进行读写 (O_RDWR)。 但是,关闭特殊文件没有特殊注意事项。 open 调用中使用的特殊文件名取决于设备的打开方式。 特殊文件名的类型为:
| 项 | 描述 |
|---|---|
| /dev/ent n | An 打开 call to this device is used to start the device handler for the selected port, where the value of N is 0 <= N <= 7. |
| /dev/ent n /D | An 打开 call to this device is used to start the device handler for the selected port in diagnostic mode, where the value of N is 0 <= N <= 7. |
read 子例程
可以采用 read, readx, readv或 readvx 子例程的形式。 对于此调用,设备处理程序会将数据复制到调用者指定的缓冲区中。
write 子例程
可以采用 write, writex, writev或 writevx 子例程的形式。 对于此调用,设备处理程序将用户数据复制到缓冲区并在 LAN 上传输数据。
错误代码
通过 dev/entn 特殊文件访问设备处理程序时,可能会返回以下错误代码:
| 项 | 描述 |
|---|---|
| EACCES | 由于下列其中一个原因,访问该端口的许可权被拒绝:
|
| EAFNOSUPPORT | 该协议不支持地址系列,或者未设置地址中的多点广播位。 |
| 再次 | 传输队列已满。 |
| EBUSY | 由于设备已以诊断方式打开,或者已达到最大打开数,因此请求被拒绝。 |
| EEXIST | 定义设备结构 (DDS) 已存在。 |
| Efault | 指定的地址或参数无效。 |
| EINTR | 子例程调用已中断。 |
| EINVAL | 指定了无效的范围或操作码,或者设备未处于诊断方式。 |
| EIO | 发生 I/O 错误。 |
| ENOBUFS | 没有可用的缓冲区。 |
| ENOCONNECT | 未建立连接。 |
| ENODEV | 设备不存在。 |
| ENOENT | 没有要删除的 DDS。 |
| ENOMEM | 设备没有足够的内存。 |
| ENOMSG | 没有所需类型的消息可用。 |
| ENOSPC | 设备上没有剩余空间 (多点广播表已满)。 |
| ENOTREADY | 设备未就绪,未发出 CIO_START 操作,或者发出了该操作但未完成。 |
| ENXIO | 设备不存在,或超过了最大适配器数。 |
| EUNATCH | 未连接协议驱动程序。 |