mpcn 特殊文件
用途
通过 SDLC COMIO 设备驱动程序仿真器来提供对 HDLC 网络设备驱动程序的访问。
描述
/dev/mpcn 字符特殊文件通过 SDLC COMIO 设备驱动程序仿真器提供对 HDLC 网络设备驱动程序的访问,以便提供对同步网络的访问。 SDLC COMIO 仿真器设备处理程序支持多个 HDLC 网络设备。
使用注意事项
访问 SDLC COMIO 仿真器设备处理程序时,请考虑以下信息。
驱动程序初始化和终止
可以装入和卸载设备处理程序。 该处理程序支持用于初始化和终止自身的配置调用。
特殊文件支持
SDLC COMIO 仿真器设备处理程序使用 /usr/include/sys/mpqp.h 文件中定义的 t_start_dev 和 t_chg_parms 结构来保留与现有 GDLC , MPQP API 和 SNA 服务接口的兼容性。 但是,对于下列 t_start_dev 结构字段,仅支持 #define 值的子集:
| 项 | 描述 |
|---|---|
| phys_link | 指示物理链路协议。 一次只有一种类型的物理链路是有效的。 SDLC COMIO 仿真器设备处理程序支持 PL_232D (EIA-232D) , PL_422A (EIA-422A/v.36) , PL_V35 (V.35) , PL_X21 (仅X.21 已租赁) 和 PL_V25 (V.25bis EIA-422A 自动拨号)。 |
| data_proto | 标识数据协议。 SDLC COMIO 仿真器设备处理程序仅支持 SDLC DATA_PRO_SDLC_HDX (半双工) 和 DATA_PRO_SDLC_FDX (全双工) 值。 |
| baud_rate | 指定发送和接收时钟的波特率。 SDLC COMIO 仿真器设备处理程序仅支持 DCE 提供时钟的外部计时,并且此字段应该设置为零。 |
子例程支持
SDLC COMIO 仿真器设备处理程序通过以下方式支持 开, 关闭, 读, 写和 ioctl 子例程:
打开和关闭子例程
设备处理程序支持 /dev/mpcn 特殊文件作为字符多路复用特殊文件。 必须同时打开特殊文件以进行读写操作 (0-RDWR)。 关闭特殊文件时不存在特殊注意事项。
read 子例程
可以采取 读, 读, 读或 Readvx 子例程调用的形式。 对于此调用,设备处理程序会将用户数据复制到调用者指定的缓冲区中。
write 子例程
可以采取 写, 写, 写或 写 Vx 子例程调用的形式。 对于此呼叫,设备处理程序将用户数据复制到缓冲区中,并使用 HDLC 网络设备驱动程序在广域网上发送数据。
ioctl 子例程
ioctl 子例程支持以下标志:
| 项 | 描述 |
|---|---|
| CIO_START | 启动会话并注册一个网络标识。 |
| CIO_HALT | 停止会话,并除去网络标识。 |
| CIO_QUERY | 返回当前的可靠性,可用性和可维护性 (RAS) 计数器值。 这些值在 /usr/include/sys/comio.h 文件中定义。 |
| MP_CHG_PARMS | 在 SDLC COMIO 设备驱动程序仿真器启动后,允许数据链路控制 (DLC) 更改某些概要文件参数。 |
错误代码
通过 /dev/mpcn 特殊文件获取对设备处理程序的访问权时,可能会返回以下错误代码:
| 项 | 描述 |
|---|---|
| ECHRNG | 指示通道号已超出范围。 |
| EAGAIN | 指示设备处理程序由于缺少系统资源而无法传输数据,或者由于 HDLC 网络设备驱动程序的传输例程返回了错误而无法传输数据。 |
| EBUSY | 指示设备处理程序已被另一个用户使用 (打开/启动)。 |
| EIO | 指示处理程序无法对适配器的请求进行排队。 |
| EFAULT | 指示交叉内存复制服务已失败。 |
| EINTR | 指示某个信号已中断休眠。 |
| EINVAL | 指示下列其中一项:
|
| ENOMEM | 指示下列其中一项:
|
| ENOMSG | 指示 "状态队列" 指针为空,并且没有任何条目。 |
| ENOTREADY | 指示定义设备结构 (DDS) 中的端口状态不在 "数据传输" 方式下,或者隐式停止端口失败。 |
| ENXIO | 指示下列其中一项:
|
此文件通过 HDLC 网络设备驱动程序上的 SDLC COMIO 仿真器设备处理程序来运行。 它模拟了多协议四端口 (MPQP) 设备处理程序的 SDLC API (全双工和半双工)。