diff options
Diffstat (limited to 'c/src/tests/sptests/threaditerate/itrontask.c')
-rw-r--r-- | c/src/tests/sptests/threaditerate/itrontask.c | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/c/src/tests/sptests/threaditerate/itrontask.c b/c/src/tests/sptests/threaditerate/itrontask.c new file mode 100644 index 0000000000..8ae8364d66 --- /dev/null +++ b/c/src/tests/sptests/threaditerate/itrontask.c @@ -0,0 +1,52 @@ +/* Task_1_through_3 + * + * This routine serves as a test task. It verifies the basic task + * switching capabilities of the executive. + * + * Input parameters: + * argument - task argument + * + * Output parameters: NONE + * + * COPYRIGHT (c) 1989-1999. + * On-Line Applications Research Corporation (OAR). + * + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.OARcorp.com/rtems/license.html. + * + * $Id$ + */ + +#include "system.h" + +void ITRON_task_2_through_4( void ) +{ + ID tid; + int tid_index; + rtems_time_of_day time; + ER status; + char name[30]; + + status = get_tid( &tid ); + directive_failed( status, "get_tid"); + + tid_index = tid - 1; /* account for init tasks */ + + status = rtems_task_wake_after( 10 * TICKS_PER_SECOND ); + directive_failed( status, "rtems_task_wake_after" ); + + sprintf(name, "ITRON task %d", tid_index); + + while( FOREVER ) { + status = rtems_clock_get( RTEMS_CLOCK_GET_TOD, &time ); + directive_failed( status, "rtems_clock_get" ); + + printf(name); + print_time( " - rtems_clock_get - ", &time, "\n" ); + + status = rtems_task_wake_after( 30 * TICKS_PER_SECOND ); + directive_failed( status, "rtems_task_wake_after" ); + } +} + |