シリアル端末を FreeBSD システムに接続するためには, 適切なケー ブルと, 端末を接続するためのシリアルポートが必要です. ここでは, これ らについて説明します. もし既にあなたの利用したい端末と, その端末 を接続するためのケーブルについてよく理解していれば, 設定 の章まで読み飛ばしてください.
端末の接続は, シリアルポートを利用します. そこで, 端末を FreeBSD システムに接続するためには, シリアルケーブル (RS-232C ケーブ ルとも呼ばれています) が必要となります.
シリアルケーブルには2種類のケーブルがあります. どちらの種類の ケーブルを使わなければいけないかは, どんな端末を接続したいかによります.
また, 端末側と FreeBSD 側の 両方の シリア ポート の形状が, あなたが使用しようとしているケーブルについているコネクタの形 状と一致していなければなりません.
ヌルモデムケーブル (またはリバースケーブルあるいはクロ スケーブル) は, たとえば ``signal ground'' 信号のように, いくつかの信 号はそのまま通しますが, 他の信号は途中で入れ替えて通します. たとえば, ``send data'' 信号のピンは, 反対側のコネクタの ``receive data'' 信号の ピンと繋がっています.
自分で使うケーブルは自分で作りたいということであれば, 以下にター ミナルを接続する際に推奨されるヌルモデムケーブルの結線を示しておきま す. この表では, RS-232C の信号線の名前と, DB-25 コネクタ上のピンの番 号を示しています.
Signal Pin# Pin# Signal
TxD 2 ----------------------- 3 RxD
RxD 3 ----------------------- 2 TxD
DTR 20 ----------------------- 6 DSR
DSR 6 ----------------------- 20 DTR
SG 7 ----------------------- 7 SG
DCD 8 ----------------------+ 4 RTS*
*RTS 4 + + 5 CTS*
*CTS 5 +---------------------- 8 DCD
* まず, コネクタ内部でピン4を5に接続し, そして逆側のコネクタのピン8と接
続します.
スタンダードシリアルケーブル (またはストレートケーブル) の場合は, すべての RS-232C 信号をそのまま通します. つまり, 片方の ``send data'' 信号のピンは, 逆側の ``send data'' 信号のピンと繋がっています. モデムを FreeBSD に接続するときや, 一部の端末を接続するときにこのタイプの ケーブルを使用します.
シリアルポートは, FreeBSDが動作しているホスト コンピュータと端 末の間でデータのやりとりを行うために用いるデバイスです. ここでは, 現在存在するポートの種類と FreeBSD でのポートのアクセス方法について解 説します.
シリアルポートには何種類かのものがあります. ケーブルを購 入したり自作したりする前に, そのケーブルのコネクタの形状が端末および FreeBSD システムのポートの形状と一致していることを確認してください.
ほとんどの端末は DB25 ポートを搭載しています. FreeBSDが動作しているも のを含めて, PCは DB25 または DB9 ポートを搭載しています. マルチポート のシリアルカードの場合は, RJ-12 や RJ-45 のポートを搭載しているかもし れません.
利用されているポートの種類に関しては, ハードウェアについてきたドキュメ ントを参照してください. また, 多くの場合, ポートの形状から判断すること もできるでしょう.
FreeBSDでは, /dev
ディレクトリ内のエントリを介
してシリアルポートへのアクセスがおこなわれます. 2種類の異なったエン
トリがあります.
/dev/ttydx
(x は 0から始まるポート番号) となっています. 一般に端末の接続には
着信用ポートを用います. 着信用のポートでは, シリアルラインのデータ
キャリア検出 (DCD) 信号がオンになっている必要があります.
/dev/cuaax
となっています. 発信用のポートは普通モデムの接続に用い, 端末の接続には
利用しません. ただ, ケーブルまたは端末がキャリア検出信号を使えない
タイプのものの場合は, 発信用のポートを使うとよいでしょう. 詳しくは, sio(4) のマニュアルをご覧ください.
たとえば, 端末を一つ目のシリアルポート (DOS でいうところの COM1) に接
続したとすると, /dev/ttyd0
がこの端末を指すことになります.
また, 二つ目のシリアルポート (COM2) ならば /dev/ttyd1
となり,
以下この形式のデバイスエントリを使います.
各シリアルポート, 特にマルチポートのシリアルカードを利用する ために, kernel の設定をおこなう必要がある場合がありますので, 注意してくだ さい. 詳しくは, FreeBSDカーネルのコンフィグレーション をご覧ください.