无法从openpty从slave pseudotty读取

2024-09-27 07:28:44 发布

您现在位置:Python中文网/ 问答频道 /正文

注意:我在寻找解释,而不是解决方案。在

我正在尝试建立一个串行设备模拟器来测试与串行设备通信的程序。我对串行编程和tty的工作方式非常熟悉,所以请原谅这些错误。在

pty.openpty获取文件描述符后,我无法从同一进程向master写入和从fd读取消息;相反的方法可以正常工作。使用pyserial从另一个进程打开文件也可以正常工作。这并不能阻止我的程序工作,但我想知道为什么会这样。从我找到的关于这个主题的几个答案和手册页中,我找不到解释。在

我找到了this答案,它确实可以工作,但是pyserial所做的标记和操作却让我不知所措。在

Python代码:

import pty, os

master, slave = pty.openpty()
os.write(master, b"Halloo")
os.write(slave, b'Hello')
os.read(master, 5)
os.write(master, b"Halloo")
os.read(slave, 6)

Tags: 文件答案程序masterread进程os解决方案

热门问题