C - programovaci techniky.
Alexandr Malusek
malusek na hroch.ujf.cas.cz
Pondělí Duben 27 19:12:50 CEST 1998
drak na brailcom.cz (Roman Vesely) writes:
> > > Potrebuji dodelat do jednoho daemona funkci, ktera vrati posledne
> > > stisknutou klavesu.(Mela by umet i Fxx (0<x<13), sipky).
> > > Mela by fungovat na vsech konzolich, takze /dev/console pouzit nejde...
> > > Jak NATO ?
> >
> > (2) Naposledy stisknuta klavesa se nikde nearchivuje, takze takovou
> > funkci neni rozumne mozne napsat.
>
> A jestlize mam dany casovy interval, ve kterem mohu systemu "vzit"
> klavesnici, a koukat, co z ni jde, to by slo rozumne napsat ?
Neni mi zcela jasne, co je cilem. Nasledujici berte s rezervou,
protoze do hloubky to neznam:
Domnivam se, ze pokud nejaka aplikace precte z terminaloveho driveru
znak, pak jiz jina nema sanci tento znak precist, protoze driver znak
"zapomene". Tedy pokud napisete demona, ktery bude cist znaky z
klavesnice (pres terminalovy driver), pak se tyto znaky k one aplikaci
vubec nedostanou. (Leda ze by ji je demon predal - pak by ale aplikace
necetla z terminaloveho driveru)
Asi by slo rozsirit terminalovy driver tak, aby si ony posledni
stisknute klavesy pamatoval v nejake strukture, ke ktere by se dalo
pristupovat pres ioctl(). Demon by pak volanim ioctl() tyto klavesy
zjistil. To ale vyzaduje modifikaci a rekompilaci jadra, je to
neprenosne, ...
--
A. Malusek (malusek na ujf.cas.cz)
UJF AV CR
Další informace o konferenci Linux