Linux用のヌルモデムの作成

Linux用のヌルモデムの作成

Debian 6 scrapeで仮想シリアルポートを作成しようとしています。基本的な要件は次のとおりです。

  1. ポートが実際のシリアルポートであるかのように接続する機能(IEでは転送速度、ストップビットなどを設定できる)

  2. comポートのペアは変更されていないままにしてください。

  3. COMポートペア名は、再起動時に固定する必要があります。コンピュータを再起動するたびにコード設定を変更したくありません。

socat -d -d pty, raw, echo=1 pty, raw, echo=1今日は、正常に生成された/dev/pts/5合計を/dev/pts/6ペアとして使用し、単にsocatを使用してみました。しかし、socatを実行している端末を閉じると、ペアは終了します。 tty0ttyがオプションなのかもしれません。使ったcom0comWindowsは過去に大きな成功を収めました。

私の質問は、Linuxで複数のCOMポートをエミュレートできるようにヌルモデムペアを作成する最良の方法は何ですか?

答え1

端末を閉じると、socatも終了します。

実行してみてください

socat -d -d pty, raw, echo=1 pty, raw, echo=1 &
disown

その後、端末を閉じることができるはずです

答え2

私はこの解決策が「永続的」とは思わないが、名前は象徴的であっても静的であろう。 Kotteの回答のおかげで、端末が閉じた後でもsocatが実行され続けます。

socat -d -d PTY,link=/home/someuser/COM0 PTY,link=/home/someuser/COM1 & disown

答え3

ストップビットは実際のUARTがある場合にのみ存在するため、エミュレーションする必要はありません。転送速度はデータを転送できる速度の上限であるため、シミュレーションプログラムを作成するときにデータ速度を適切な速度に制限するだけです。その後、通常の既存のパイプまたはFIFOを使用してエミュレータをコンシューマに接続できます。

pseudo-ttyは実際には転送速度やその他のパラメータに対して何もしないで、以前のバージョンとの互換性のために渡すので、面倒な理由はありません。

関連情報