Hello,

I guess I answered my own question with a little more digging:

> Internally, the task cycle is controlled by an RCS_TIMER. Waiting
> (AFAIK) is done by the followin line in libnml/os_intf/_timer.c
> (function esleep()):
>
> ...
> if (select(0, NULL, NULL, NULL,&tval)<  0) {
> ...

Indeed, acording to these:

http://export.writer.zoho.com/public/rreginelli/Chapter-5---High-Resolution-Timers-Final1/fullpage

http://readlist.com/lists/vger.kernel.org/linux-kernel/34/171174.html

a call to select() uses low resolution timers, therefore is not 
guaranteed to sleep the amount of time desired.

So, the question is: can esleep() be modified to use a high resolution 
timer (nanosleep() or similar) or maybe the RCS_TIMER class use this 
other method of sleeping (since apparentely it's used only for timing 
the main emc task?

Thanks.
-- 
Matheus Degiovani
Gigatron Software e Treinamentos Ltda.
(18) 3649-4045
MSN: math...@gigatron.com.br

--

Críticas ou Sugestões? Ligue para Ouvidoria Gigatron: (18) 3649-4048

------------------------------------------------------------------------------
The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE:
Pinpoint memory and threading errors before they happen.
Find and fix more than 250 security defects in the development cycle.
Locate bottlenecks in serial and parallel code that limit performance.
http://p.sf.net/sfu/intel-dev2devfeb
_______________________________________________
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers

Reply via email to