Есть в винде такая вот функция (GetAsyncKeyState), которая, работая асинхронно, возвращает код последней нажатой клавиши. Нужен аналог сабжа но под Linux.
Есть утилита (на самом деле банальный тест на работоспособность неких драйверов к некой плате цифровой обработки сигналов) который эмулирует некий механизм работы с железкой, которая в бесконечном цикле получает от железки данные, а по нажатию разнообразных клавиш отправляет железяки разнообразные сообщения (читай короткие массивы байт). Все это работает без какого либо GUI в чистой консоли, и не тащит за собой других библиотек, ибо призван максимально малым колличеством кода продемонстрировать не работоспособность дров, без вопросов собираться на машине у разработчика, у которого этих библиотек может неоказатья.
Единственное, что пока удалось найти из стандартного, это aio, но во первых это всеже не совсем то, что нужно ибо механизм реализован на чтении стандартного ввода и без нажатия enter не работает, а вовторых, применимо к моему случаю, просто костыль, да и работает пока не совсем понятно как, ибо при вызове aio_return возвращает всегда 0 в случае если ввода вообще не было или -1 в противном случае??? Да еще порождает туеву хучу потоков (минимум 1).
Может кто сталкивался с чем-то подобным, посоветуйте куда копать, желательно без установки дополнительных библиотек.