Serial port 串行驱动程序中uart_操作和tty_操作的使用混乱

Serial port 串行驱动程序中uart_操作和tty_操作的使用混乱,serial-port,linux-device-driver,device-driver,tty,Serial Port,Linux Device Driver,Device Driver,Tty,我正在学习Linux串行设备驱动程序。为此,我阅读了示例驱动程序代码并阅读了LDD3。 我对tty串行端口上执行的文件操作感到困惑 基本上有两个文件tty_io.c(tty层)和serial_core.c(核心层)文件使用文件操作结构。 所以我很困惑,当任何读取或写入或打开操作从应用程序端发生时,哪个文件操作结构起作用 请提供可能的解决方案。 谢谢。在用户空间中,您通常直接或通过libc执行open()、read()或write()系统调用。@AndyShevchenko…可能是您弄错了。。我的

我正在学习Linux串行设备驱动程序。为此,我阅读了示例驱动程序代码并阅读了LDD3。 我对tty串行端口上执行的文件操作感到困惑

基本上有两个文件tty_io.c(tty层)和serial_core.c(核心层)文件使用文件操作结构。 所以我很困惑,当任何读取写入打开操作从应用程序端发生时,哪个文件操作结构起作用

请提供可能的解决方案。
谢谢。

在用户空间中,您通常直接或通过libc执行
open()
read()
write()
系统调用。@AndyShevchenko…可能是您弄错了。。我的问题是,从两个文件
tty_io.c
serial_core.c
中,当
open()
read()
write()时,哪个文件的操作结构会出现
系统调用发生?取决于您使用的设备节点以及与该节点关联的驱动程序。我使用的PCI卡打开两个RS-232端口。因此8250驱动程序与此关联。显然,
serial\u core.c
为您提供了该功能。