Если я правильно понял ваш вопрос, может быть несколько проблем, соответствующих тому, что вы хотите сделать.
1) Для чтения из этих файлов в папке / dev вам необходимы права root.
2) (я не слишком уверен в этом), но я считаю, что это особые файлы, и поэтому вы не можете читать их, как обычный файл.
Если вы позаботились об этих двух проблемах, это все равно не решит вашу проблему, потому что X-события обрабатываются X-сервером, который вы можете рассматривать как одновременное чтение одного и того же файла. Это тот, который захватывает эти события и обрабатывает их соответственно, вызывая соответствующие обработчики событий, если таковые имеются, для определенного события в верхнем активном окне. Все окна общаются с X-сервером, который сообщает, что что-то было напечатано. Поэтому, даже если у вас открыто окно терминала с запущенной программой, сначала X-сервер должен сообщить окну о нажатиях клавиш, которые затем будут переданы программе, работающей в терминале.
Другой код, который выполняет аналогичную работу, можно найти здесь .