Мне нужно записать некоторые данные в последовательный порт, при этом гарантируя, что, если они не могут быть записаны данной «отметкой времени истечения», они вернут код ошибки. Данные поступают с другого последовательного порта, а время истечения - с третьего устройства.
Мой первоначальный план состоял в том, чтобы реализовать все это в пространстве ядра, но я пришел к выводу, что, поскольку ему нужен доступ к 3 устройствам, вероятно, было бы лучше соединить их в пространстве пользователя; к сожалению, это затрудняет выбор времени.
Несмотря на то, что я потратил много времени на чтение LDD3 и просмотр подсистемы tty и связанного с ней кода, у меня возникли проблемы при разработке, как этого добиться. Я действительно хочу добавить функциональность к существующему последовательному порту / tty устройству, чтобы я мог использовать ioctl или написать escape-последовательность, указывающую данные и время истечения.
У меня есть контроль над источником ядра, хотя он уже распространен, если я смогу достичь этого исключительно с помощью модуля ядра, который был бы превосходным. Если необходимо обновить ядро, пусть будет так.
Может ли кто-нибудь предоставить либо руководство по добавлению этой истекающей записи в существующую комбинацию последовательный / tty, либо другой совет о том, что может быть лучше для этого?
Заранее спасибо - извиняюсь, если недостаточно информации, я добавлю детали, если они требуются.