通常, FreeBSD の kernel は, PC-DOS の世界で COM1:
, COM2:
, COM3:
および COM4:
と呼ばれる四つのシリアル ポートを探す
ように設定されています. また, FreeBSD では, 現在のところ Boca の 1008
や 2016 のような, 単純なマルチポートのシリアル インタフェースもサポー
トしています. (マルチポートのシリアル ボードに関しての kernel の設定
については, sio(4)
のマニュアルを参照してください. ) デフォルト
の kernel は, COM ポートだけを探します.
搭載されているシリアル ポートのいずれかを, kernel が認識しているかどう
か確認したい場合は, kernel 起動時のメッセージを注意深く見ているか, あ
るいは /sbin/dmesg
コマンドを使って, ブート時の出力メッセージ
を確認してください. 特に, sio
で始まるメッセージをよく見てくださ
い. 参考までに, 以下のコマンドで sio
という文字列を含むメッセージ
だけを表示することができます.
/sbin/dmesg | grep 'sio'
たとえば, シリアル ポートを四つ持つシステムの場合は, 以下のようなシリ アル ポートに関するメッセージが kernel によって表示されます.
sio0 at 0x3f8-0x3ff irq 4 on isa
sio0: type 16550A
sio1 at 0x2f8-0x2ff irq 3 on isa
sio1: type 16550A
sio2 at 0x3e8-0x3ef irq 5 on isa
sio2: type 16550A
sio3 at 0x2e8-0x2ef irq 9 on isa
sio3: type 16550A
もし, kernel に正常に認識されないポートがある場合は, おそらくカスタマ イズした kernel を構築する必要があるでしょう.
kernel 構築と構築のための設定に関しては, BSD System Manager's Manual
の ``Building Berkeley Kernels with Config (config コマンドによる BSD
kernel の構築) '' [ソース ファイルは
/usr/src/share/doc/smm
にあります]と ``FreeBSD
Configuration Options'' [ /sys/conf/options
および
/sys/arch/conf/options.arch
の
archの部分をたとえばi386
としたファイル ] を参照
してください.
kernel の設定と構築をするためには, kernel のソース
(FreeBSD 1.1 では srcdist/srcsys.??
, FreeBSD 1.1.5.1 では
srcdist/sys.??
, またFreeBSD 2.0 では総てのソース)を展開
する必要があります.
まだ自分のシステムの kernel 用のコンフィギュレーション ファイルを作っ
ていない場合は, /sys/i386/conf
に cd
して作成してくださ
い. 初めてコンフィギュレーション ファイルを作る場合は, まず GENRICAH
(FreeBSD 1.x で BusTek の SCSI コントローラを使っている場合は
GENERICBT) というファイルを, YOURSYS にコピーしてください. ここ
で, YOURSYS はあなたのシステム名で, 大文字である必要があります.
このファイルを編集して, ディバイスに関する記述を変更します.
device sio0 at isa? port "IO_COM1" tty irq 4 vector siointr
device sio1 at isa? port "IO_COM2" tty irq 3 vector siointr
device sio2 at isa? port "IO_COM3" tty irq 5 vector siointr
device sio3 at isa? port "IO_COM4" tty irq 9 vector siointr
システムに搭載されていないディバイスに関する記述は, コメントアウトまた
は削除してしまってかまいません. Boca の BB2016 のようなマルチポートの
シリアル ボードをお持ちの場合は, sio(4)
のマニュアルを見て, マ
ルチポートのボードのためのコンフィギュレーション ファイルの記述のし方
に関して確認してください. ディバイスのフラグの指定方法がバージョンによっ
て異なりますので, 別のバージョンの FreeBSD で利用していたコンフィギュ
レーション ファイルを流用する場合には十分注意してください.
なお, port "IO_COM1"
, "IO_COM2"
, "IO_COM3"
および
"IO_COM4"
は, それぞれのポートの一般的なアドレスである 0x3f8
,
0x2f8
, 0x3e8
および 0x2e8
を表します. また, 割り込
み番号 4, 3, 5 と 9 は, それぞれ COM1:
から COM4:
のポー
トで一般的に使用される IRQ です. また, ISA バスのコンピュータの場合,
一般的なシリアルポートは複数のポートで一つの IRQ を共有することが できませんので注意が必要です. (マルチポートのシリアル ボードの
場合は, 複数の 16550A ベースのポートで一つまたは二つの IRQ を共有する
ための機構を備えています. )
コンフィギュレーション ファイルの編集が終わったら, ``Building
Berkeley Kernels with Config (config コマンドによる BSD kernel の構築)''
および config(8)
のマニュアルにしたがって, config
コマンド
を使って kernel 構築のためのディレクトリを作成した後, kernel の構築,
インストールおよびテストを行ってください.