EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  <20152016  2017  2018  2019  2020  2021  2022  2023  2024  Index 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  <20152016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: Problem with generalTime clock synchronization
From: "J. Lewis Muir" <[email protected]>
To: Andrew Johnson <[email protected]>, <[email protected]>
Date: Wed, 16 Dec 2015 10:10:21 -0600
On 12/15/15 6:39 PM, Andrew Johnson wrote:
> On 12/15/2015 05:19 PM, Michael Davidsaver wrote:
>> I would point out that allowing jumps backwards will allow timers to
>> expire early as the timer queue uses general time.
>
> The epicsEventWaitWithTimeout() and epicsThreadSleep() APIs are both
> safe since they're implemented using tick counts on the two RTOS's,
> but you're talking about Jeff's epicsTimer implementations, which I
> now see do absolute time comparisons to determine when a timer should
> go off.

Hi, Andrew!

So those two APIs are safe on the two RTOSes (vxWorks and RTEMS, I
assume), but not on others, right?  Obviously, there are *lots* of soft
IOCs out there, so this issue would apply to all of those.

> I'm not sure how big a problem this is in practice.

To me, a timer or similar API that expires early is a bug (unless
documented to allow for early expiration, but that might make the API
difficult to use or worthless) and can lead to all kinds of problematic
behavior.  I would love for all timers to work correctly on all
platforms.  I'm not closely following the core development, but perhaps
you could implement a monotonic time source and use it for soft IOC
timer implementations.

Regards,

Lewis


Replies:
Re: Problem with generalTime clock synchronization Andrew Johnson
References:
Problem with generalTime clock synchronization Andrew Johnson
Re: Problem with generalTime clock synchronization Michael Davidsaver
Re: Problem with generalTime clock synchronization Andrew Johnson

Navigate by Date:
Prev: Re: Problem with generalTime clock synchronization Andrew Johnson
Next: Re: Problem with generalTime clock synchronization Andrew Johnson
Index: 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  <20152016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: Problem with generalTime clock synchronization Andrew Johnson
Next: Re: Problem with generalTime clock synchronization Andrew Johnson
Index: 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  <20152016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 16 Dec 2015 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·