名 前
setserial − Linux シ リ ア ル ポ ー ト 情 報 の 設 定 と 取 得
書 式
setserial [ −abqvVWz ] device [ parameter1 [ arg ] ] ...
setserial -g [ −abGv ] device1 ...
説 明
setserial は 、 シ リ ア ル ポ ー ト に 関 す る 設 定 情 報 を 設 定 ま た は 表 示 す る プ ロ グ ラ ム で す 。 こ の 情 報 に は 、 指 定 さ れ た シ リ ア ル ポ ー ト が 使 用 し て い る I/O ポ ー ト ア ド レ ス や IRQ の 情 報 、 お よ び ブ レ ー ク キ ー を 受 信 接 続 通 知 キ ー (Secure Attention Key)と し て 使 用 す る か ど う か な ど の 情 報 が 含 ま れ ま す 。 通 常 の ブ ー ト 処 理 中 に は 、 COM ポ ー ト の 1 〜 4 だ け が 、 以 下 に 示 す デ フ ォ ル ト の I/O ポ ー ト ア ド レ ス と IRQ の 値 を 使 っ て 初 期 化 さ れ ま す 。 setserial は 、 追 加 さ れ た シ リ ア ル ポ ー ト を 初 期 化 し た り 、 1 〜 4 の COM ポ ー ト を 標 準 で な い 設 定 に す る た め に 使 用 さ れ ま す 。 setserial は 通 常 、 /etc/rc.local か ら 起 動 さ れ る rc.serial ス ク リ プ ト に 登 録 し て お き ま す 。 引 数 device に は 、 設 定 し た り 表 示 し た い シ リ ア ル ポ ー ト の デ バ イ ス フ ァ イ ル を 指 定 し ま す 。 通 常 、 以 下 の よ う な 形 式 で 指 定 し ま す : /dev/cua[0-3] パ ラ メ ー タ が 全 く 指 定 さ れ な か っ た 場 合 、 setserial は 、 ポ ー ト の 種 類 (例 え ば 、 8250, 16450, 16550, 16550A な ど )、 ハ ー ド ウ ェ ア の I/O ポ ー ト ア ド レ ス 、 IRQ 番 号 、 ボ ー レ ー ト 、 操 作 可 能 な フ ラ グ の い く つ か の 内 容 を 表 示 し ま す 。
−g オ プ シ ョ ン が 指 定 さ れ る と 、 setserial へ の 引 数 は 全 て 、 表 示 対 象 と な る デ バ イ ス と し て 解 釈 さ れ 、 複 数 の デ バ イ ス の 設 定 内 容 を 表 示 さ せ る こ と が で き ま す 。
−g オ プ シ ョ ン を 指 定 し な い と 、 setserial へ の 最 初 の 引 数 が 、 設 定 し た り 表 示 し た り す る デ バ イ ス と し て 解 釈 さ れ ま す 。 ま た 、 そ の 他 の 引 数 は 、 シ リ ア ル デ バ イ ス に 与 え る パ ラ メ ー タ と し て 解 釈 さ れ ま す 。 ほ と ん ど の 場 合 、 シ リ ア ル ポ ー ト の パ ラ メ ー タ の 設 定 に は ス ー パ ー ユ ー ザ ー の 特 権 が 必 要 で す 。 し か し 、 少 し だ け 一 般 ユ ー ザ が 設 定 で き る パ ラ メ ー タ が あ り ま す 。 そ れ ら は こ の man ペ ー ジ 中 で 説 明 し ま す 。
オ プ シ ョ ン
setserial に は 、 以 下 の オ プ シ ョ ン を 指 定 す る こ と が で き ま す :
−a シ リ ア ル デ バ イ ス の 設 定 内 容 を 表 示 す る と き 、 す べ て の 情 報 を 表 示 し ま す 。
−b シ リ ア ル デ バ イ ス の 設 定 内 容 を 表 示 す る と き 、 ブ ー ト 時 に
/etc/rc ス ク リ プ ト で 使 用 す る 時 に 適 し た 形 で デ バ イ ス 情 報 の サ マ リ を 表 示 し ま す 。
−G シ リ ア ル ポ ー ト の 設 定 情 報 を 、
setserial の コ マ ン ド ラ イ ン オ プ シ ョ ン
の 形 で 表 示 し ま す 。
−q
setserial の 出 力 を 抑 制 し ま す 。
−v
詳 細 モ ー ド 。 い く つ か の ス テ ー タ ス が 追 加 出 力 さ れ ま す 。
−V
setserial の バ ー ジ ョ ン を 出 力 し て 終 了 し ま す 。
−W
割 り 込 み の 初 期 化 を 荒 っ ぽ く 行 い 、 終 了 し ま す 。 こ の オ プ シ ョ ン は バ ー ジ ョ ン 2.1 以 降 の Linux カ ー ネ ル に 対 し て は 無 効 で す 。
−z シ リ ア ル フ ラ
グ を セ ッ ト す る 前 に 全 て の フ ラ グ を ゼ ロ ク リ ア し ま す 。 こ れ は −G オ プ シ ョ ン を 使 っ た シ リ ア ル フ ラ グ の 自 動 保 存 と 関 係 が あ り ま す 。
パ ラ メ ー タ
シ リ ア ル ポ ー ト に 対 し て 、 以 下 の パ ラ メ ー タ を 設 定 す る こ と が で き ま す 。 す べ て の 値 は 、 先 頭 に "0x" が あ れ ば 16 進 数 と み な さ れ ま す 。
port port_number
port パ ラ メ ー タ は 、 先 に 述 べ た よ う に I/O ポ ー ト 番 号 の 設 定 を 行 な い ま す 。
irq irq_number
irq パ ラ メ ー タ は 、 先 に 述 べ た よ う に ハ ー ド ウ ェ ア の IRQ の 設 定 を 行 な い ま す 。
uart uart_type こ
の オ プ シ ョ ン
は 、 シ リ ア ル
ポ ー ト の UART の 種
類 を 設 定 す る
た め に 使 用 さ
れ ま す 。 指 定
で き る タ イ プ
は 、 none, 8250, 16450, 16550, 16550A,
16650, 16650V2, 16654, 16750, 16850, 16950, 16954 で
す 。 UART タ イ プ
none は 、 ポ ー ト
を 使 用 で き な
い よ う に し ま
す 。 内 蔵 モ デ
ム の 中 に は 、
「 1k の バ ッ フ ァ
を 持 っ た 16550A」 を
備 え て い る と
書 か れ た も の
が あ り ま す 。
こ れ は 嘘 で す
。 実 際 に は 16550A 互
換 の UART で は な く
、 (受 信 時 の オ
ー バ ー ラ ン を
防 ぐ た め に ) 1k の
受 信 バ ッ フ ァ
の つ い た 16450 互 換
UART が 付 い て い る
の で す 。 こ れ
ら に は 送 信 FIFO が
な い の で 、 こ
の 違 い は 重 要
で す 。 そ う い
う 訳 で 、 こ れ
ら は 16550A UART と 互 換
性 が な く 、 自
動 設 定 処 理 で
は 16450 と し て 認 識
し ま す 。 も し
uart オ プ シ ョ ン
を 使 っ て こ れ
を 変 更 し て し
ま う と 、 フ ァ
イ ル 送 信 中 に
デ ー タ を 取 り
こ ぼ す こ と に
な る で し ょ う
。 こ れ ら の UART は
普 通 他 の 問 題
も 抱 え て い ま
す 。 大 抵 の 場
合 skip_test オ プ シ
ョ ン も 指 定 し
な く て は い け
ま せ ん 。
autoconfig こ の パ ラ メ
ー タ が 設 定 さ
れ る と 、 setserial
は カ ー ネ ル に
シ リ ア ル ポ ー
ト を 自 動 的 に
設 定 す る よ う
要 求 し ま す 。 I/O
ポ ー ト は 、 正
し く 設 定 し な
け れ ば い け ま
せ ん 。 そ の 後
カ ー ネ ル は UART の
種 類 を 決 定 し
、 auto_irq オ プ シ ョ
ン が 設 定 さ れ
て い れ ば 、 IRQ を
自 動 的 に 設 定
し よ う と し ま
す 。 autoconfig オ プ
シ ョ ン は 、
port、 auto_irq、 skip_test
オ プ シ ョ ン の
後 に 指 定 す べ
き で す 。
auto_irq 自 動 設 定 を
行 な う 際 、 IRQ を
自 動 決 定 し よ
う と し ま す 。
こ の 機 能 は 、
い つ も 正 し い
結 果 を も た ら
す と は 限 り ま
せ ん 。 ハ ー ド
ウ ェ ア の 設 定
に よ っ て は 、 Linux
の カ ー ネ ル は
だ ま さ れ て し
ま い ま す 。 一
般 に auto_irq の 機 能
を 使 う よ り も
、 irq パ ラ メ ー
タ を 使 っ て 、
使 用 さ れ る IRQ を
明 示 的 に 指 定
し た 方 が 信 頼
性 が あ り ま す
。
^auto_irq 自 動 設 定 の
際 、 IRQ の 自 動 決
定 を 行 な い ま
せ ん 。
skip_test 自 動 設 定 の
際 、 UART の テ ス ト
を ス キ ッ プ し
ま す 。 内 蔵 モ
デ ム の 中 に は
、 National Semiconductor 互 換 の
UART を 持 っ て お ら
ず 、 代 わ り に
安 い 偽 物 を 持
っ て い る も の
が あ り ま す 。
こ れ ら の 偽 物 UART
で は 、 カ ー ネ
ル が 設 定 す る
前 に 指 定 さ れ
た ア ド レ ス に
本 当 に UART が あ る
こ と を 確 認 す
る た め に 使 用
す る 、 ル ー プ
バ ッ ク 検 出 モ
ー ド を 完 全 に
は サ ポ ー ト し
て い ま せ ん 。
こ の よ う な 内
蔵 モ デ ム で は
、 こ の オ プ シ
ョ ン を 指 定 し
て Linux が 正 し く UART
を 初 期 化 で き
る よ う に し な
け れ ば な り ま
せ ん 。
^skip_test 自 動 設 定 の
際 、 UART の テ ス ト
を ス キ ッ プ し
ま せ ん 。
baud_base baud_base 基 本 と な
る ボ ー レ ー ト
を 設 定 し ま す
。 ボ ー レ ー ト
は 、 ク ロ ッ ク
周 波 数 を 16 で 割
っ た 値 で す 。
通 常 こ の 値 は
115,200 に 設 定 さ れ
て い ま す 。 こ
れ は UART が サ ポ ー
ト で き る 最 も
速 い ボ ー レ ー
ト で す 。
spd_hi ア プ リ ケ ー シ ョ ン が
38.4 Kbps を 要 求 し た 場 合 に 、 57.6 Kbps を 使 用
し ま す 。 こ の オ プ シ ョ ン は 一 般 ユ ー ザ ー で も 指 定 で き ま す 。
spd_vhi ア
プ リ ケ ー シ ョ
ン が 38.4 Kbps を 要 求
し た 場 合 に 、 115
Kbps を 使 用 し ま す
。 こ の オ プ シ
ョ ン は 一 般 ユ
ー ザ ー で も 指
定 で き ま す 。
spd_shi ア プ リ ケ ー
シ ョ ン が 38.4 Kbps を
要 求 し た 場 合
に 、 230 Kbps を 使 用
し ま す 。 こ の
オ プ シ ョ ン は
一 般 ユ ー ザ ー
で も 指 定 で き
ま す 。
spd_warp ア プ リ ケ ー
シ ョ ン が 38.4 Kbps を
要 求 し た 場 合
に 、 460 Kbps を 使 用
し ま す 。 こ の
オ プ シ ョ ン は
一 般 ユ ー ザ ー
で も 指 定 で き
ま す 。
spd_cust ア プ リ ケ ー
シ ョ ン が 38.4 Kbps を
要 求 し た 場 合
に 、 ス ピ ー ド
を 設 定 す る た
め に 特 別 な 除
数 を 使 用 し ま
す 。 こ の 場 合
の ボ ー レ ー ト
は 、 baud_base を 除
数 で 割 っ た 値
に な り ま す 。
こ の オ プ シ ョ
ン は 一 般 ユ ー
ザ ー で も 指 定
で き ま す 。
spd_normal ア プ リ ケ ー
シ ョ ン が 38.4 Kbps を
要 求 し た 場 合
に 、 38.4 Kbps を 使 用
し ま す 。 こ の
オ プ シ ョ ン は
一 般 ユ ー ザ ー
で も 指 定 で き
ま す 。
divisor divisor 除 数 を 設
定 し ま す 。 こ
の 除 数 は 、 spd_cust
オ プ シ ョ ン が
指 定 さ れ て い
て 、 ア プ リ ケ
ー シ ョ ン が シ
リ ア ル ポ ー ト
に 38.4 Kbps を 設 定 し
た 場 合 に 使 用
さ れ ま す 。 こ
の オ プ シ ョ ン
は 一 般 ユ ー ザ
ー で も 指 定 で
き ま す 。
sak ブ レ ー ク キ ー を 受 信 接 続 通 知 キ ー
(Secure Attention Key)に 指 定 し ま
す 。
^sak 受 信 接 続 通 知 キ ー
(Secure Attention Key)を 無 効 に し ま す 。
fourport ポ
ー ト を AST Fourport カ ー
ド と し て 設 定
し ま す 。
^fourport
AST Forport の 設 定 を 行 な い ま せ ん 。
close_delay delay
発 信 デ バ イ ス
が ク ロ ー ズ さ
れ た あ と 、 ブ
ロ ッ ク さ れ た
着 信 デ バ イ ス
の DTR が 再 び 立 ち
上 が る ま で の
間 、 シ リ ア ル
ラ イ ン 上 の DTR を
LOW に 維 持 し て お
く 時 間 を 指 定
し ま す 。 こ の
値 の 単 位 は 、 10ms
で す 。 デ フ ォ
ル ト で は 、 こ
の 値 は 50、 す な
わ ち 500 ms (0.5 秒 )で す
。
closing_wait delay シ リ ア ル
ポ ー ト を 閉 じ
よ う と す る と
き 、 ポ ー ト へ
デ ー タ を 送 信
す る た め に カ
ー ネ ル が 待 つ
時 間 を 指 定 し
ま す 。 こ の 値
の 単 位 は 10ms で す
。 "none" が 指 定
さ れ る と 、 待
ち 時 間 は 発 生
し ま せ ん 。
"infinite" が 指 定 さ
れ る と 、 バ ッ
フ ァ リ ン グ さ
れ た デ ー タ が
送 信 し 終 わ る
ま で 無 限 に 待
ち 続 け ま す 。
デ フ ォ ル ト 設
定 は 3000 (30 秒 待 つ )
で す 。 通 常 こ
れ は 、 ほ と ん
ど の デ バ イ ス
に 対 し て 適 切
な 値 で す 。 も
し 長 過 ぎ る 待
ち 時 間 を 設 定
す る と 、 未 接
続 の シ リ ア ル
ポ ー ト に 送 信
待 ち の デ ー タ
が あ る 状 態 で
ク ロ ー ズ さ れ
た 場 合 に シ リ
ア ル ポ ー ト が
長 い 間 ハ ン グ
ア ッ プ し て し
ま う か も し れ
ま せ ん 。 も し
短 す ぎ る 待 ち
時 間 を 設 定 す
る と 、 送 信 す
る べ き デ ー タ
を 送 信 し き れ
な い 可 能 性 が
あ り ま す 。 も
し デ バ イ ス が
プ ロ ッ タ プ リ
ン タ の よ う に
極 め て 低 速 な
場 合 は 、 closing_wait の
値 を 大 き く す
る 必 要 が あ る
か も し れ ま せ
ん 。
session_lockout 複 数 の セ
ッ シ ョ ン で 同
一 の 発 信 ポ ー
ト (/dev/cuaXX)を 使 用 で
き な い よ う に
し ま す 。 つ ま
り 、 あ る プ ロ
セ ス が 一 旦 ポ
ー ト を オ ー プ
ン す る と 、 そ
の プ ロ セ ス が
ポ ー ト を ク ロ
ー ズ す る ま で
、 別 の セ ッ シ
ョ ン ID を 持 つ プ
ロ セ ス は 、 そ
の ポ ー ト を オ
ー プ ン で き な
く な り ま す 。
^session_lockout 複 数 の セ
ッ シ ョ ン で 同
一 の 発 信 ポ ー
ト (/dev/cuaXX)を 使 用 で
き る よ う に し
ま す 。
pgrp_lockout 複 数 の プ
ロ セ ス グ ル ー
プ で 同 一 の 発
信 ポ ー ト (/dev/cuaXX)を
使 用 で き な い
よ う に し ま す
。 つ ま り 、 あ
る プ ロ セ ス が
一 旦 ポ ー ト を
オ ー プ ン す る
と 、 そ の プ ロ
セ ス が ポ ー ト
を ク ロ ー ズ す
る ま で 、 別 の
プ ロ セ ス グ ル
ー プ の プ ロ セ
ス は そ の ポ ー
ト を オ ー プ ン
で き な く な り
ま す 。
^pgrp_lockout 複 数 の プ
ロ セ ス グ ル ー
プ で 同 一 の 発
信 ポ ー ト (/dev/cuaXX)を
使 用 で き る よ
う に し ま す 。
hup_notify 別 の プ ロ セ
ス に よ る 発 信
ラ イ ン の 使 用
が 終 了 し た (ポ
ー ト を ク ロ ー
ズ し た か 、 シ
リ ア ル ラ イ ン
が ハ ン グ ア ッ
プ し た )こ と を
、 着 信 ラ イ ン
を オ ー プ ン し
よ う と し て い
る プ ロ セ ス に EAGAIN
を 返 す こ と で
通 知 し ま す 。
こ の パ ラ メ ー
タ は 、 例 え ば
シ リ ア ル ポ ー
ト の 着 信 ラ イ
ン を ブ ロ ッ ク
さ れ て い る getty 向
け に 用 い ま す
。 用 い る と 、 getty
は 再 び そ の ポ
ー ト を オ ー プ
ン し て ブ ロ ッ
ク す る 前 に 、
モ デ ム を リ セ
ッ ト で き る よ
う に な り ま す
(そ の モ デ ム を
発 信 デ バ イ ス
と し て 使 用 し
た ア プ リ ケ ー
シ ョ ン に よ っ
て 、 ポ ー ト の
設 定 が 変 更 さ
れ た か も し れ
ま せ ん か ら )。
^hup_notify 発 信 デ バ イ
ス が ハ ン グ ア
ッ プ し た こ と
を 、 着 信 回 線
を オ ー プ ン し
よ う と し て い
る プ ロ セ ス に
通 知 し ま せ ん
。
split_termios 発 信 デ バ
イ ス に よ っ て
使 用 さ れ る termios
の 設 定 と 、 着
信 デ バ イ ス に
よ っ て 使 用 さ
れ る termios の 設 定
と を 別 々 に 扱
い ま す 。
^split_termios 発 信 ポ ー
ト と 着 信 ポ ー
ト の 両 方 で 同
じ termios 構 造 体 を
使 用 し ま す 。
こ れ は デ フ ォ
ル ト の 設 定 で
す 。
callout_nohup 指 定 さ れ
た シ リ ア ル ポ
ー ト が 発 信 デ
バ イ ス と し て
オ ー プ ン さ れ
た 場 合 、 キ ャ
リ ア 検 出 (CD)信 号
が 落 ち て も tty を
ハ ン グ ア ッ プ
し ま せ ん 。
^callout_nohup シ リ ア ル
ポ ー ト が 発 信
デ バ イ ス と し
て オ ー プ ン さ
れ て い る と き
、 tty を ハ ン グ ア
ッ プ す る 処 理
を ス キ ッ プ し
ま せ ん 。 も ち
ろ ん 、 ハ ン グ
ア ッ プ を さ せ
る に は termios の HUPCL フ
ラ グ が 有 効 に
な っ て い な け
れ ば な り ま せ
ん 。
low_latency シ リ ア ル デ
バ イ ス の 受 信
遅 延 を 最 小 に
し ま す 。 た だ
し CPU の 利 用 度 は
増 加 し ま す (通
常 は オ ー バ ー
ヘ ッ ド を 最 小
限 に す る た め
に 、 受 信 キ ャ
ラ ク タ を 扱 う
前 に 5-10ms の 遅 延 が
あ り ま す )。 こ
れ は デ フ ォ ル
ト で は オ フ で
す が 、 リ ア ル
タ イ ム 処 理 を
す る ア プ リ ケ
ー シ ョ ン の 中
に は こ の オ プ
シ ョ ン が 有 効
な も の が あ る
か も し れ ま せ
ん 。
^low_latency
CPU が シ リ ア ル キ ャ ラ ク タ を 処 理 す る 効 率 を 最 適 化 し ま す 。 た だ し キ ャ ラ ク タ を 処 理 す る 前 に 5-10ms の 遅 延 が 発 生 し ま す 。 こ れ が デ フ ォ ル ト で す 。
シ リ ア ル ポ ー ト の 設 定 上 の 注 意 事 項
注 意 し て 欲 し い の で す が 、 setserial が 行 う の は 、 指 定 さ れ た シ リ ア ル ポ ー ト の I/O ポ ー ト と IRQ と が ど こ そ こ で 見 つ か る は ず だ 、 と い う 情 報 を Linux カ ー ネ ル に 教 え る こ と だ け な の で す 。 setserial は 、 実 際 の シ リ ア ル ボ ー ド が 指 定 さ れ た I/O ポ ー ト を 使 用 す る よ う に 、 ハ ー ド ウ ェ ア を 設 定 す る わ け で は あ り ま せ ん 。 こ れ を 行 な う に は 、 ジ ャ ン パ ー の 設 定 や 、 DIP ス イ ッ チ の 切 替 え に よ っ て シ リ ア ル ボ ー ド を 物 理 的 に 設 定 す る 必 要 が あ り ま す 。 本 章 で は 、 自 分 の シ リ ア ル ポ ー ト を ど の よ う に 設 定 し た い か を 決 定 す る 手 助 け に な る ポ イ ン タ ー を 提 供 し ま す 。 標 準 的 な "MS-DOS" の ポ ー ト 割 り 付 け は 、 次 の よ う に な っ て い ま す :
/dev/ttyS0
(COM1), port 0x3f8, irq 4
/dev/ttyS1 (COM2), port 0x2f8, irq 3
/dev/ttyS2 (COM3), port 0x3e8, irq 4
/dev/ttyS3 (COM4), port 0x2e8, irq 3
AT/ISA バ ス ア ー キ テ ク チ ャ ー の 設 計 上 の 制 限 の た め 、 通 常 IRQ は 2 つ あ る い は そ れ 以 上 の シ リ ア ル ポ ー ト で 共 有 す る こ と は で き ま せ ん 。 こ れ を 行 な う と 、 両 方 を 同 時 に 使 お う と し た 時 に 一 方 あ る い は 両 方 の シ リ ア ル ポ ー ト が 不 安 定 に な る で し ょ う 。 こ の 制 約 は 単 一 の IRQ を 複 数 の シ リ ア ル ポ ー ト で 共 有 で き る よ う に 設 計 さ れ た 特 殊 な マ ル チ ポ ー ト シ リ ア ル カ ー ド を 使 う こ と で 克 服 す る こ と が で き ま す 。 Linux で サ ポ ー ト さ れ て い る マ ル チ ポ ー ト シ リ ア ル カ ー ド に は 、 AST Fourport, Accent Async board, Usenet Serial II board, Bocaboard BB-1004, BB-1008, BB-2016 boards, HUB-6 serial board が あ り ま す 。 別 の IRQ を 用 い る の も 困 難 で す (そ れ ら は 大 抵 使 用 さ れ て い ま す か ら )。 以 下 の 表 は 、 標 準 的 な "MS-DOS" で 割 り 付 け ら れ て い る 使 用 可 能 な IRQ の 一 覧 で す :
IRQ 3: COM2
IRQ 4: COM1
IRQ 5: LPT2
IRQ 7: LPT1 コ ン ピ ュ ー
タ に パ ラ レ ル
ポ ー ト が 一 つ
し か な け れ ば
、 IRQ 5 が 良 い 選 択
で あ る こ と に
ほ と ん ど の 人
が 気 づ く と 思
い ま す 。 そ の
他 の 選 択 と し
て は IRQ 2 (別 名 : IRQ 9) が
あ り ま す 。 た
だ し こ の IRQ は ネ
ッ ト ワ ー ク カ
ー ド で 使 わ れ
る こ と が あ り
ま す 。 ま た 非
常 に 稀 で す が
、 VGA カ ー ド が 垂
直 同 期 信 号 割
り 込 み の た め
に IRQ 2 を 使 う よ う
に 設 定 さ れ て
い る こ と が あ
り ま す 。 自 分
の VGA カ ー ド が こ
の よ う に 設 定
さ れ て い る 場
合 は 、 そ れ を
使 用 し な い よ
う に し て 見 て
く だ さ い 。 そ
う す れ ば 、 そ
の IRQ を 他 の カ ー
ド が 使 え る よ
う に な り ま す
。 Linux や そ の 他 の
ほ と ん ど の OS で
は 、 IRQ 2 を 垂 直 同
期 信 号 割 り 込
み の た め に 使
用 す る 必 要 は
あ り ま せ ん 。
他 に 使 用 で き
る IRQ が 、 3, 4, 7 だ け
で す が 、 こ れ
ら も お そ ら く
他 の シ リ ア ル
ポ ー ト や パ ラ
レ ル ポ ー ト で
使 用 さ れ て い
る で し ょ う 。
(も し お 使 い の
シ リ ア ル カ ー
ド に 16 bit カ ー ド エ
ッ ジ コ ネ ク タ
が 付 い て い て
、 よ り 上 位 の
割 り 込 み 番 号
を サ ポ ー ト し
て い る な ら 、 IRQ
10, 11, 12, 15 も 使 用 で き
る で し ょ う 。 )
AT 互 換 機 で は 、 IRQ 2 は IRQ 9 の よ う に 見 え ま す 。 Linux で も 、 こ の 流 儀 に し た が っ て 解 釈 し ま す 。
2 (9), 3, 4, 5, 7, 10, 11, 12, 15 以 外 の IRQ は 他 の ハ ー ド ウ ェ ア に 割 り 付 け ら れ て お り 、 普 通 変 更 で き な い の で 、 使 う べ き で は あ り ま せ ん 。 「 標 準 的 な 」 割 り 付 け は 、 次 の よ う に な っ て い ま す 。
IRQ 0 Timer
channel 0
IRQ 1 Keyboard
IRQ 2 Cascade for controller 2
IRQ 3 Serial port 2
IRQ 4 Serial port 1
IRQ 5 Parallel port 2 (Reserved in PS/2)
IRQ 6 Floppy diskette
IRQ 7 Parallel port 1
IRQ 8 Real-time clock
IRQ 9 Redirected to IRQ2
IRQ 10 Reserved
IRQ 11 Reserved
IRQ 12 Reserved (Auxillary device in PS/2)
IRQ 13 Math coprocessor
IRQ 14 Hard disk controller
IRQ 15 Reserved
マ ル チ ポ ー ト 設 定
複 数 の ポ ー ト で 一 つ の IRQ を 共 有 す る よ う な タ イ プ の マ ル チ ポ ー ト シ リ ア ル ボ ー ド に は 、 作 業 が 必 要 な 待 ち 状 態 の ポ ー ト が あ る か ど う か を 示 す た め に 、 ひ と つ ま た は 複 数 の ポ ー ト を 使 う も の が あ り ま す 。 使 っ て い る マ ル チ ポ ー ト ボ ー ド が こ の よ う な ポ ー ト を サ ポ ー ト し て い る な ら 、 こ れ ら の ポ ー ト を 使 え ば 、 割 り 込 み が ロ ス ト 時 で も シ ス テ ム が 固 ま ら な い よ う に で き ま す 。 こ れ ら の ポ ー ト を 設 定 す る た め に は 、 set_multiport パ ラ メ ー タ を 指 定 し 、 そ の 後 ろ に マ ル チ ポ ー ト パ ラ メ ー タ を 指 定 し ま す 。 マ ル チ ポ ー ト パ ラ メ ー タ は 、 チ ェ ッ ク す る べ き port、 レ ジ ス タ の ど の ビ ッ ト が 有 効 か を 指 定 す る mask、 す る べ き 作 業 が な く な っ た 時 に レ ジ ス タ の 有 効 ビ ッ ト が 一 致 し な け れ ば な ら な い 値 を 指 定 す る match か ら な り ま す 。 こ の よ う な port/mask/match の 組 は 4 つ ま で 指 定 で き ま す 。 一 つ 目 の 組 は port1, mask1, match1 で 指 定 し 、 二 つ 目 は port2, mask2, match2 で 指 定 し ま す 。 以 下 同 様 で す 。 マ ル チ ポ ー ト の チ ェ ッ ク を 無 効 に す る た め に は 、 port1 に 0 を 指 定 し て く だ さ い 。 現 在 の マ ル チ ポ ー ト 設 定 を 見 る た め に は 、 コ マ ン ド ラ イ ン か ら get_multiport パ ラ メ ー タ を 指 定 し て く だ さ い 。 以 下 に い く つ か の 一 般 的 な シ リ ア ル ボ ー ド の た め の マ ル チ ポ ー ト 設 定 を 示 し ま す 。
AST FourPort port1 0x1BF mask1 0xf match1 0xf
Boca BB-1004/8 port1 0x107 mask1 0xff match1 0
Boca BB-2016
port1 0x107 mask1 0xff match1 0
port2 0x147 mask2 0xff match2 0
Hayes ESP 設 定
setserial は Hayes ESP シ リ ア ル ボ ー ド の ポ ー ト を 設 定 す る こ と も で き ま す 。
ESP ポ
ー ト を 設 定 す
る に は 以 下 の
パ ラ メ ー タ を
使 い ま す 。
rx_trigger 受 信 FIFO の ト
リ ガ レ ベ ル (バ
イ ト 単 位 ) で す
。 大 き い 値 を
設 定 す る と 割
り 込 み 回 数 が
減 り 、 性 能 が
向 上 し ま す 。
し か し 、 値 を
大 き く し す ぎ
る と デ ー タ を
失 う こ と に な
る か も し れ ま
せ ん 。 有 効 な
値 は 1 か ら 1023 で す
。
tx_trigger 送 信 FIFO の ト
リ ガ レ ベ ル (バ
イ ト 単 位 ) で す
。 大 き い 値 を
設 定 す る と 割
り 込 み 回 数 が
減 り 、 性 能 が
向 上 し ま す 。
し か し 、 値 を
大 き く し す ぎ
る と 送 信 効 率
を 落 と す こ と
に な る か も し
れ ま せ ん 。 有
効 な 値 は 1 か ら 1023
で す 。
flow_off
ESP ポ ー ト が 相 手 の 送 信 側 に 対 し て 「 フ ロ ー オ フ 」 を 伝 え る (こ れ 以 上 デ ー タ を 送 信 し な い よ う に 伝 え る )レ ベ ル (バ イ ト 単 位 )で す 。 有 効 な 値 は 1 か ら 1023 で す 。 こ の 値 は 受 信 ト リ ガ レ ベ ル と フ ロ ー オ ン レ ベ ル よ り 大 き い 値 に す る べ き で す 。
flow_on
ESP ポ ー ト が 相 手 の 送 信 側 に 対 し て フ ロ ー オ フ を 伝 え た 後 に 、 「 フ ロ ー オ ン 」 を 伝 え る (こ れ 以 上 デ ー タ 送 信 を 再 開 す る よ う に 伝 え る )レ ベ ル (バ イ ト 単 位 )で す 。 有 効 な 値 は 1 か ら 1023 で す 。 こ の 値 は フ ロ ー オ フ レ ベ ル よ り 小 さ く 、 受 信 ト リ ガ レ ベ ル よ り 大 き い 値 に す る べ き で す 。
rx_timeout 最 後 の キ ャ ラ ク タ を 受 信 し て か ら 、 割 り 込 み を 発 生 さ せ る ま で に ESP ポ ー ト が 待 つ 時 間 で す 。 有 効 な 値 は 0 か ら 255 で す 。 値 が 大 き す ぎ る と 遅 延 が 大 き く な り 、 値 が 小 さ す ぎ る と 不 必 要 な 割 り 込 み が 発 生 す る こ と に な り ま す 。
警 告
警 告 : シ リ ア ル ポ ー ト が 使 用 す る I/O ポ ー ト の 設 定 を 間 違 え る と 、 マ シ ン が ハ ン グ ア ッ プ し て し ま う か も し れ ま せ ん 。
フ ァ イ ル
/etc/rc.local /etc/rc.serial
SEE ALSO
tty(4), ttys(4), kernel/chr_drv/serial.c
著 者
setserial の オ リ ジ ナ ル バ ー ジ ョ ン は Rick Sladkey (jrs [AT] world.com) に よ っ て 書 か れ 、 Michael K. Johnson (johnsonm [AT] stolaf.edu) に よ っ て 変 更 さ れ ま し た 。 こ の バ ー ジ ョ ン は 、 1993 年 1 月 1 日 に Theodore Ts’o (tytso [AT] mit.edu) に よ っ て 最 初 か ら 書 き 直 さ れ た も の で す 。 バ グ お よ び 問 題 点 は 、 彼 の み の 責 任 で す 。