ioctl(輸入/輸出控制)呼叫是低層次的常式,用來處理裝置輸入和輸出。
應用程式會使用 termcap 和 terminfo 資料庫來適當地配置它們的終端機顯示。
繁體中文 Solaris 作業系統使用 ioctl STREAMS 指令進行一般的 EUC 處理。下面是這些 ioctl 呼叫及其效果的總結:
從 TTY 串流取得 cswidth 值
設定 TTY 串流的 cswidth 值
將字碼轉換設定為 OFF
將字碼轉換設定為 ON
進出終端機轉換字碼的字元是由 EUC_OXLON 和 EUC_OXLOFF 控制的。
termcap 和 terminfo 資料庫可用來修改應用程式的終端機特性。
下表列出 termcap 資料庫的延伸:
表 11–1 ioctl 要求和說明
變數 |
描述 |
---|---|
dv |
裝置類型:語言和字碼集 |
ci |
多個字碼集的起始順序 |
s0 |
移位到字碼集 0 |
s1 |
移位到字碼集 1 |
s2 |
移位到字碼集 2 |
s3 |
移位到字碼集 3 |
下表列出了 terminfo 的延伸。s0-s3 字串值是做為終端機 I/O 期間個別字碼集的資料公布機制。
表 11–2 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 |