次のページ 前のページ 目次へ

8. /dev/ttyS2 などのシリアルポートデバイス

デバイスディレクトリにデバイスを作るには、Serial-HOWTO: 「/dev ディレクトリにおけるデバイスの作成方法」をご覧ください。

[ 訳注 : JF プロジェクトによる日本語訳 Serial-HOWTO ]

8.1 シリアルポートデバイスの名前と番号

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*

8.2 ttySN を /dev/modem へリンク?

いくつかのインストレーションでは、モデム用の /dev/modem およびマウス用の /dev/mouse という2つの特別なデバイスを作りま す。両者とも、インストール時に明示した /dev 以下にある適切な デバイスへのシンボリックリンクです(バスマウスを持っているなら、 /dev/mouse はバスマウスのデバイスを指しているでしょう)。

/dev/mouse および /dev/modem の利点に関しては、いく らかの議論がありました。これらのリンクを使用することは推奨しません。と りわけ、ダイヤルインにモデムの使用を考えているのなら、 /dev/modem を使用するとロックファイルが正常に動作しないため、 問題が発生するかもしれません。好みでこれらのリンクを使うのなら、リ ンクが確実に正しいデバイスを指すようにしてください。しかし、このリン クを変更したり削除すると、再設定が必要となるアプリケーションがあるかも しれません。

8.3 cua デバイス

各々の 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 がなくなり かけている兆しです。


次のページ 前のページ 目次へ