Files
rtems/testsuites/tmtests/include/timesys.h
T
Joel Sherrill b454bc9149 2002-08-01 Joel Sherrill <joel@OARcorp.com>
* Per PR47 add support for buffered test output.  This involved
	adding defines to redirect output to a buffer and dump it when
	full, at "test pause", and at exit.  To avoid problems when redefining
	exit(), all tests were modified to call rtems_test_exit().
	Some tests, notable psxtests, had to be modified to include
	the standard test macro .h file (pmacros.h or tmacros.h) to
	enable this support.
	* include/timesys.h, tm01/task1.c, tm02/task1.c, tm03/task1.c,
	tm04/task1.c, tm05/task1.c, tm06/task1.c, tm07/task1.c, tm08/task1.c,
	tm09/task1.c, tm10/task1.c, tm11/task1.c, tm12/task1.c, tm13/task1.c,
	tm14/task1.c, tm15/task1.c, tm16/task1.c, tm17/task1.c, tm18/task1.c,
	tm19/task1.c, tm20/task1.c, tm21/task1.c, tm22/task1.c, tm23/task1.c,
	tm24/task1.c, tm25/task1.c, tm26/task1.c, tm27/task1.c, tm28/task1.c,
	tm29/task1.c, tmck/task1.c, tmoverhd/testtask.c: Modified.
2002-08-02 00:52:37 +00:00

67 lines
1.9 KiB
C

/* timesys.h
*
* This header file contains the global variables for the Time
* suite.
*
* 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 <tmacros.h>
/*
* This constant determines the maximum number of a resource
* that will be created. For example, some test create multiple
* blocking tasks to determine the execution time of blocking
* services. By default, the blocking time of 100 tasks will
* be measured. Small targets often do not have enough memory
* to create 100 tasks. By overriding the default OPERATION_COUNT
* with a lower number (typically 10 or less), all of the time tests
* can usually be run. This is stil not very fine-grained but
* is enough to significantly reduce memory consumption.
*/
#ifndef OPERATION_COUNT
#define OPERATION_COUNT 100
#endif
/* functions */
#define put_time( _message, _total_time, \
_iterations, _loop_overhead, _overhead ) \
printf( \
"%s %d\n", \
(_message), \
(((_total_time) - (_loop_overhead)) / (_iterations)) - (_overhead) \
)
#if defined(STACK_CHECKER_ON) || defined(RTEMS_DEBUG)
#define Print_Warning() \
do { \
puts( \
"\n" \
"THE TIMES REPORTED BY THIS TEST INCLUDE DEBUG CODE!\n" \
"\n" \
); \
} while (0)
#else
#define Print_Warning()
#endif
/* variables */
TEST_EXTERN volatile rtems_unsigned32 end_time; /* ending time variable */
TEST_EXTERN volatile rtems_unsigned32 overhead; /* loop overhead variable */
TEST_EXTERN rtems_id Task_id[ OPERATION_COUNT+1 ]; /* array of task ids */
TEST_EXTERN rtems_id Task_name[ OPERATION_COUNT+1 ]; /* array of task names */
/* end of include file */