ioctl(input/output control;輸出入控制)呼叫是處理裝置輸出入的低階常式。
termcap和terminfo資料庫能讓應用程式正確地設定終端機的顯示。
繁體中文Solaris作業環境利用ioctl(2)的STREAMS指令做一般性的 EUC處理。下列為這些ioctl呼叫以及他們的功能之摘要:
表 4-1 ioctl請求和說明
ioctl請求 |
說明 |
---|---|
EUC_WGET |
從TTY串流取得cswidth的值。 |
EUC_WSET |
設定TTY串流中cswidth的值。 |
EUC_OXLOFF |
設定轉碼為關閉(OFF)。 |
EUC_OXLON |
設定轉碼為開啟(ON)。 |
字元在終端機之間的轉碼是由EUC_OXLON和EUC_OXLOFF所控制。
termcap和terminfo是應用程式調整終端機特性所使用的資料庫。 下面所列為針對termcap資料庫所擴充的功能:
表 4-2 termcap變數及說明
變數 |
說明 |
---|---|
dv |
裝置種類:語言和碼集 |
ci |
對多種碼集的起始序列 |
s0 |
移至碼集0 |
s1 |
移至碼集1 |
s2 |
移至碼集2 |
s3 |
移至碼集3 |
下面所列為針對terminfo庫所擴充的功能。s0-s3的字串值是在終端機輸出入時,配合相對應的碼集,做為資料宣告機制之用。
表 4-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 |