Okay, so from what I could gather the time between the two gettime calls can exceed 1 sec if it is preempted by another process in between. Is my line of thought correct?
On Wed, Apr 15, 2020 at 6:01 PM Sebastian Huber < sebastian.hu...@embedded-brains.de> wrote: > > On 15/04/2020 14:29, Utkarsh Rai wrote: > > On Wed, Apr 15, 2020 at 5:35 PM Sebastian Huber < > sebastian.hu...@embedded-brains.de> wrote: > >> On 15/04/2020 14:02, Utkarsh Rai wrote: >> >> > + status = clock_gettime( CLOCK_MONOTONIC, &end_time ); >>> > + rtems_test_assert( status == 0 ); >>> > + >>> > + rtems_test_assert( (end_time.tv_sec-init_time.tv_sec) == 0 ); >>> >>> Is end_time.tv_sec - init_time.tv_sec == 0 under all circumstances? >>> >> >> My idea was to check for a 1ns delay with a reasonable amount of >> overhead, hence I checked for end_time.tv_sec - init_time.tv_sec == 0. >> >> Exists there a value of init_time for which end_time.tv_sec != >> init_time.tv_sec and still 1ns elapsed? >> > > Sorry, maybe I am confused in my concept, kidly help me out. I want to > produce a 1ns delay, so I make a call to clock_nanosleep with flag value as > 0 (to sleep for specified time) and the delay being 1ns. I recorded the > time before the sleep call and after the sleep call. Now, I want to check > if the delay produced was actually 1ns with a reasonable overhead, my > assumption for an unreasonable overhead was that if I specify a delay of > 1ns > > Up to here everything is fine. > > and I get a delay in seconds, it would be an error. > > Think about this once more. >
_______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel