Myślę że proces terminala można uruchamiać na prawdziwym terminalu, wtedy nie trzeba się przejmować dekodowaniem wejścia z /dev/input oraz tym że wejście nadal trafiałoby na konsolę. Do odczytu klawiatury należy wtedy użyć curses.