[OSASK 5513] BOARD: モデム

このメールは、OSASK伝言板に書き込まれた内容です。
この書き込みに返事を書く場合は、下のURLから書き込みを行なって下さい
http://www.imasy.org/~mone/osask/index.cgi?REFER=3e083a0e_1a1e

2002/12/24 19:42
古い人

モデムの制御とネットワークサポートとは関係ない、というか、階層が違う話なんでごっちゃにしちゃまずいんじゃないかと。

モデムを介してのネットワーク接続にはたくさんの階層が関わっています。一般的なOSを想定して、ハードに近い階層から並べると

(1) シリアルポートデバイスドライバ : SIOチップのレジスタを設定したり、入力があったときの割込みを処理したり。
(2) カーネルのキャラクタI/O:ユーザプログラムからのシリアルポートのopen要求や文字入出力要求を処理します。
(3) モデム制御:モデムそのものの制御は、モデムに「ATコマンド」と呼ばれる文字列を送ることで行えます。プロバイダに電話をかけるのもこの階層でできます。モデムの圧縮プロトコル制御とかも。
(4) ppp : モデムが相手とつながった所で、その上に色々な情報を乗せる基盤となるプロトコルを処理。
(5) IP
(6) TCP/UDP

単にモデムを使いたいだけなら、(1)(2)がOSでサポートされていれば十分です。(3)は極端な話、手動でも出来ます。相手側がキャラクタベースのログインシェルを用意していれば、(3)にごく簡単なプログラムを用意してやるだけでリモートログインすることは出来るようになるでしょう。昔のパソコン通信のクライアントソフトなんかは(3)に位置するものです。私の世代ですとkermitというのがありました。

俺はモデムでつないでwebアクセスしたいんだ、というなら(4)(5)(6)の階層が必要です。「ネットワークサポート」と言ったら普通はこのへんの階層を指します。(5)(6)はイーサネットの上でTCP/IPを使う場合に共用できます。

で、自力でRFC読みながら(5)(6)を書くことは不可能じゃないでしょうが、ネットワークの場合、不正なデータを垂れ流すと他人に迷惑をかけることもあるので、最初はBSDあたりの実装を持って来るのが現実的かと。バイナリサイズに不満があれば後で書き直せばいいことですし。

とりあえず、元の質問者の方は他のOSでモデムコントロールのプログラムを書いてみてはいかがでしょうか。



ML番号でジャンプ
ML単語検索