デバイスディレクトリにデバイスを作るには、Serial-HOWTO:
「/dev
ディレクトリにおけるデバイスの作成方法」をご覧ください。
[ 訳注 : JF プロジェクトによる日本語訳 Serial-HOWTO ]
Linux ではデバイスにメジャー番号およびマイナー番号があります。
/dev
ディレクトリにおいて、各々のシリアルポートは ttyS
と cua
の2 つの名前が可能です。これら 2 つのドライバはわずかに異
なるふるまいをします。cua デバイスは推奨しておらず、将来は使用しないこ
とになるでしょう。
cua デバイス をご覧くださ
い。
DOS/Windows は COM 名を使いますが、setserial
プログラムは
tty00
, tty01
などを用います。(PC のモニタである)コンソールと
して使用する、シリアルポートではない /dev/tty0
,
/dev/tty1
などのデバイスと混同してはいけません。「標準的」な
場合の (COM1 など) DOS 上の名前と IO アドレスを以下に示します。(あなた
の場合では異なるかもしれません)
set- IO
dos serial major minor major minor address
COM1 tty00 /dev/ttyS0 4, 64; /dev/cua0 5, 64 3F8
COM2 tty01 /dev/ttyS1 4, 65; /dev/cua1 5, 65 2F8
COM3 tty02 /dev/ttyS2 4, 66; /dev/cua2 5, 66 3E8
COM4 tty03 /dev/ttyS3 4, 67; /dev/cua3 5, 67 2E8
すべてのディストリビューションは ttyS
デバイスを用いることに注意
してください( cua
デバイスも完全に廃止できるまでは使用します)。以
下のようにタイプすることで、上記のことを確かめられます:
linux% ls -l /dev/cua*
linux% ls -l /dev/ttyS*
いくつかのインストレーションでは、モデム用の /dev/modem
およびマウス用の /dev/mouse
という2つの特別なデバイスを作りま
す。両者とも、インストール時に明示した /dev
以下にある適切な
デバイスへのシンボリックリンクです(バスマウスを持っているなら、
/dev/mouse
はバスマウスのデバイスを指しているでしょう)。
/dev/mouse
および /dev/modem
の利点に関しては、いく
らかの議論がありました。これらのリンクを使用することは推奨しません。と
りわけ、ダイヤルインにモデムの使用を考えているのなら、
/dev/modem
を使用するとロックファイルが正常に動作しないため、
問題が発生するかもしれません。好みでこれらのリンクを使うのなら、リ
ンクが確実に正しいデバイスを指すようにしてください。しかし、このリン
クを変更したり削除すると、再設定が必要となるアプリケーションがあるかも
しれません。
各々の ttyS
デバイスは cua
デバイスと一致します。しかし、
cua
デバイスは廃止すべきものであるため、(cua
を必要としない
限り) ttyS
を使うのが最も良いことです。cua
と ttyS
の間
には違いがありますが、精通したプログラマは ttyS
ポートをあたかも
cua
ポートであるかのように振る舞わせることができ、cua
ポート
はもはや全く必要ありません。いくつかの古いプログラムを除き、cua
を使用する必要がありません。
何が違うのでしょうか? cua
と ttyS
の間の主な違いは、通常の
``oepn'' コマンドでポートを開こうとしたとき、C プログラム中でどのよう
に処置するのが異なります。cua
ポートがモデム制御信号を確認するよ
うセットしたのなら、DCD モデム制御信号が上がっていなくても、ポートを開
けます。(追加コードを加えた)賢いプログラムは ttyS
ポートに同様の
振舞いを強制することができます。しかし、cua
ポートはモデムが DCD
を ON にできなくとも(誰も電話をかけていない、キャリアがないときに) 電
話をかけるために簡単にポートを開くことができます。このことが、かつて
cua
を発信に用い、ttyS
を着信に用いていた理由です。
cua
を使っているならば、Linux カーネル 2.2 を起動するときに警告メッ
セージがカーネルログに書き込まれるでしょう。これは cua
がなくなり
かけている兆しです。