¿Cuál es la mejor práctica para bloquear puertos serie y otros dispositivos en Linux?

El objetivo es "bloquear" el acceso a un dispositivo serie u otro dispositivo Linux, para garantizar el acceso exclusivo al dispositivo mientras está en uso. Esto evita, por ejemplo, que dos programas abran el mismo dispositivo en serie y "compitan" para leer bytes del dispositivo.

El consejo ha sido utilizar archivos de bloqueo de dispositivos UUCP de estilo SYSV como/var/lock/LCK..ttyS1. Eso es lo que recomiendaLinux Serial HOTWO: Bloqueo de otros. También está documentado en elEstándar de jerarquía del sistema de archivos. Se implementa mediante programas de terminal en serie como gtkterm, picocom. Hay bibliotecas comoliblockdev yliblockfile para apoyar esto (aunque los detalles de implementación difieren entre estas dos bibliotecas).

Sin embargo, he encontradoError de Debian # 734086, que dice en Linux, los bloqueos de dispositivos UUCP de estilo SYSV están en desuso, yflock() en su lugar deberían usarse cerraduras de aviso.

Sin embargo, no puedo encontrar una fuente de documentos confiable para describir el desuso de estos bloqueos de dispositivos UUCP de estilo SYSV, y la recomendación deflock(), aparte de ese error de Debian.

También he encontradoioctl(fd, TIOCEXCL) que es usado por elscreen utilidad para bloquear una terminal.

¿Cuál es la "mejor práctica" moderna para bloquear puertos serie y otros dispositivos en Linux? ¿Dónde podemos encontrar documentación actualizada que describa esto?

Respuestas a la pregunta(1)

Su respuesta a la pregunta