LINUX.ORG.RU

Одновременный доступ к tty


0

1

Пожалуйста ткните носом где я не прав. Ситуация:
1. Модуль ядра при загрузке создает устройство /dev/ttyMDM
2. callback для write все записанное в порт возвращает пользователю
3. Открываю устройство через minicom и как и предполагалось, в окне миникома вижу то, что ввожу с клавиатуры

Чего хочется:
Хочется чтобы из данного tty можно было читать более чем одному приложению. Т.е. я печатаю в миникоме и вижу вывод как в миникоме так и в другом приложении.

Проблема:
Как правильно открыть во втором приложении /dev/ttyMDM? Проовал обычным open() с O_NONBLOCK и читать через read(). В этом случае если миником запущен то мое приложение вылетает с SIGSEGV. Если первым запускать мое приложение по в SIGSEGV валится minicom.

Где я не прав?


могу ошибаться, но мне кажется для сериализации доступа придется писать демон, к которому будут подключаться все остальные, чтобы выхлоп писать всем жаждущим, ну и соответственно получение от них данных на запись в этот tty. еще раз говорю, возможно я ошибаюсь. просто на вскидку в голове вспоминаются какие-то ограничения, какие именно, не [помню/знаю]

Deleted ()
Ответ на: комментарий от const86

Скрин проблему не решает, или решает в рамках скрина. Пушо допустим кермит со скрином пустить не выйдет

vasily_pupkin ★★★★★ ()

Что интересно, если я делаю тот же эксперимент с /dev/tty8 то в minicom нет вывода но и мое приложение не валится

bobych ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.