Я новичок в разработке драйверов для Linux .... Я разрабатываю SMS-драйвер (AT-команды через последовательный порт для модема), используя TTY для доступа к последовательному порту. Драйвер написан на C.Драйвер, управляемый прерываниями, с использованием TTY?
В конструкции сообщений от модема драйвера может быть вызвано двумя событиями:
1) Состояние, как реагировать на AT команд, выдаваемых драйвером (т.е. ожидаемые сообщения)
2) Индикация новых SMS (т. Е. Неожиданных сообщений)
Я планирую два потока - один для записи в TTY и один для чтения из TTY. Можно ли настроить TTY так, чтобы мой read-thread просыпался по входящим символам (т. Е. Read-thread инициировался событиями и не основывался на опросе)?
С наилучшими пожеланиями, Витек
Дополнительный комментарий: Я использовал «Последовательный Руководство по программированию для операционных систем POSIX» (HTTP: // WWW. easysw.com/~mike/serial/serial.html), но не нашел ответа на мой вопрос. – Witek
Что вы хотите, так это то, как обычный 'read()' работает в нормальном, блокирующем дескрипторе файла - он будет спать до тех пор, пока данные не будут доступны для чтения (или сигнал пойман или другое исключительное условие). – caf