MacOS: ¿cuál es la diferencia entre /dev/tty.* y /dev/cu.*?


88

Cada dispositivo serie aparece dos veces /dev, una vez como un tty.*y una vez como un cu.*.

¿Qué es el cu.*dispositivo? ¿En qué se diferencia del tty.*dispositivo?

mh@maru ~ --> ls -l /dev/*.usbmodem621
crw-rw-rw-  1 root  wheel   11,   5 Dec 25 18:00 /dev/cu.usbmodem621
crw-rw-rw-  1 root  wheel   11,   4 Dec 25 18:00 /dev/tty.usbmodem621

Respuestas:


96

http://lists.berlios.de/pipermail/gpsd-dev/2005-April/001288.html :

La idea es complementar el software para compartir una línea entre las llamadas entrantes y salientes. El dispositivo de llamada (normalmente / dev / tty *) se utiliza para el tráfico entrante. Cualquier proceso que intente abrirlo se bloquea dentro de la llamada open () siempre que DCD no esté confirmado por hardware (es decir, siempre que el módem no tenga un operador). Durante esto, el dispositivo de llamada (típicamente / dev / cu * - cu significa "unidad de llamada") se puede usar libremente. Abrir / dev / cu * no requiere que se confirme DCD y se realiza correctamente de inmediato. Una vez que se haya logrado, la apertura bloqueada () en el dispositivo de llamada se suspenderá y ni siquiera podrá completarse cuando se suba el DCD, hasta que el dispositivo cu se cierre nuevamente.

De esa manera, puede tener un getty escuchando en / dev / tty * y aún puede usar / dev / cu * sin restricciones.


Gracias Tom, eso es justo lo que necesitaba saber.
Mark Harrison

Correcto, un caso en el que este problema es si desea usar (en Unix y amigos) 'cat' para capturar datos del puerto serie en un archivo como 'cat /dev/cu.xxxx> file.txt' que no funciona con ' tty. ' debido al bloqueo. Al menos no en MacOs.
nyholku

Pude enviar cosas a través de tty. ¿Porqué es eso?
StackOverflowOfficial
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.