kbd 特殊文件
用途
提供对本机连接的键盘的访问。
描述
克卜德 特殊文件是用于本机键盘的接口。 它提供了一个接口,应用程序可以通过该接口接收来自键盘的操作员输入,控制键盘指示灯以及更改各种键盘参数。 该特殊文件还允许应用程序通过位于键盘内的扬声器向操作员发送可听信号。
配置
应用程序可通过 ioctl 子例程来配置声音音量,点击音量,打字速率和打字延迟。 这些更改不会反映在 ODM 数据库中。 要在 ODM 数据库中更改这些属性,请使用 chhwkbd 命令。
使用注意事项
OPEN
此子例程调用在应用程序与本机连接的键盘之间创建通道。 支持两个通道。 除了忽略 方式 和 奥 Flag 参数之外,正常处理打开子例程调用。 所有键盘输入都将清空,直到建立输入环为止。 只有与最近打开的项关联的输入环才会接收输入报告。
CLOSE
当 克卜德 设备已打开两次时,在 关闭 子例程调用后,通过在第一个 开之前注册的输入环报告输入。
读写
键盘设备驱动程序不会通过 读 和 写来返回或接受数据。 这些调用的行为与对 /dev/null进行的调用一样。 输入数据是通过输入环从输入驱动程序接收的。
ioctl
该键盘设备驱动程序支持以下 ioctl 命令:
| 项 | 描述 |
|---|---|
| IOCINFO | 返回 开发信息 结构。 |
| KSALARM | 声音警报 |
| KSCFGCLICK | 控制键盘单击。 |
| KSDIAGMODE | 启用/禁用诊断方式 (仅限用户方式)。 |
| KSLED | 设置/重置键盘指示灯。 |
| KSKAP | 启用/禁用保持活动轮询 (仅限用户方式)。 |
| KSKAPACK | 确认保持活动轮询 (仅限用户方式)。 |
| KSQUERYID | 查询键盘设备标识。 |
| KSQUERYSV | 查询键盘服务向量 (仅限内核方式)。 |
| KSREGRING | 注册输入环。 |
| KSRFLUSH | 清空输入环。 |
| KSTDELAY | 设置输入类型延迟。 |
| KSTRATE | 设置类型化速率。 |
| KSVOLUMENT | 设置警报卷 |
错误代码
可以在 /usr/include/sys/errno.h 文件中找到错误代码。
| 项 | 描述 |
|---|---|
| EFAULT | 指示访问地址的权限不足或地址无效。 |
| EIO | 指示发生 I/O 错误。 |
| ENOMEM | 指示内存不足,无法执行必需的页面调度操作。 |
| ENOSPC | 指示文件系统或调页空间不足。 |
| EINVAL | 指示指定了无效参数。 |
| EINTR | 指示请求被信号中断。 |
| EPERM | 指示发生永久错误。 |
| EBUSY | 指示设备正忙。 |
| ENXIO | 指示指定了不受支持的设备号。 |
| ENODEV | 指示不受支持的设备或设备类型不匹配。 |
文件
| 项 | 描述 |
|---|---|
| /usr/include/sys/inputdd.h | 包含 ioctl 命令和输入环报告格式的声明。 |