Socat 对 PTY 的独占锁定
Socat exclusive lock to PTY
我只想要一个进程来打开由 socat 创建的 PTY 设备。
我使用以下创建了 my_ser
设备,但它可以被多个进程读取/写入。
socat -t 0 INTERFACE:my_nw,type=2 PTY,mode=0777,rawer,link=/dev/my_ser
我试过用
socat -t 0 INTERFACE:my_nw,type=2 PTY,mode=0777,rawer,link=/dev/my_ser,ioctl-void=0x540c
使用PTY独占锁(TIOCEXCL),但不起作用。
我可以看到正在执行 IOCTL,但没有任何效果。
我 运行 在 Ubuntu 机器上
我现在更详细地了解了 TIOCEXCL 标志。打开 PTY 终端的应用程序应该使用这个标志来获得独占锁。如果我们在 socat 命令中创建 PTY 期间使用它,它没有任何效果。但它也不会给出任何错误。
因此应用程序应该调用 ioctl 标志并且应该从这里删除它。
我只想要一个进程来打开由 socat 创建的 PTY 设备。
我使用以下创建了 my_ser
设备,但它可以被多个进程读取/写入。
socat -t 0 INTERFACE:my_nw,type=2 PTY,mode=0777,rawer,link=/dev/my_ser
我试过用
socat -t 0 INTERFACE:my_nw,type=2 PTY,mode=0777,rawer,link=/dev/my_ser,ioctl-void=0x540c
使用PTY独占锁(TIOCEXCL),但不起作用。
我可以看到正在执行 IOCTL,但没有任何效果。
我 运行 在 Ubuntu 机器上
我现在更详细地了解了 TIOCEXCL 标志。打开 PTY 终端的应用程序应该使用这个标志来获得独占锁。如果我们在 socat 命令中创建 PTY 期间使用它,它没有任何效果。但它也不会给出任何错误。
因此应用程序应该调用 ioctl 标志并且应该从这里删除它。