[OSy] Testování vstupu
Martin Decky
decky at d3s.mff.cuni.cz
Sun Nov 11 15:43:12 CET 2012
> echo "a" | msim
>
> Pochopil bych, že přesměrování více znaků může něco pokazit tím, že mezi nimi
> je jen minimální prodleva, ale tohle moc nechápu.
>
> Chci se zeptat, jestli můžeme tento problém ignorovat, nebo jestli je nutné ho
> nějak vyřešit. Popřípadě jestli to někomu funguje. My jsme zkoušeli mačkat
> více kláves najednou a podobné věci a vždy to chodilo, jediný problém je s
> redirectem.
V obecne rovine je "problem" zpusoben tim, ze MSIM nepracuje se svym
vstupem jako s generickym souborem, ale specificky jako s interaktivnim
terminalem, takze casovani znaku hraje roli. MSIM dostava nebufferovany
vstup a dovede generovat ve virtualnim stroji interrupt pri stisku kazde
klavesy.
To je jeden z duvodu, proc je test io1 interaktivni. Dalsi duvod je ten,
ze ten test je skutecne nutne vyhodnotit interaktivne clovekem (jak se
presne chova, jake jsou latence pri zobrazovani stisknuteho znaku atd.).
Pouhe strojove porovnani vystupu by nedavalo smysl.
Muzete zkusit vyresit to presmerovani treba tim, ze jednotlive znaky na
vstupu budete generovat s pauzami. V pripade naseho referencniho reseni
a na GNU/Linuxu funguje generovani vstupu zpusobem viz nize. Ale
upozornuji, ze to urcite neni spolehlive a prenositelne reseni, takze
jej pripadne mejte jen pro vlastni potrebu a do standardniho skriptu
test-as1.sh to prosim nedavejte.
sleep 10s
echo -n a
sleep 1s
echo -n b
sleep 1s
echo -n c
sleep 1s
echo
sleep 1s
echo -n a
sleep 1s
echo -n b
sleep 1s
echo -n c
sleep 1s
echo
M.D.
More information about the NSWI004
mailing list