在 PTM Master 伪终端上写入

在 PTM Master 伪终端上写入

当我们使用write()系统调用函数在ptm master上写入时,该pty_write()函数会被触发,因为/dev/ptmx它是一个设备文件。原型write()是:

ssize_t write(int fd, const void *buf, size_t count);

其中fd是通过调用 open 获得的文件描述符/dev/ptmx

原型pty_write()是:

int pty_write(struct tty_struct *tty, const unsigned char *buf, int c);

ttyptm 在哪里?

正如您所看到的,这两个函数都有一个缓冲区和许多要作为参数写入的字节。但第三个参数不同。该write()函数有一个文件描述符,并且pty_write()函数有 tty 结构。

内核如何将函数的文件描述符链接write()到函数的右侧 tty (ptm) pty_write()

相关内容