kbd 특수 파일

용도

기본적으로 연결된 키보드에 대한 액세스를 제공합니다.

설명

kbd 특수 파일은 원시 키보드에 대한 인터페이스입니다. 이는 애플리케이션이 키보드에서 운영자 입력을 수신하고 키보드 LED를 제어하며 다양한 키보드 매개변수를 변경할 수 있는 인터페이스를 제공합니다. 특수 파일은 또한 애플리케이션이 키보드 내에 위치한 스피커를 통해 조작자에게 가청 신호를 전송할 수 있게 합니다.

구성

사운드 볼륨, 클릭 볼륨, typematic 비율 및 typematic 지연은 ioctl 서브루틴을 통해 애플리케이션에 의해 구성 가능합니다. 이러한 변경사항은 ODM 데이터베이스에 반영되지 않습니다. ODM 데이터베이스에서 이러한 속성을 변경하려면 chhwkbd 명령을 사용하십시오.

사용 고려사항

열기

이 서브루틴 호출은 애플리케이션과 기본적으로 연결된 키보드 사이에 채널을 작성합니다. 두 개의 채널이 지원됩니다. open 서브루틴 호출은 MODEOflag 매개변수가 무시되는 것을 제외하고 정상적으로 처리됩니다. 모든 키보드 입력은 입력 링이 설정될 때까지 비워집니다. 가장 최근의 열기와 연관된 입력 링만이 입력 보고서를 수신합니다.

닫기

kbd 장치가 두 번 열릴 때, 입력은 close 서브루틴 호출 후에 첫 번째 open이전에 등록된 입력 링을 통해 보고됩니다.

읽기 및 쓰기

키보드 장치 드라이버는 readwrite를 통해 데이터를 리턴하거나 승인하지 않습니다. 이러한 호출은 /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 명령 및 입력 링 보고서 형식에 대한 선언을 포함합니다.