ioctl(입력/출력 제어) 호출은 장치의 입력과 출력을 처리하기 위한 하위 수준의 루틴입니다.
응용프로그램은 터미널 표시를 적절히 구성하기 위해 termcap 및 terminfo 데이터베이스를 사용합니다.
한국어 Solaris 운영 체제은 일반 EUC 처리에 ioctl STREAMS 명령을 사용합니다. ioctl 요청에 대한 설명은 다음 표와 같습니다.
표 12–1 ioctl요청 및 설명
ioctl 요청 |
설명 |
---|---|
EUC_WGET |
TTY 스트림에서 cswidth값 얻기 |
EUC_WSET |
TTY 스트림의 cswidth값 설정 |
EUC_OXLOFF |
코드 변환을 OFF로 설정 |
EUC_OXLON |
코드 변환을 ON으로 설정 |
터미널에서 수행되는 문자 코드 변환은 EUC_OXLON 및 EUC_OXLOFF으로 제어합니다.
termcap 및 terminfo 데이터베이스는 터미널 특성을 응용 프로그램에 맞추는 데 사용됩니다. termcap 데이터베이스의 변수는 다음 표의 설명과 같습니다.
표 12–2 termcap변수 및 설명
변수 |
설명 |
---|---|
dv |
장치 유형: 언어 및 코드 세트 |
ci |
다중 코드 세트용 초기 시퀀스 |
s0 |
코드 세트 0으로 시프트 |
s1 |
코드 세트 1로 시프트 |
s2 |
코드 세트 2로 시프트 |
s3 |
코드 세트 3으로 시프트 |
다음은 terminfo의 확장입니다. s0-s3 문자열 값은 터미널 입력/출력 동안 각 코드 세트용 데이터 선언 메커니즘으로 사용됩니다.
표 12–3 terminfo 변수 및 설명
변수 |
단축명 |
Tc |
정의 |
---|---|---|---|
device_type |
devt |
dv |
장치 유형: 언어 및 코드 세트 |
code_set_init |
csin |
ci |
다중 코드 세트용 초기 시퀀스 |
set0_des_set |
s0ds |
s0 |
코드 세트 0으로 시프트 |
set1_des_set |
s1ds |
s1 |
코드 세트 1로 시프트 |
set2_des_set |
s2ds |
s2 |
코드 세트 2로 시프트 |
set3_des_set |
s3ds |
s3 |
코드 세트 3으로 시프트 |