diff options
Diffstat (limited to 'testsuites/tmtests/tmck/task1.c')
-rw-r--r-- | testsuites/tmtests/tmck/task1.c | 180 |
1 files changed, 0 insertions, 180 deletions
diff --git a/testsuites/tmtests/tmck/task1.c b/testsuites/tmtests/tmck/task1.c deleted file mode 100644 index 80a64f5326..0000000000 --- a/testsuites/tmtests/tmck/task1.c +++ /dev/null @@ -1,180 +0,0 @@ -/* - * - * COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994. - * On-Line Applications Research Corporation (OAR). - * All rights assigned to U.S. Government, 1994. - * - * This material may be reproduced by or for the U.S. Government pursuant - * to the copyright license under the clause at DFARS 252.227-7013. This - * notice must appear in all copies of this file and its derivatives. - * - * $Id$ - */ - - -#define TEST_INIT -#include "system.h" - -#define MAXIMUM_DISTRIBUTION 10000 - -#undef OPERATION_COUNT -#define OPERATION_COUNT 100000 - -int Distribution[ MAXIMUM_DISTRIBUTION + 1 ]; - -rtems_task Task_1( - rtems_task_argument argument -); - -void check_read_timer( void ); - -rtems_task Init( - rtems_task_argument argument -) -{ - rtems_id id; - rtems_status_code status; - - /* - * Tell the Timer Driver what we are doing - */ - - Set_find_average_overhead( 1 ); - - Print_Warning(); - - puts( "\n\n*** TIME CHECKER ***" ); - - Task_name[ 1 ] = rtems_build_name( 'T', 'A', '1', ' ' ), - - status = rtems_task_create( - 1, - 5, - RTEMS_MINIMUM_STACK_SIZE, - RTEMS_DEFAULT_MODES, - RTEMS_DEFAULT_ATTRIBUTES, - &id - ); - directive_failed( status, "rtems_task_create of TA1" ); - - status = rtems_task_start( id, Task_1, 0 ); - directive_failed( status, "rtems_task_start of TA1" ); - - status = rtems_task_delete( RTEMS_SELF ); - directive_failed( status, "rtems_task_delete of RTEMS_SELF" ); -} - -rtems_task Task_1( - rtems_task_argument argument -) -{ - rtems_unsigned32 index; - - check_read_timer(); -rtems_test_pause(); - - Timer_initialize(); - end_time = Read_timer(); - - put_time( - "NULL timer stopped at", - end_time, - 1, - 0, - 0 - ); - - Timer_initialize(); - for ( index = 1 ; index <= 1000 ; index++ ) - (void) Empty_function(); - end_time = Read_timer(); - - put_time( - "LOOP (1000) timer stopped at", - end_time, - 1, - 0, - 0 - ); - - Timer_initialize(); - for ( index = 1 ; index <= 10000 ; index++ ) - (void) Empty_function(); - end_time = Read_timer(); - - put_time( - "LOOP (10000) timer stopped at", - end_time, - 1, - 0, - 0 - ); - - Timer_initialize(); - for ( index = 1 ; index <= 50000 ; index++ ) - (void) Empty_function(); - end_time = Read_timer(); - - put_time( - "LOOP (50000) timer stopped at", - end_time, - 1, - 0, - 0 - ); - - Timer_initialize(); - for ( index = 1 ; index <= 100000 ; index++ ) - (void) Empty_function(); - end_time = Read_timer(); - - put_time( - "LOOP (100000) timer stopped at", - end_time, - 1, - 0, - 0 - ); - - puts( "*** END OF TIME CHECKER ***" ); - exit( 0 ); -} - -void check_read_timer() -{ - rtems_unsigned32 index; - rtems_unsigned32 time; - - for ( index = 1 ; index <= MAXIMUM_DISTRIBUTION ; index++ ) - Distribution[ index ] = 0; - - for ( index = 1 ; index <= OPERATION_COUNT ; index++ ) { - Timer_initialize(); - end_time = Read_timer(); - if ( end_time > MAXIMUM_DISTRIBUTION ) { - /* - * Under UNIX a simple process swap takes longer than we - * consider valid for our testing purposes. - */ - printf( "TOO LONG (%d) at index %d!!!\n", end_time, index ); -#if defined(unix) || defined(go32) - index--; - continue; -#else - exit( 1 ); -#endif - } - else - Distribution[ end_time ]++; - } - - printf( "Units may not be in microseconds for this test!!!\n" ); - time = 0; - for ( index = 0 ; index <= MAXIMUM_DISTRIBUTION ; index++ ) { - time += (Distribution[ index ] * index); - if ( Distribution[ index ] != 0 ) - printf( "%d %d\n", index, Distribution[ index ] ); - } - printf( "Total time = %d\n", time ); - printf( "Average time = %d\n", time / OPERATION_COUNT ); -} |