kbd 특수 파일
용도
기본적으로 연결된 키보드에 대한 액세스를 제공합니다.
설명
kbd 특수 파일은 원시 키보드에 대한 인터페이스입니다. 이는 애플리케이션이 키보드에서 운영자 입력을 수신하고 키보드 LED를 제어하며 다양한 키보드 매개변수를 변경할 수 있는 인터페이스를 제공합니다. 특수 파일은 또한 애플리케이션이 키보드 내에 위치한 스피커를 통해 조작자에게 가청 신호를 전송할 수 있게 합니다.
구성
사운드 볼륨, 클릭 볼륨, typematic 비율 및 typematic 지연은 ioctl 서브루틴을 통해 애플리케이션에 의해 구성 가능합니다. 이러한 변경사항은 ODM 데이터베이스에 반영되지 않습니다. ODM 데이터베이스에서 이러한 속성을 변경하려면 chhwkbd 명령을 사용하십시오.
사용 고려사항
열기
이 서브루틴 호출은 애플리케이션과 기본적으로 연결된 키보드 사이에 채널을 작성합니다. 두 개의 채널이 지원됩니다. open 서브루틴 호출은 MODE 및 Oflag 매개변수가 무시되는 것을 제외하고 정상적으로 처리됩니다. 모든 키보드 입력은 입력 링이 설정될 때까지 비워집니다. 가장 최근의 열기와 연관된 입력 링만이 입력 보고서를 수신합니다.
닫기
kbd 장치가 두 번 열릴 때, 입력은 close 서브루틴 호출 후에 첫 번째 open이전에 등록된 입력 링을 통해 보고됩니다.
읽기 및 쓰기
키보드 장치 드라이버는 read 및 write를 통해 데이터를 리턴하거나 승인하지 않습니다. 이러한 호출은 /dev/null에 대한 호출이 작성된 것처럼 작동합니다. 입력 링을 통해 입력 드라이버로부터 입력 데이터가 수신됩니다.
ioctl
키보드 장치 드라이버는 다음 ioctl 명령을 지원합니다.
| 항목 | 설명 |
|---|---|
| IOCINFO | devinfo 구조를 리턴합니다. |
| KSALARM | 경보를 울립니다. |
| KSCFGCLICK | 키보드 클릭을 제어합니다. |
| KSDIAGMODE | 진단 모드를 사용/사용 안함으로 설정합니다 (사용자 모드 전용). |
| KSLED | 키보드 LED를 설정/재설정합니다. |
| KSKAP | 활성 유지 폴링을 사용/사용 안함으로 설정합니다 (사용자 모드 전용). |
| KSKAPACK | 활성 유지 폴링을 수신확인합니다 (사용자 모드 전용). |
| KSQUERYID | 키보드 디바이스 ID를 조회합니다. |
| KSQUERYSV | 키보드 서비스 벡터를 조회합니다 (커널 모드 전용). |
| KSREGRING | 입력 링을 등록하십시오. |
| KSRFLUSH | 입력 링을 비웁니다. |
| KSTDELAY | 유형 지연을 설정하십시오. |
| KSTRATE | 유형 비율을 설정하십시오. |
| KSVOLUME | 알람 볼륨 설정 |
오류 코드
오류 코드는 /usr/include/sys/errno.h 파일에서 찾을 수 있습니다.
| 항목 | 설명 |
|---|---|
| EFAULT | 주소에 액세스할 수 있는 권한이 충분하지 않거나 주소가 올바르지 않음 |
| EIO | I/O 오류가 발생했음을 표시합니다. |
| ENOMEM | 필요한 페이징 조작을 위한 메모리가 충분하지 않음을 표시합니다. |
| ENOSPC | 파일 시스템 또는 페이징 공간이 충분하지 않음을 표시합니다. |
| EINVAL | 올바르지 않은 인수가 지정되었음을 표시합니다. |
| EINTR | 요청이 신호에 의해 인터럽트되었음을 표시합니다. |
| EPERM | 영구 오류가 발생했음을 표시합니다. |
| EBUSY | 디바이스가 사용 중임을 표시합니다. |
| 엔시오 | 지원되지 않는 장치 번호가 지정되었음을 |
| ENODEV | 지원되지 않는 디바이스 또는 디바이스 유형 불일치를 표시합니다. |
파일
| 항목 | 설명 |
|---|---|
| /usr/include/sys/inputdd.h | ioctl 명령 및 입력 링 보고서 형식에 대한 선언을 포함합니다. |