为什么我有32个ttyS

我似乎有ttyS0一直到ttyS31,我的机器上唯一真正的(很好的虚拟但至少他们做了一些)串行端口是ttyACM0和rfcomm0,这些ttyS的所有内容是什么?

通过内核配置设置将最大可能的串行ttys数量硬编码为32 CONFIG_SERIAL_8250_RUNTIME_UARTS

只有当8250 UART驱动程序在机器上找到串行UART时,/ dev / ttyS * char设备才会起作用。

内核配置了如此高的值,因为有些机器支持许多UART。

我想你正在调查/dev 。 即使不可用,ttyS *设备也始终可用。 事实上,如果你试着写信给他们,你会得到EIO:

 # echo > /dev/ttyS12 -bash: echo: write error: Input/output error