Linux

為程序間通信創建終端設備

  • May 30, 2013

我想知道如何創建一個終端設備來模擬一個通過串口連接的硬體。基本上,具有一定波特率的 tty 設備可以在兩個程序之間讀取和寫入。據我了解,我正在尋找一個偽終端,並且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

有沒有更好的方法來製作偽終端,或者這幾乎是在 shell 中製作偽終端的標準方法?

這可能就是創建 pty 設備文件的方式,但您不想在需要 pty 時這樣做。任何給定的機器通常都有一個已創建的 pty 設備文件的補充。

偽 TTY 是相當特定於作業系統的,你沒有提到你想要做什麼。對於現代 linux,我會看一下openpty(3). 您可以在 OpenSSH 原始碼sshpty.c中找到工作範常式式碼。您可能必須找到呼叫pty_allocate()才能完全理解的程式碼。

引用自:https://unix.stackexchange.com/questions/77671