• # Ceci constitue peut-être une réponse

    Posté par . En réponse au message Cherche solution interruption clavier. Évalué à 4.

    Tout cela m'a l'air bien flou. Si j'ai bien compris, il y a 2 problèmes :
    - attente d'évènements venant de 2 sources différentes (tty et ttyS)
    - pour tty, attente en mode "caractère" plutôt que "ligne"
    Dans les 2 cas, inutile de s'intéresser aux IRQ : c'est le noyau qui gère ça. Les gérer soi-même signifierait... modifier le noyau. Ce serait ridicule parce que tout ça est possible en espace user, et il y a même moyen de faire quelque chose de portable (solaris, *bsd, ... mac os ???).

    Pour le premier point, select ou poll sont des solutions (RTFM).
    Pour le deuxième point, info libc, rechercher "non canonical input" (ou http://info2html.sourceforge.net/cgi-bin/info2html-demo/info(...) ). Pour ce qui est du cas spécial du "Ctrl-C", man signal : c'est SIGINT qu'il faut rattraper.

    Evidemment, tout ca est accessible directement par la libc. Mais j'imagine qu'en utilisant des bibliotheques de plus haut niveau (glib, *curses, slang, etc.) il y a moyen de se simplifier la vie.