From 9f95a19a57f0f85212c320327636e93d70bbecc8 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Tue, 2 Nov 1999 18:35:52 +0000 Subject: Split time.c into multiple files. --- c/src/exec/posix/src/clockgetres.c | 48 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 c/src/exec/posix/src/clockgetres.c (limited to 'c/src/exec/posix/src/clockgetres.c') diff --git a/c/src/exec/posix/src/clockgetres.c b/c/src/exec/posix/src/clockgetres.c new file mode 100644 index 0000000000..3be3439cdb --- /dev/null +++ b/c/src/exec/posix/src/clockgetres.c @@ -0,0 +1,48 @@ +/* + * $Id$ + */ + +#include +#include +#include + +#include +#include +#include +#include + +#include +#include + +/*PAGE + * + * 14.2.1 Clocks, P1003.1b-1993, p. 263 + */ + +int clock_getres( + clockid_t clock_id, + struct timespec *res +) +{ + if ( !res ) + set_errno_and_return_minus_one( EINVAL ); + + switch ( clock_id ) { + + /* + * All time in rtems is based on the same clock tick. + */ + + case CLOCK_REALTIME: + case CLOCK_PROCESS_CPUTIME: + case CLOCK_THREAD_CPUTIME: + if ( res ) + _POSIX_Interval_to_timespec( _TOD_Microseconds_per_tick, res ); + break; + + default: + set_errno_and_return_minus_one( EINVAL ); + + } + return 0; +} -- cgit v1.2.3