10ms impuls
Pavel Kankovsky
peak na kerberos.troja.mff.cuni.cz
Úterý Říjen 7 12:13:07 CEST 1997
On Tue, 7 Oct 1997, Tom Mazouch wrote:
> Marek Gresko wrote:
[...]
> No...tohle je prave vec, kterou bych potreboval potvrdit. Podstatny je
> to, ze se proste _nesmi_ stat, aby se ten cas za urcitych meznich
> podminek (velka zatez systemu) prodlouzil. Bud 10ms nebo nic a zkusit to
> za chvili.
no... on je stejne problem ten, ze 10ms je na Intelskych procesorech prave
casove kvantum, se kterym se planuje (casovac jede na 100 Hz), takze ani
nanosleep() ani nic jineho to neudela moc presne
reseni:
1) vecpat se do jadra a povesit se na casove tiky (nejake ty timery,
co tam pouziva kazdy druhy driver)
2) bezet s realtime planovanim (sched_setscheduler(SCHED_FIFO)) a tech 10 ms
vyrobit po kouscich, protoze nanosleep() je pro male intervaly (snad asi
<= 2 ms) delan bez preplanovavani cekaci smyckou v jadre, takze bude
(pri vhodne priorite) zajisteno, ze se k lizu nedostane nikdo jiny
(s vyjimkou jadra, ktere by se melo chovat slusne a nijak zvlast to
nezdrzovat)
3) poridit si Alphu, kde je kvantum 1 ms a nezatezovat ji :)
--Pavel Kankovsky aka Peak (troja.mff.cuni.cz network administration)
Další informace o konferenci Linux