プロセス間通信用の端末装置の作成

プロセス間通信用の端末装置の作成

シリアルポートを介して接続されたハードウェアをシミュレートするために端末デバイスを作成する方法を知りたいです。デフォルトでは、ttyデバイスには2つのプロセス間で読み書きできる特定の転送速度があります。私が知っているのは擬似端末を探していますが、makedev作成することは可能です。

また、次の命令セットを見つけました。

su to root
cd /dev
mkdir pty
mknod pty/m0 c 2 0
mknod pty/s0 c 3 0
ln -s pty/m0 ttyp0
ln -s pty/s0 ptyp0
chmod a+w pty/m0 pty/s0

擬似端末を作成するより良い方法はありますか?それとも、これがシェルから疑似端末を作成する標準的な方法ですか?

ベストアンサー1

これはおそらくptyデバイスファイルを生成する方法ですが、ptyが必要なときにそれをしたくないでしょう。特定のシステムには、通常、すでに生成されたptyデバイスファイルの補完があります。

擬似TTYはOSによって異なり、これを行う予定のターゲットについては言及していません。最新のLinuxでは、openpty(3)OpenSSHソースコードで動作するサンプルコードを見つけることができます。sshpty.cpty_allocate()完全に理解するには、呼び出されたコードを見つける必要があります。

おすすめ記事