problem casovani programu bylo Re: ioperm - program
Tomas Konir
moje na vabo.cz
Středa Leden 28 09:38:40 CET 2004
On Wed, 28 Jan 2004, Vaclav Peroutka wrote:
> Diky, pomoci ppdev to funguje.
>
> Jenom nastal problem - kdyz mam hlavni smycku, ktera cte z portu, vse
> bezi rychle. Ale kdyz ji chci zpomalit a pouziju usleep nebo nanosleep,
> vse se neuveritelne zpomali. Napr. usleep(0) mi zpomali cteni portu na
> cca 70Hz, usleep(1) na 50Hz a ta hodnota se nemeni, i kdyz usleep
> nastavim na 1000 - coz mi prijde hodne zvlastni. Nanosleep se chova
> uplne stejne.
>
> Ci zalezitosti je takoveto chovani ? Kernelu, knihoven, nebo uplne
> neceho jineho ?
>
> Da se male zpomaleni programu udelat jinak ( rekneme radove milisekundy)?
Problem bude v tom, ze casovac kernelu v rade 2.4 bezi na 100Hz a proto
tezko probudi proces, ktery se uspal pomoci nejake verze sleep
dostatecne presne. Da se stahnout patch, ktery zvetsi HZ na 1000 a v
rade 2.6 je to 1000 defaultne. Tim se trochu zlepsi odezva, ale pokud to
potrebujes opravdu relativne presne, tak ti asi nezbyde nic jineho nez
aktivne cekat v nejake smycce a cas merit treba pomoci tiku procesoru.
MOJE
--
Konir Tomas
Czech Republic
Brno
ICQ 25849167
Další informace o konferenci Linux