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