diff options
Diffstat (limited to 'c/src/ada-tests/tmtests')
129 files changed, 0 insertions, 17426 deletions
diff --git a/c/src/ada-tests/tmtests/tm01/config.h b/c/src/ada-tests/tmtests/tm01/config.h deleted file mode 100644 index be54f54955..0000000000 --- a/c/src/ada-tests/tmtests/tm01/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 2 -#define CONFIGURE_MAXIMUM_SEMAPHORES 1 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm01/tm01.adb b/c/src/ada-tests/tmtests/tm01/tm01.adb deleted file mode 100644 index 34671d1495..0000000000 --- a/c/src/ada-tests/tmtests/tm01/tm01.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM01 of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM01 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM01; - diff --git a/c/src/ada-tests/tmtests/tm01/tmtest.adb b/c/src/ada-tests/tmtests/tm01/tmtest.adb deleted file mode 100644 index ba9ab5dee1..0000000000 --- a/c/src/ada-tests/tmtests/tm01/tmtest.adb +++ /dev/null @@ -1,276 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 1 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERFACES; use INTERFACES; -with RTEMS; -with RTEMS_CALLING_OVERHEAD; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 1 ***" ); - - TMTEST.TASK_NAME( 1 ) := RTEMS.BUILD_NAME( 'T', 'A', '1', ' ' ); - TMTEST.TASK_NAME( 2 ) := RTEMS.BUILD_NAME( 'T', 'A', '2', ' ' ); - TMTEST.TASK_NAME( 3 ) := RTEMS.BUILD_NAME( 'T', 'A', '3', ' ' ); - - RTEMS.TASK_CREATE( - TMTEST.TASK_NAME( 1 ), - 1, - 2048, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TMTEST.TASK_ID( 1 ), - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF TA1" ); - - RTEMS.TASK_START( - TMTEST.TASK_ID( 1 ), - TMTEST.TASK_1'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF TA1" ); - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- TASK_1 --- - - procedure TASK_1 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - SEMAPHORE_OBTAIN_TIME : RTEMS.UNSIGNED32; - SEMAPHORE_RELEASE_TIME : RTEMS.UNSIGNED32; - SEMAPHORE_OBTAIN_NO_WAIT_TIME : RTEMS.UNSIGNED32; - SEMAPHORE_OBTAIN_LOOP_TIME : RTEMS.UNSIGNED32; - SEMAPHORE_RELEASE_LOOP_TIME : RTEMS.UNSIGNED32; - INDEX : RTEMS.UNSIGNED32; - ITERATIONS : RTEMS.UNSIGNED32; - NAME : RTEMS.NAME; - SMID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; - begin - - NAME := RTEMS.BUILD_NAME( 'S', 'M', '1', ' ' ); - - SEMAPHORE_OBTAIN_TIME := 0; - SEMAPHORE_RELEASE_TIME := 0; - SEMAPHORE_OBTAIN_NO_WAIT_TIME := 0; - SEMAPHORE_OBTAIN_LOOP_TIME := 0; - SEMAPHORE_RELEASE_LOOP_TIME := 0; - --- Time one invocation of SEMAPHORE_CREATE - - TIMER_DRIVER.INITIALIZE; - - RTEMS.SEMAPHORE_CREATE( - NAME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - RTEMS.DEFAULT_ATTRIBUTES, - RTEMS.NO_PRIORITY, - SMID, - STATUS - ); - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "SEMAPHORE_CREATE", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.SEMAPHORE_CREATE - ); - --- Time one invocation of SEMAPHORE_DELETE - - TIMER_DRIVER.INITIALIZE; - - RTEMS.SEMAPHORE_DELETE( SMID, STATUS ); - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "SEMAPHORE_DELETE", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.SEMAPHORE_DELETE - ); - --- Create semaphore for repeated operations. - - RTEMS.SEMAPHORE_CREATE( - NAME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - RTEMS.DEFAULT_ATTRIBUTES, - RTEMS.NO_PRIORITY, - SMID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "SEMAPHORE_CREATE" ); - --- Perform repeated SEMAPHORE OBTAIN's and RELEASE's - - for ITERATIONS in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - TIMER_DRIVER.EMPTY_FUNCTION; - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - SEMAPHORE_OBTAIN_LOOP_TIME := SEMAPHORE_OBTAIN_LOOP_TIME + - TMTEST.END_TIME; - SEMAPHORE_RELEASE_LOOP_TIME := SEMAPHORE_RELEASE_LOOP_TIME + - TMTEST.END_TIME; - - -- Semaphore_obtain (available loop) - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - - RTEMS.SEMAPHORE_OBTAIN( - SMID, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - STATUS - ); - - end loop; - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - SEMAPHORE_OBTAIN_TIME := SEMAPHORE_OBTAIN_TIME + TMTEST.END_TIME; - - -- Semaphore_release - - TIMER_DRIVER.INITIALIZE; - - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - - RTEMS.SEMAPHORE_RELEASE( SMID, STATUS ); - - end loop; - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - SEMAPHORE_RELEASE_TIME := SEMAPHORE_RELEASE_TIME + - TMTEST.END_TIME; - - -- Semaphore_p (NO_WAIT) - - TIMER_DRIVER.INITIALIZE; - - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - - RTEMS.SEMAPHORE_OBTAIN( - SMID, - RTEMS.NO_WAIT, - RTEMS.NO_TIMEOUT, - STATUS - ); - - end loop; - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - SEMAPHORE_OBTAIN_NO_WAIT_TIME := - SEMAPHORE_OBTAIN_NO_WAIT_TIME + TMTEST.END_TIME; - - -- Semaphore_v - - TIMER_DRIVER.INITIALIZE; - - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - - RTEMS.SEMAPHORE_RELEASE( SMID, STATUS ); - - end loop; - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - SEMAPHORE_RELEASE_TIME := SEMAPHORE_RELEASE_TIME + - TMTEST.END_TIME; - - end loop; - - TIME_TEST_SUPPORT.PUT_TIME( - "SEMAPHORE_OBTAIN (semaphore available)", - SEMAPHORE_OBTAIN_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT * - TIME_TEST_SUPPORT.OPERATION_COUNT, - SEMAPHORE_OBTAIN_LOOP_TIME, - RTEMS_CALLING_OVERHEAD.SEMAPHORE_OBTAIN - ); - - TIME_TEST_SUPPORT.PUT_TIME( - "SEMAPHORE_OBTAIN (NO_WAIT)", - SEMAPHORE_OBTAIN_NO_WAIT_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT * - TIME_TEST_SUPPORT.OPERATION_COUNT, - SEMAPHORE_OBTAIN_LOOP_TIME, - RTEMS_CALLING_OVERHEAD.SEMAPHORE_OBTAIN - ); - - TIME_TEST_SUPPORT.PUT_TIME( - "SEMAPHORE_RELEASE (no task waiting)", - SEMAPHORE_RELEASE_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT * - TIME_TEST_SUPPORT.OPERATION_COUNT * 2, - SEMAPHORE_RELEASE_LOOP_TIME * 2, - RTEMS_CALLING_OVERHEAD.SEMAPHORE_RELEASE - ); - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end TASK_1; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm01/tmtest.ads b/c/src/ada-tests/tmtests/tm01/tmtest.ads deleted file mode 100644 index 3c8b449675..0000000000 --- a/c/src/ada-tests/tmtests/tm01/tmtest.ads +++ /dev/null @@ -1,68 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 1 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with TIMER_DRIVER; -with RTEMS; - -package TMTEST is - --- --- These arrays contain the IDs and NAMEs of all RTEMS tasks created --- by this test. --- - - TASK_ID : array ( RTEMS.UNSIGNED32 range 1 .. 3 ) of RTEMS.ID; - TASK_NAME : array ( RTEMS.UNSIGNED32 range 1 .. 3 ) of RTEMS.NAME; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TASK_1 --- --- DESCRIPTION: --- --- This RTEMS task performs the all of the timing operations in this test. --- - - procedure TASK_1 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm02/config.h b/c/src/ada-tests/tmtests/tm02/config.h deleted file mode 100644 index 588ff58466..0000000000 --- a/c/src/ada-tests/tmtests/tm02/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 111 -#define CONFIGURE_MAXIMUM_TIMERS 110 -#define CONFIGURE_MAXIMUM_SEMAPHORES 101 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm02/tm02.adb b/c/src/ada-tests/tmtests/tm02/tm02.adb deleted file mode 100644 index ee13a6ddf7..0000000000 --- a/c/src/ada-tests/tmtests/tm02/tm02.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM02 of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM02 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM02; - diff --git a/c/src/ada-tests/tmtests/tm02/tmtest.adb b/c/src/ada-tests/tmtests/tm02/tmtest.adb deleted file mode 100644 index 606661c956..0000000000 --- a/c/src/ada-tests/tmtests/tm02/tmtest.adb +++ /dev/null @@ -1,209 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 2 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERFACES; use INTERFACES; -with RTEMS; -with RTEMS_CALLING_OVERHEAD; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 2 ***" ); - - TMTEST.TEST_INIT; - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- TEST_INIT --- - - procedure TEST_INIT is - PRIORITY : RTEMS.TASK_PRIORITY; - INDEX : RTEMS.UNSIGNED32; - HIGH_ID : RTEMS.ID; - LOW_ID : RTEMS.ID; - TASK_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; - begin - - PRIORITY := 5; - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'H', 'I', 'G', 'H' ), - PRIORITY, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - HIGH_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF HIGH TASK" ); - - PRIORITY := PRIORITY + 1; - - RTEMS.TASK_START( - HIGH_ID, - TMTEST.HIGH_TASK'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF HIGH TASK" ); - - for INDEX in 2 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'M', 'I', 'D', ' ' ), - PRIORITY, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TASK_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE MIDDLE" ); - - PRIORITY := PRIORITY + 1; - - RTEMS.TASK_START( - TASK_ID, - TMTEST.MIDDLE_TASKS'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START MIDDLE" ); - - end loop; - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'L', 'O', 'W', ' ' ), - PRIORITY, - 2048, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - LOW_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF LOW TASK" ); - - RTEMS.TASK_START( LOW_ID, TMTEST.LOW_TASK'ACCESS, 0, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF LOW TASK" ); - - RTEMS.SEMAPHORE_CREATE( - RTEMS.BUILD_NAME( 'S', 'M', '1', ' ' ), - 0, - RTEMS.DEFAULT_ATTRIBUTES, - RTEMS.NO_PRIORITY, - TMTEST.SEMAPHORE_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "SEMAPHORE_CREATE OF SM1" ); - - end TEST_INIT; - ---PAGE --- --- HIGH_TASK --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - TIMER_DRIVER.INITIALIZE; - RTEMS.SEMAPHORE_OBTAIN( - TMTEST.SEMAPHORE_ID, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - STATUS - ); - - end HIGH_TASK; - ---PAGE --- --- MIDDLE_TASKS --- - - procedure MIDDLE_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - RTEMS.SEMAPHORE_OBTAIN( - TMTEST.SEMAPHORE_ID, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - STATUS - ); - - end MIDDLE_TASKS; - ---PAGE --- --- LOW_TASK --- - - procedure LOW_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - TIME_TEST_SUPPORT.PUT_TIME( - "SEMAPHORE_OBTAIN (blocking)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.SEMAPHORE_OBTAIN - ); - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end LOW_TASK; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm02/tmtest.ads b/c/src/ada-tests/tmtests/tm02/tmtest.ads deleted file mode 100644 index 49e5df7c16..0000000000 --- a/c/src/ada-tests/tmtests/tm02/tmtest.ads +++ /dev/null @@ -1,103 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 2 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with TIMER_DRIVER; -with RTEMS; - -package TMTEST is - --- --- The following is the ID of the semaphore used for timing operations. --- - - SEMAPHORE_ID : RTEMS.ID; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TEST_INIT --- --- DESCRIPTION: --- --- This subprogram performs test initialization. --- - - procedure TEST_INIT; - --- --- HIGH_TASK --- --- DESCRIPTION: --- --- This RTEMS task starts the timer and performs a blocking --- SEMAPHORE_OBTAIN. --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- MIDDLE_TASKS --- --- DESCRIPTION: --- --- These RTEMS task start the timer and performs a blocking --- SEMAPHORE_OBTAIN. --- - - procedure MIDDLE_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- LOW_TASK --- --- DESCRIPTION: --- --- This RTEMS task stops the timer and reports the execution time for --- a blocking SEMAPHORE_OBTAIN. --- - - procedure LOW_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm03/config.h b/c/src/ada-tests/tmtests/tm03/config.h deleted file mode 100644 index 588ff58466..0000000000 --- a/c/src/ada-tests/tmtests/tm03/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 111 -#define CONFIGURE_MAXIMUM_TIMERS 110 -#define CONFIGURE_MAXIMUM_SEMAPHORES 101 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm03/tm03.adb b/c/src/ada-tests/tmtests/tm03/tm03.adb deleted file mode 100644 index 13787b3d97..0000000000 --- a/c/src/ada-tests/tmtests/tm03/tm03.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM03 of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM03 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM03; - diff --git a/c/src/ada-tests/tmtests/tm03/tmtest.adb b/c/src/ada-tests/tmtests/tm03/tmtest.adb deleted file mode 100644 index 192248bbcc..0000000000 --- a/c/src/ada-tests/tmtests/tm03/tmtest.adb +++ /dev/null @@ -1,194 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 3 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERFACES; use INTERFACES; -with RTEMS; -with RTEMS_CALLING_OVERHEAD; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - TASK_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 3 ***" ); - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'T', 'A', '1', ' ' ), - 252, - 2048, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TASK_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF TEST_INIT" ); - - RTEMS.TASK_START( TASK_ID, TMTEST.TEST_INIT'ACCESS, 0, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF TEST_INIT" ); - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- TEST_INIT --- - - procedure TEST_INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - INDEX : RTEMS.UNSIGNED32; - PRIORITY : RTEMS.TASK_PRIORITY; - TASK_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; - begin - - PRIORITY := 250; - - RTEMS.SEMAPHORE_CREATE( - RTEMS.BUILD_NAME( 'S', 'M', '1', ' ' ), - 0, - RTEMS.DEFAULT_ATTRIBUTES, - RTEMS.NO_PRIORITY, - TMTEST.SEMAPHORE_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "SEMAPHORE_CREATE OF SM1" ); - - for INDEX in 2 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'M', 'I', 'D', ' ' ), - PRIORITY, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TASK_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE MIDDLE" ); - - PRIORITY := PRIORITY - 1; - - RTEMS.TASK_START( TASK_ID, TMTEST.MIDDLE_TASKS'ACCESS, 0, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START MIDDLE" ); - - end loop; - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'H', 'I', 'G', 'H' ), - PRIORITY, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TASK_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF HIGH TASK" ); - - RTEMS.TASK_START( TASK_ID, TMTEST.HIGH_TASK'ACCESS, 0, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF HIGH TASK" ); - - TIMER_DRIVER.INITIALIZE; - RTEMS.SEMAPHORE_RELEASE( TMTEST.SEMAPHORE_ID, STATUS ); - - end TEST_INIT; - ---PAGE --- --- MIDDLE_TASKS --- - - procedure MIDDLE_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - INDEX : RTEMS.UNSIGNED32; - PRIORITY : RTEMS.TASK_PRIORITY; - ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; - begin - - RTEMS.SEMAPHORE_OBTAIN( - TMTEST.SEMAPHORE_ID, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - STATUS - ); - - RTEMS.SEMAPHORE_RELEASE( TMTEST.SEMAPHORE_ID, STATUS ); - - end MIDDLE_TASKS; - ---PAGE --- --- HIGH_TASK --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - INDEX : RTEMS.UNSIGNED32; - PRIORITY : RTEMS.TASK_PRIORITY; - ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; - begin - - RTEMS.SEMAPHORE_OBTAIN( - TMTEST.SEMAPHORE_ID, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - STATUS - ); - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "SEMAPHORE_RELEASE (preemptive)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.SEMAPHORE_RELEASE - ); - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end HIGH_TASK; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm03/tmtest.ads b/c/src/ada-tests/tmtests/tm03/tmtest.ads deleted file mode 100644 index 0090300559..0000000000 --- a/c/src/ada-tests/tmtests/tm03/tmtest.ads +++ /dev/null @@ -1,95 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 3 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with TIMER_DRIVER; -with RTEMS; - -package TMTEST is - --- --- The following is the ID of the semaphore used for timing operations. --- - - SEMAPHORE_ID : RTEMS.ID; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TEST_INIT --- --- DESCRIPTION: --- --- This subprogram performs test initialization. After completion --- of test initialization, the timer is started and a preemptive --- SEMAPHORE_RELEASE is performed. --- - - procedure TEST_INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- MIDDLE_TASKS --- --- DESCRIPTION: --- --- This RTEMS task performs a blocking SEMAPHORE_OBTAIN. Once --- is obtains the semaphore unit and executes again, it performs --- a preemptive SEMAPHORE_RELEASE. --- - - procedure MIDDLE_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- HIGH_TASK --- --- DESCRIPTION: --- --- This RTEMS task stops the timer and reports the execution --- timer for a preemptive SEMAPHORE_RELEASE. --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm04/config.h b/c/src/ada-tests/tmtests/tm04/config.h deleted file mode 100644 index e58f7c9923..0000000000 --- a/c/src/ada-tests/tmtests/tm04/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 111 -#define CONFIGURE_MAXIMUM_SEMAPHORES 1 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm04/tm04.adb b/c/src/ada-tests/tmtests/tm04/tm04.adb deleted file mode 100644 index 2207f55dc1..0000000000 --- a/c/src/ada-tests/tmtests/tm04/tm04.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM04 of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM04 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM04; - diff --git a/c/src/ada-tests/tmtests/tm04/tmtest.adb b/c/src/ada-tests/tmtests/tm04/tmtest.adb deleted file mode 100644 index bef30afc6f..0000000000 --- a/c/src/ada-tests/tmtests/tm04/tmtest.adb +++ /dev/null @@ -1,501 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 4 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERFACES; use INTERFACES; -with RTEMS; -with RTEMS_CALLING_OVERHEAD; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 4 ***" ); - - TMTEST.TEST_INIT; - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- TEST_INIT --- - - procedure TEST_INIT - is - INDEX : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - TMTEST.TASK_COUNT := TIME_TEST_SUPPORT.OPERATION_COUNT; - - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'T', 'I', 'M', 'E' ), - 10, - 1024, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - TMTEST.TASK_ID( INDEX ), - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE LOOP" ); - - RTEMS.TASK_START( - TMTEST.TASK_ID( INDEX ), - TMTEST.LOW_TASKS'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START LOOP" ); - - end loop; - - RTEMS.SEMAPHORE_CREATE( - RTEMS.BUILD_NAME( 'S', 'M', '1', ' ' ), - 0, - RTEMS.DEFAULT_ATTRIBUTES, - RTEMS.NO_PRIORITY, - TMTEST.SEMAPHORE_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "SEMAPHORE_CREATE OF SM1" ); - - end TEST_INIT; - ---PAGE --- --- HIGHEST_TASK --- - - procedure HIGHEST_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - OLD_PRIORITY : RTEMS.TASK_PRIORITY; - STATUS : RTEMS.STATUS_CODES; - begin - - if ARGUMENT = 1 then - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_RESTART (blocked, preempt)", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.TASK_RESTART - ); - - RTEMS.TASK_SET_PRIORITY( RTEMS.SELF, 254, OLD_PRIORITY, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_SET_PRIORITY" ); - - elsif ARGUMENT = 2 then - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_RESTART (ready, preempt)", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.TASK_RESTART - ); - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE" ); - - else - - RTEMS.SEMAPHORE_OBTAIN( - TMTEST.SEMAPHORE_ID, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - STATUS - ); - - end if; - - end HIGHEST_TASK; - ---PAGE --- --- HIGH_TASK --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - OLD_PRIORITY : RTEMS.TASK_PRIORITY; - INDEX : RTEMS.UNSIGNED32; - OVERHEAD : RTEMS.UNSIGNED32; - NAME : RTEMS.NAME; - STATUS : RTEMS.STATUS_CODES; - begin - - TIMER_DRIVER.INITIALIZE; - RTEMS.TASK_RESTART( TMTEST.HIGHEST_ID, 1, STATUS ); - -- preempted by Higher_task - - TIMER_DRIVER.INITIALIZE; - RTEMS.TASK_RESTART( TMTEST.HIGHEST_ID, 2, STATUS ); - -- preempted by Higher_task - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - TIMER_DRIVER.EMPTY_FUNCTION; - end loop; - OVERHEAD := TIMER_DRIVER.READ_TIMER; - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.SEMAPHORE_RELEASE( TMTEST.SEMAPHORE_ID, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "SEMAPHORE_RELEASE (readying)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.SEMAPHORE_RELEASE - ); - - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TASK_DELETE( TMTEST.TASK_ID( INDEX ), STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE" ); - end loop; - - NAME := RTEMS.BUILD_NAME( 'T', 'I', 'M', 'E' ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TASK_CREATE( - NAME, - 10, - 1024, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - TMTEST.TASK_ID( INDEX ), - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_CREATE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.TASK_CREATE - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TASK_START( - TMTEST.TASK_ID( INDEX ), - TMTEST.LOW_TASKS'ACCESS, - 0, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_START", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.TASK_START - ); - - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TASK_DELETE( TMTEST.TASK_ID( INDEX ), STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE LOOP" ); - end loop; - - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TASK_CREATE( - NAME, - 250, - 1024, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - TMTEST.TASK_ID( INDEX ), - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE LOOP" ); - RTEMS.TASK_START( - TMTEST.TASK_ID( INDEX ), - TMTEST.RESTART_TASK'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START LOOP" ); - RTEMS.TASK_SUSPEND( TMTEST.TASK_ID( INDEX ), STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_SUSPEND LOOP" ); - end loop; - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TASK_RESTART( TMTEST.TASK_ID( INDEX ), 0, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_RESTART (suspended)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.TASK_RESTART - ); - - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TASK_SUSPEND( TMTEST.TASK_ID( INDEX ), STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_SUSPEND LOOP" ); - end loop; - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TASK_DELETE( TMTEST.TASK_ID( INDEX ), STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_DELETE (suspended)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.TASK_DELETE - ); - - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TASK_CREATE( - NAME, - 250, - 1024, - RTEMS.DEFAULT_OPTIONS, - RTEMS.DEFAULT_ATTRIBUTES, - TMTEST.TASK_ID( INDEX ), - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE LOOP" ); - RTEMS.TASK_START( - TMTEST.TASK_ID( INDEX ), - TMTEST.RESTART_TASK'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START LOOP" ); - end loop; - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TASK_RESTART( TMTEST.TASK_ID( INDEX ), 1, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_RESTART (ready)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.TASK_RESTART - ); - - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TASK_SET_PRIORITY( - TMTEST.TASK_ID( INDEX ), - 5, - OLD_PRIORITY, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_SET_PRIORITY LOOP" ); - end loop; - - -- yield processor -- tasks block - RTEMS.TASK_WAKE_AFTER( RTEMS.YIELD_PROCESSOR, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_WAKE_AFTER" ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TASK_RESTART( TMTEST.TASK_ID( INDEX ), 1, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_RESTART (blocked, no preempt)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.TASK_RESTART - ); - - -- yield processor -- tasks block - RTEMS.TASK_WAKE_AFTER( RTEMS.YIELD_PROCESSOR, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_WAKE_AFTER" ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TASK_DELETE( TMTEST.TASK_ID( INDEX ), STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_DELETE (blocked)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.TASK_DELETE - ); - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end HIGH_TASK; - ---PAGE --- --- LOW_TASKS --- - - procedure LOW_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; - begin - - TMTEST.TASK_COUNT := TMTEST.TASK_COUNT - 1; - - if TMTEST.TASK_COUNT = 0 then - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'H', 'I', ' ', ' ' ), - 5, - 2048, - RTEMS.DEFAULT_OPTIONS, - RTEMS.DEFAULT_ATTRIBUTES, - ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE HI" ); - - RTEMS.TASK_START( - ID, - TMTEST.HIGH_TASK'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START HI" ); - - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'H', 'I', 'G', 'H' ), - 3, - 2048, - RTEMS.DEFAULT_OPTIONS, - RTEMS.DEFAULT_ATTRIBUTES, - TMTEST.HIGHEST_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE HIGH" ); - - RTEMS.TASK_START( - TMTEST.HIGHEST_ID, - TMTEST.HIGHEST_TASK'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START HIGH" ); - - - end if; - - RTEMS.SEMAPHORE_OBTAIN( - TMTEST.SEMAPHORE_ID, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - STATUS - ); - - end LOW_TASKS; - ---PAGE --- --- RESTART_TASK --- - - procedure RESTART_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - INDEX : RTEMS.UNSIGNED32; - PRIORITY : RTEMS.TASK_PRIORITY; - ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; - begin - - if ARGUMENT = 1 then - RTEMS.SEMAPHORE_OBTAIN( - TMTEST.SEMAPHORE_ID, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - STATUS - ); - end if; - - end RESTART_TASK; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm04/tmtest.ads b/c/src/ada-tests/tmtests/tm04/tmtest.ads deleted file mode 100644 index b4b29555df..0000000000 --- a/c/src/ada-tests/tmtests/tm04/tmtest.ads +++ /dev/null @@ -1,161 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 4 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with TIME_TEST_SUPPORT; -with TIMER_DRIVER; -with RTEMS; - -package TMTEST is - --- --- This array contains the IDs of all RTEMS tasks created by this test. --- - - TASK_ID : array ( RTEMS.UNSIGNED32 - range 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT ) of RTEMS.ID; - --- --- This variable contains the id of the highest priority task --- in the system. --- - - HIGHEST_ID : RTEMS.ID; - --- --- The following is the ID of the semaphore used for timing operations. --- - - SEMAPHORE_ID : RTEMS.ID; - --- --- The following is used to perform the same operation --- on a group of tasks. --- - - TASK_COUNT : RTEMS.UNSIGNED32; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TEST_INIT --- --- DESCRIPTION: --- --- This subprogram performs test initialization. --- - - procedure TEST_INIT; - --- --- HIGHEST_TASK --- --- DESCRIPTION: --- --- This RTEMS task is created by one of the LOW_TASKS. The --- first time it executes, it performs a blocking SEMAPHORE_OBTAIN --- which transfers control of the processor to HIGH_TASK. --- The first time HIGHEST_TASK is restarted, it stops the --- timer and reports the execution time for a TASK_RESTART --- for a blocked task which preempts the caller. The second --- time HIGHEST_TASK is restarted, it stops the timer and reports --- the execution time for a TASK_RESTART for a ready task which --- has its original priority restored and preempts the caller. --- - - procedure HIGHEST_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- HIGH_TASK --- --- DESCRIPTION: --- --- This RTEMS task is created by one of the LOW_TASKS. This --- task restarts HIGHEST_TASK twice. HIGHEST_TASK is blocked the --- first time and preempts this task when restarted. HIGHEST_TASK --- is ready the second time but has lowered its priority. When --- restarted for the second time, HIGHEST_TASK will have its --- original priority restored and preempt this task. --- Once control of the processor is returned to this task after --- HIGHEST_TASK deletes itself, the following execution times --- are measured and reported. --- --- + readying SEMAPHORE_RELEASE --- + TASK_CREATE --- + TASK_START --- + TASK_RESTART of a suspended task --- + TASK_DELETE of a suspended task --- + TASK_RESTART of a ready task --- + TASK_RESTART of a blocked task which does not cause a preempt --- + TASK_DELETE of a blocked task --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- LOW_TASKS --- --- DESCRIPTION: --- --- The last of these RTEMS tasks to execute creates HIGH_TASK --- and HIGHEST_TASK. All of these tasks perform a blocking --- SEMAPHORE_OBTAIN. --- - - procedure LOW_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- RESTART_TASK --- --- DESCRIPTION: --- --- This RTEMS task --- - - procedure RESTART_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm05/config.h b/c/src/ada-tests/tmtests/tm05/config.h deleted file mode 100644 index 588ff58466..0000000000 --- a/c/src/ada-tests/tmtests/tm05/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 111 -#define CONFIGURE_MAXIMUM_TIMERS 110 -#define CONFIGURE_MAXIMUM_SEMAPHORES 101 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm05/tm05.adb b/c/src/ada-tests/tmtests/tm05/tm05.adb deleted file mode 100644 index 535717a052..0000000000 --- a/c/src/ada-tests/tmtests/tm05/tm05.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM05 of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM05 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM05; - diff --git a/c/src/ada-tests/tmtests/tm05/tmtest.adb b/c/src/ada-tests/tmtests/tm05/tmtest.adb deleted file mode 100644 index 438988615a..0000000000 --- a/c/src/ada-tests/tmtests/tm05/tmtest.adb +++ /dev/null @@ -1,174 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 5 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERFACES; use INTERFACES; -with RTEMS; -with RTEMS_CALLING_OVERHEAD; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - TASK_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 5 ***" ); - - TMTEST.TEST_INIT; - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- TEST_INIT --- - - procedure TEST_INIT - is - INDEX : RTEMS.UNSIGNED32; - TASK_ENTRY : RTEMS.TASK_ENTRY; - PRIORITY : RTEMS.TASK_PRIORITY; - STATUS : RTEMS.STATUS_CODES; - begin - - PRIORITY := 250; - - for INDEX in 0 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'T', 'I', 'M', 'E' ), - PRIORITY, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TMTEST.TASK_ID( INDEX ), - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE LOOP" ); - - PRIORITY := PRIORITY - 1; - - if INDEX = 0 then - TASK_ENTRY := TMTEST.LOW_TASK'ACCESS; - elsif INDEX = TIME_TEST_SUPPORT.OPERATION_COUNT then - TASK_ENTRY := TMTEST.HIGH_TASK'ACCESS; - else - TASK_ENTRY := TMTEST.MIDDLE_TASKS'ACCESS; - end if; - - RTEMS.TASK_START( TMTEST.TASK_ID( INDEX ), TASK_ENTRY, 0, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START LOOP" ); - - end loop; - - end TEST_INIT; - ---PAGE --- --- HIGH_TASK --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - TIMER_DRIVER.INITIALIZE; - RTEMS.TASK_SUSPEND( RTEMS.SELF, STATUS ); - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_RESUME causing preempt", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.TASK_RESUME - ); - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end HIGH_TASK; - ---PAGE --- --- MIDDLE_TASKS --- - - procedure MIDDLE_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - RTEMS.TASK_SUSPEND( RTEMS.SELF, STATUS ); - - TMTEST.TASK_INDEX := TMTEST.TASK_INDEX + 1; - RTEMS.TASK_RESUME( TMTEST.TASK_ID( TMTEST.TASK_INDEX ), STATUS ); - - end MIDDLE_TASKS; - ---PAGE --- --- LOW_TASK --- - - procedure LOW_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; - begin - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_SUSPEND self", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.TASK_SUSPEND - ); - - TMTEST.TASK_INDEX := 1; - TIMER_DRIVER.INITIALIZE; - RTEMS.TASK_RESUME( TMTEST.TASK_ID( TMTEST.TASK_INDEX ), STATUS ); - - end LOW_TASK; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm05/tmtest.ads b/c/src/ada-tests/tmtests/tm05/tmtest.ads deleted file mode 100644 index 2bb9b28c8d..0000000000 --- a/c/src/ada-tests/tmtests/tm05/tmtest.ads +++ /dev/null @@ -1,113 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 5 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with TIME_TEST_SUPPORT; -with TIMER_DRIVER; -with RTEMS; - -package TMTEST is - --- --- This array contains the IDs of all RTEMS tasks created by this test. --- - - TASK_ID : array ( RTEMS.UNSIGNED32 - range 0 .. TIME_TEST_SUPPORT.OPERATION_COUNT ) of RTEMS.ID; - - TASK_INDEX : RTEMS.UNSIGNED32; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TEST_INIT --- --- DESCRIPTION: --- --- This subprogram performs test initialization. --- - - procedure TEST_INIT; - --- --- HIGH_TASK --- --- DESCRIPTION: --- --- This RTEMS task is the highest priority task in the system. --- It starts the timer and performs a TASK_SUSPEND on SELF. --- When this task executes again, it stops the timer and --- reports the execution time for a preemptive TASK_RESUME. --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- MIDDLE_TASKS --- --- DESCRIPTION: --- --- These RTEMS tasks perform a TASK_SUSPEND on SELF. When each --- task executes again, it performs preemptive TASK_RESUME on --- a higher priority task. --- - - procedure MIDDLE_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- LOW_TASK --- --- DESCRIPTION: --- --- This RTEMS task is the lowest priority task in the system. --- When this task executes, it stops the timer and reports the --- execution time for a blocking TASK_SUSPEND. After this, --- it starts the timer and performs a TASK_RESUME on a --- higher priority task. --- - - procedure LOW_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm06/config.h b/c/src/ada-tests/tmtests/tm06/config.h deleted file mode 100644 index 588ff58466..0000000000 --- a/c/src/ada-tests/tmtests/tm06/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 111 -#define CONFIGURE_MAXIMUM_TIMERS 110 -#define CONFIGURE_MAXIMUM_SEMAPHORES 101 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm06/tm06.adb b/c/src/ada-tests/tmtests/tm06/tm06.adb deleted file mode 100644 index c3f0e3ea1b..0000000000 --- a/c/src/ada-tests/tmtests/tm06/tm06.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM06 of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM06 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM06; - diff --git a/c/src/ada-tests/tmtests/tm06/tmtest.adb b/c/src/ada-tests/tmtests/tm06/tmtest.adb deleted file mode 100644 index e8d471cd87..0000000000 --- a/c/src/ada-tests/tmtests/tm06/tmtest.adb +++ /dev/null @@ -1,210 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 6 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERFACES; use INTERFACES; -with RTEMS; -with RTEMS_CALLING_OVERHEAD; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - TASK_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 6 ***" ); - - TMTEST.TEST_INIT; - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- TEST_INIT --- - - procedure TEST_INIT - is - INDEX : RTEMS.UNSIGNED32; - ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; - begin - - TMTEST.TASK_RESTARTED := TIME_TEST_SUPPORT.OPERATION_COUNT; - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'T', 'I', 'M', 'E' ), - 128, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE" ); - - RTEMS.TASK_START( ID, TMTEST.TASK_1'ACCESS, 0, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START" ); - - end TEST_INIT; - ---PAGE --- --- TASK_1 --- - - procedure TASK_1 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - INDEX : RTEMS.UNSIGNED32; - OVERHEAD : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - if TMTEST.TASK_RESTARTED = TIME_TEST_SUPPORT.OPERATION_COUNT then - TIMER_DRIVER.INITIALIZE; - end if; - - TMTEST.TASK_RESTARTED := TMTEST.TASK_RESTARTED - 1; - - if TMTEST.TASK_RESTARTED /= 0 then - RTEMS.TASK_RESTART( RTEMS.SELF, 0, STATUS ); - end if; - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - TIMER_DRIVER.EMPTY_FUNCTION; - end loop; - OVERHEAD := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_RESTART self", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.TASK_RESTART - ); - - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'T', 'I', 'M', 'E' ), - 254, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TMTEST.TASK_ID( INDEX ), - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE LOOP" ); - - RTEMS.TASK_START( - TMTEST.TASK_ID( INDEX ), - TMTEST.NULL_TASK'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START LOOP" ); - - end loop; - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TASK_SUSPEND( TMTEST.TASK_ID( INDEX ), STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_SUSPEND no preempt", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.TASK_SUSPEND - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TASK_RESUME( TMTEST.TASK_ID( INDEX ), STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_RESUME no preempt", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.TASK_RESUME - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TASK_DELETE( TMTEST.TASK_ID( INDEX ), STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_DELETE others", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.TASK_DELETE - ); - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end TASK_1; - ---PAGE --- --- NULL_TASK --- - - procedure NULL_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - begin - - NULL; - - end NULL_TASK; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm06/tmtest.ads b/c/src/ada-tests/tmtests/tm06/tmtest.ads deleted file mode 100644 index bbeed402cf..0000000000 --- a/c/src/ada-tests/tmtests/tm06/tmtest.ads +++ /dev/null @@ -1,104 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 6 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with TIME_TEST_SUPPORT; -with TIMER_DRIVER; -with RTEMS; - -package TMTEST is - --- --- This array contains the IDs of all RTEMS tasks created by this test. --- - - TASK_ID : array ( RTEMS.UNSIGNED32 - range 0 .. TIME_TEST_SUPPORT.OPERATION_COUNT ) of RTEMS.ID; - --- --- This variable is used to determine which restart of TASK_1 will start --- timer and which will stop the timer and report the execution time. --- - - TASK_RESTARTED : RTEMS.UNSIGNED32; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TEST_INIT --- --- DESCRIPTION: --- --- This subprogram performs test initialization. --- - - procedure TEST_INIT; - --- --- TASK_1 --- --- DESCRIPTION: --- --- This RTEMS task is responsible for measuring and reporting the --- following directive execution times: --- --- + TASK_RESTART of SELF --- + TASK_SUSPEND of another task with no context switch --- + TASK_RESUME with no preemption --- + TASK_DELETE of another task --- - - procedure TASK_1 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- NULL_TASK --- --- DESCRIPTION: --- --- This RTEMS task has no operations. It is used to have --- tasks to perform directives upon. --- - - procedure NULL_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm07/config.h b/c/src/ada-tests/tmtests/tm07/config.h deleted file mode 100644 index 588ff58466..0000000000 --- a/c/src/ada-tests/tmtests/tm07/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 111 -#define CONFIGURE_MAXIMUM_TIMERS 110 -#define CONFIGURE_MAXIMUM_SEMAPHORES 101 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm07/tm07.adb b/c/src/ada-tests/tmtests/tm07/tm07.adb deleted file mode 100644 index dc39b07f1e..0000000000 --- a/c/src/ada-tests/tmtests/tm07/tm07.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM07 of the Single Processor Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM07 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM07; - diff --git a/c/src/ada-tests/tmtests/tm07/tmtest.adb b/c/src/ada-tests/tmtests/tm07/tmtest.adb deleted file mode 100644 index 12a2402626..0000000000 --- a/c/src/ada-tests/tmtests/tm07/tmtest.adb +++ /dev/null @@ -1,179 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 7 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERFACES; use INTERFACES; -with RTEMS; -with RTEMS_CALLING_OVERHEAD; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - TASK_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 7 ***" ); - - TMTEST.TEST_INIT; - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- TEST_INIT --- - - procedure TEST_INIT - is - INDEX : RTEMS.UNSIGNED32; - TASK_ENTRY : RTEMS.TASK_ENTRY; - PRIORITY : RTEMS.TASK_PRIORITY; - STATUS : RTEMS.STATUS_CODES; - begin - - PRIORITY := 250; - - for INDEX in 0 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'T', 'I', 'M', 'E' ), - PRIORITY, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TMTEST.TASK_ID( INDEX ), - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE LOOP" ); - - PRIORITY := PRIORITY - 1; - - if INDEX = 0 then - TASK_ENTRY := TMTEST.LOW_TASK'ACCESS; - elsif INDEX = TIME_TEST_SUPPORT.OPERATION_COUNT then - TASK_ENTRY := TMTEST.HIGH_TASK'ACCESS; - else - TASK_ENTRY := TMTEST.MIDDLE_TASKS'ACCESS; - end if; - - RTEMS.TASK_START( TMTEST.TASK_ID( INDEX ), TASK_ENTRY, 0, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START LOOP" ); - - end loop; - - end TEST_INIT; - ---PAGE --- --- HIGH_TASK --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - OLD_PRIORITY : RTEMS.TASK_PRIORITY; - STATUS : RTEMS.STATUS_CODES; - begin - - if ARGUMENT > 0 then - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_RESTART suspended/preempt", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.TASK_RESTART - ); - else - RTEMS.TASK_SUSPEND( RTEMS.SELF, STATUS ); - end if; - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end HIGH_TASK; - ---PAGE --- --- MIDDLE_TASKS --- - - procedure MIDDLE_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - TMTEST.TASK_INDEX := TMTEST.TASK_INDEX + 1; - - if ARGUMENT > 0 then - RTEMS.TASK_RESTART( - TMTEST.TASK_ID( TMTEST.TASK_INDEX ), - 16#7FFFFFFF#, - STATUS - ); - else - RTEMS.TASK_SUSPEND( RTEMS.SELF, STATUS ); - end if; - - - end MIDDLE_TASKS; - ---PAGE --- --- LOW_TASK --- - - procedure LOW_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - TMTEST.TASK_INDEX := 1; - TIMER_DRIVER.INITIALIZE; - - RTEMS.TASK_RESTART( - TMTEST.TASK_ID( TMTEST.TASK_INDEX ), - 16#7FFFFFFF#, - STATUS - ); - - end LOW_TASK; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm07/tmtest.ads b/c/src/ada-tests/tmtests/tm07/tmtest.ads deleted file mode 100644 index 1e97840005..0000000000 --- a/c/src/ada-tests/tmtests/tm07/tmtest.ads +++ /dev/null @@ -1,111 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 7 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with TIMER_DRIVER; -with TIME_TEST_SUPPORT; -with RTEMS; - -package TMTEST is - --- --- This array contains the IDs of all RTEMS tasks created by this test. --- - - TASK_ID : array ( RTEMS.UNSIGNED32 - range 0 .. TIME_TEST_SUPPORT.OPERATION_COUNT ) of RTEMS.ID; - - TASK_INDEX : RTEMS.UNSIGNED32; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TEST_INIT --- --- DESCRIPTION: --- --- This subprogram performs test initialization. --- - - procedure TEST_INIT; - --- --- HIGH_TASK --- --- DESCRIPTION: --- --- This RTEMS task is the highest priority task in the system. --- The first time it executes it suspends itself. When restarted --- it stops the timer and reports the time for a TASK_RESTART --- of a suspended task which results in a preemption. --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- MIDDLE_TASKS --- --- DESCRIPTION: --- --- These RTEMS tasks suspend themselves the first time they execute. --- When restarted they perform a TASK_RESTART of a suspended --- higher priority task which results in a preemption. --- - - procedure MIDDLE_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- LOW_TASK --- --- DESCRIPTION: --- --- This RTEMS task is the lowest priority task in the system. --- When it executes it starts the timer and restarts a higher --- priority task which immediately preempts this task. --- - - procedure LOW_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm08/config.h b/c/src/ada-tests/tmtests/tm08/config.h deleted file mode 100644 index 588ff58466..0000000000 --- a/c/src/ada-tests/tmtests/tm08/config.h +++ /dev/null @@ -1,38 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 111 -#define CONFIGURE_MAXIMUM_TIMERS 110 -#define CONFIGURE_MAXIMUM_SEMAPHORES 101 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm08/tm08.adb b/c/src/ada-tests/tmtests/tm08/tm08.adb deleted file mode 100644 index 03b6a77bb8..0000000000 --- a/c/src/ada-tests/tmtests/tm08/tm08.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM08 of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM08 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM08; - diff --git a/c/src/ada-tests/tmtests/tm08/tmtest.adb b/c/src/ada-tests/tmtests/tm08/tmtest.adb deleted file mode 100644 index 971c7be472..0000000000 --- a/c/src/ada-tests/tmtests/tm08/tmtest.adb +++ /dev/null @@ -1,341 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 8 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERFACES; use INTERFACES; -with RTEMS; -with RTEMS_CALLING_OVERHEAD; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - TASK_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 8 ***" ); - - TMTEST.TEST_INIT; - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- TEST_INIT --- - - procedure TEST_INIT - is - STATUS : RTEMS.STATUS_CODES; - begin - - RTEMS.TASK_CREATE( - 1, - 128, - 1024, - RTEMS.DEFAULT_OPTIONS, - RTEMS.DEFAULT_ATTRIBUTES, - TASK_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE" ); - - RTEMS.TASK_START( TASK_ID, TMTEST.TEST_TASK'ACCESS, 0, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START" ); - - RTEMS.TASK_CREATE( - 1, - 254, - 1024, - RTEMS.DEFAULT_OPTIONS, - RTEMS.DEFAULT_ATTRIBUTES, - TASK_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE" ); - - RTEMS.TASK_START( TASK_ID, TMTEST.TEST_TASK1'ACCESS, 0, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START" ); - - end TEST_INIT; - ---PAGE --- --- TEST_TASK --- - - procedure TEST_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - INDEX : RTEMS.UNSIGNED32; - OVERHEAD : RTEMS.UNSIGNED32; - OLD_PRIORITY : RTEMS.TASK_PRIORITY; - OLD_MODE : RTEMS.MODE; - OLD_NOTE : RTEMS.NOTEPAD_INDEX; - TIME : RTEMS.TIME_OF_DAY; - STATUS : RTEMS.STATUS_CODES; - begin - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - TIMER_DRIVER.EMPTY_FUNCTION; - end loop; - OVERHEAD := TIMER_DRIVER.READ_TIMER; - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TASK_SET_PRIORITY( - TMTEST.TASK_ID, - RTEMS.CURRENT_PRIORITY, - OLD_PRIORITY, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_SET_PRIORITY current priority", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.TASK_SET_PRIORITY - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TASK_SET_PRIORITY( - TMTEST.TASK_ID, - 253, - OLD_PRIORITY, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_SET_PRIORITY no preempt", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.TASK_SET_PRIORITY - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TASK_MODE( - RTEMS.CURRENT_MODE, - RTEMS.CURRENT_MODE, - OLD_MODE, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_MODE (current)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.TASK_MODE - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TASK_MODE( - RTEMS.INTERRUPT_LEVEL( 1 ), - RTEMS.INTERRUPT_MASK, - OLD_MODE, - STATUS - ); - RTEMS.TASK_MODE( - RTEMS.INTERRUPT_LEVEL( 0 ), - RTEMS.INTERRUPT_MASK, - OLD_MODE, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_MODE (no reschedule)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT * 2, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.TASK_MODE - ); - - TIMER_DRIVER.INITIALIZE; - RTEMS.TASK_MODE( - RTEMS.NO_ASR, - RTEMS.ASR_MASK, - OLD_MODE, - STATUS - ); - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_MODE (reschedule)", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.TASK_MODE - ); - - RTEMS.TASK_MODE( - RTEMS.NO_PREEMPT, - RTEMS.PREEMPT_MASK, - OLD_MODE, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_MODE" ); - - RTEMS.TASK_SET_PRIORITY( - TMTEST.TASK_ID, - 1, - OLD_PRIORITY, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_SET_PRIORITY" ); - - TIMER_DRIVER.INITIALIZE; - RTEMS.TASK_MODE( -- preempted by TEST_TASK1 - RTEMS.PREEMPT, - RTEMS.PREEMPT_MASK, - OLD_MODE, - STATUS - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TASK_SET_NOTE( - TMTEST.TASK_ID, - 8, - 10, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_SET_NOTE ", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.TASK_SET_NOTE - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TASK_GET_NOTE( - TMTEST.TASK_ID, - 8, - OLD_NOTE, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_GET_NOTE ", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.TASK_GET_NOTE - ); - - TIME := (1988, 1, 1, 0, 0, 0, 0 ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.CLOCK_SET( - TIME, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - TIME_TEST_SUPPORT.PUT_TIME( - "CLOCK_SET", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.CLOCK_SET - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.CLOCK_GET( RTEMS.CLOCK_GET_TOD, TIME'ADDRESS, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - TIME_TEST_SUPPORT.PUT_TIME( - "CLOCK_GET", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.CLOCK_GET - ); - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end TEST_TASK; - ---PAGE --- --- TEST_TASK1 --- - - procedure TEST_TASK1 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_MODE (preemptive) ", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.TASK_MODE - ); - - RTEMS.TASK_SUSPEND( RTEMS.SELF, STATUS ); - - end TEST_TASK1; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm08/tmtest.ads b/c/src/ada-tests/tmtests/tm08/tmtest.ads deleted file mode 100644 index 0eccb2a452..0000000000 --- a/c/src/ada-tests/tmtests/tm08/tmtest.ads +++ /dev/null @@ -1,99 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 8 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with TIMER_DRIVER; -with RTEMS; - -package TMTEST is - - TASK_ID : RTEMS.ID; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TEST_INIT --- --- DESCRIPTION: --- --- This subprogram performs test initialization. --- - - procedure TEST_INIT; - --- --- TEST_TASK --- --- DESCRIPTION: --- --- This RTEMS task is responsible for measuring and reporting the --- following directive execution times: --- --- + TASK_SET_PRIORITY to obtain the current priority --- + TASK_SET_PRIORITY which does not require a context switch --- + TASK_MODE to obtain the current mode --- + TASK_MODE which does not require a reschedule --- + TASK_MODE which does require a reschedule --- + TASK_MODE which causes a preemption *** TEST_TASK1 executes --- + TASK_SET_NOTE --- + TASK_GET_NOTE --- + CLOCK_SET --- + CLOCK_GET --- - - procedure TEST_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TEST_TASK2 --- --- DESCRIPTION: --- --- This RTEMS task is responsible for measuring and reporting the --- following directive execution times: --- --- + TASK_MODE which results in a preemption --- - - procedure TEST_TASK1 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm09/config.h b/c/src/ada-tests/tmtests/tm09/config.h deleted file mode 100644 index b0a10b776c..0000000000 --- a/c/src/ada-tests/tmtests/tm09/config.h +++ /dev/null @@ -1,36 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 1 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm09/tm09.adb b/c/src/ada-tests/tmtests/tm09/tm09.adb deleted file mode 100644 index add60e1e84..0000000000 --- a/c/src/ada-tests/tmtests/tm09/tm09.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM09 of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM09 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM09; - diff --git a/c/src/ada-tests/tmtests/tm09/tmtest.adb b/c/src/ada-tests/tmtests/tm09/tmtest.adb deleted file mode 100644 index 0dd7d9d798..0000000000 --- a/c/src/ada-tests/tmtests/tm09/tmtest.adb +++ /dev/null @@ -1,302 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 9 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERFACES; use INTERFACES; -with RTEMS; -with RTEMS_CALLING_OVERHEAD; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - TASK_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 9 ***" ); - - RTEMS.TASK_CREATE( - 1, - 128, - 4096, - RTEMS.DEFAULT_OPTIONS, - RTEMS.DEFAULT_ATTRIBUTES, - TASK_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE" ); - - RTEMS.TASK_START( TASK_ID, TMTEST.TEST_TASK'ACCESS, 0, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START" ); - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- TEST_TASK --- - - procedure TEST_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - TIMER_DRIVER.INITIALIZE; - RTEMS.MESSAGE_QUEUE_CREATE( - 1, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 16, - RTEMS.DEFAULT_OPTIONS, - TMTEST.QUEUE_ID, - STATUS - ); - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - TIME_TEST_SUPPORT.PUT_TIME( - "MESSAGE_QUEUE_CREATE", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.MESSAGE_QUEUE_CREATE - ); - - TMTEST.QUEUE_TEST; - - TIMER_DRIVER.INITIALIZE; - RTEMS.MESSAGE_QUEUE_DELETE( - TMTEST.QUEUE_ID, - STATUS - ); - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - TIME_TEST_SUPPORT.PUT_TIME( - "MESSAGE_QUEUE_DELETE", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.MESSAGE_QUEUE_DELETE - ); - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end TEST_TASK; - ---PAGE --- --- QUEUE_TEST --- - - procedure QUEUE_TEST - is - SEND_LOOP_TIME : RTEMS.UNSIGNED32; - URGENT_LOOP_TIME : RTEMS.UNSIGNED32; - RECEIVE_LOOP_TIME : RTEMS.UNSIGNED32; - SEND_TIME : RTEMS.UNSIGNED32; - URGENT_TIME : RTEMS.UNSIGNED32; - RECEIVE_TIME : RTEMS.UNSIGNED32; - EMPTY_FLUSH_TIME : RTEMS.UNSIGNED32; - FLUSH_TIME : RTEMS.UNSIGNED32; - FLUSH_COUNT : RTEMS.UNSIGNED32; - EMPTY_FLUSH_COUNT : RTEMS.UNSIGNED32; - INDEX : RTEMS.UNSIGNED32; - ITERATIONS : RTEMS.UNSIGNED32; - LOOP_COUNT : RTEMS.UNSIGNED32; - BUFFER : TMTEST.BUFFER; - BUFFER_POINTER : RTEMS.ADDRESS; - MESSAGE_SIZE : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - SEND_LOOP_TIME := 0; - URGENT_LOOP_TIME := 0; - RECEIVE_LOOP_TIME := 0; - SEND_TIME := 0; - URGENT_TIME := 0; - RECEIVE_TIME := 0; - EMPTY_FLUSH_TIME := 0; - FLUSH_TIME := 0; - FLUSH_COUNT := 0; - EMPTY_FLUSH_COUNT := 0; - - BUFFER_POINTER := BUFFER'ADDRESS; - - for ITERATIONS in 1 .. TIME_TEST_SUPPORT.ITERATION_COUNT - loop - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - TIMER_DRIVER.EMPTY_FUNCTION; - end loop; - SEND_LOOP_TIME := SEND_LOOP_TIME + TIMER_DRIVER.READ_TIMER; - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - TIMER_DRIVER.EMPTY_FUNCTION; - end loop; - URGENT_LOOP_TIME := URGENT_LOOP_TIME + TIMER_DRIVER.READ_TIMER; - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - TIMER_DRIVER.EMPTY_FUNCTION; - end loop; - RECEIVE_LOOP_TIME := RECEIVE_LOOP_TIME + TIMER_DRIVER.READ_TIMER; - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.MESSAGE_QUEUE_SEND( - TMTEST.QUEUE_ID, - BUFFER_POINTER, - 16, - STATUS - ); - end loop; - SEND_TIME := SEND_TIME + TIMER_DRIVER.READ_TIMER; - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.MESSAGE_QUEUE_RECEIVE( - TMTEST.QUEUE_ID, - BUFFER_POINTER, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - MESSAGE_SIZE, - STATUS - ); - end loop; - RECEIVE_TIME := RECEIVE_TIME + TIMER_DRIVER.READ_TIMER; - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.MESSAGE_QUEUE_URGENT( - TMTEST.QUEUE_ID, - BUFFER_POINTER, - 16, - STATUS - ); - end loop; - URGENT_TIME := URGENT_TIME + TIMER_DRIVER.READ_TIMER; - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.MESSAGE_QUEUE_RECEIVE( - TMTEST.QUEUE_ID, - BUFFER_POINTER, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - MESSAGE_SIZE, - STATUS - ); - end loop; - RECEIVE_TIME := RECEIVE_TIME + TIMER_DRIVER.READ_TIMER; - - TIMER_DRIVER.INITIALIZE; - RTEMS.MESSAGE_QUEUE_FLUSH( - TMTEST.QUEUE_ID, - EMPTY_FLUSH_COUNT, - STATUS - ); - EMPTY_FLUSH_TIME := EMPTY_FLUSH_TIME + TIMER_DRIVER.READ_TIMER; - - -- send one message to flush - RTEMS.MESSAGE_QUEUE_SEND( - TMTEST.QUEUE_ID, - BUFFER_POINTER, - 16, - STATUS - ); - TIMER_DRIVER.INITIALIZE; - RTEMS.MESSAGE_QUEUE_FLUSH( - TMTEST.QUEUE_ID, - FLUSH_COUNT, - STATUS - ); - FLUSH_TIME := FLUSH_TIME + TIMER_DRIVER.READ_TIMER; - - end loop; - - TIME_TEST_SUPPORT.PUT_TIME( - "MESSAGE_QUEUE_SEND (no tasks waiting)", - SEND_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT * - TIME_TEST_SUPPORT.ITERATION_COUNT, - SEND_LOOP_TIME, - RTEMS_CALLING_OVERHEAD.MESSAGE_QUEUE_SEND - ); - - TIME_TEST_SUPPORT.PUT_TIME( - "MESSAGE_QUEUE_URGENT (no tasks waiting)", - URGENT_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT * - TIME_TEST_SUPPORT.ITERATION_COUNT, - URGENT_LOOP_TIME, - RTEMS_CALLING_OVERHEAD.MESSAGE_QUEUE_URGENT - ); - - TIME_TEST_SUPPORT.PUT_TIME( - "MESSAGE_QUEUE_RECEIVE (messages available)", - RECEIVE_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT * - TIME_TEST_SUPPORT.ITERATION_COUNT * 2, - RECEIVE_LOOP_TIME * 2, - RTEMS_CALLING_OVERHEAD.MESSAGE_QUEUE_RECEIVE - ); - - TIME_TEST_SUPPORT.PUT_TIME( - "MESSAGE_QUEUE_FLUSH (empty queue)", - EMPTY_FLUSH_TIME, - TIME_TEST_SUPPORT.ITERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.MESSAGE_QUEUE_FLUSH - ); - - TIME_TEST_SUPPORT.PUT_TIME( - "MESSAGE_QUEUE_FLUSH (messages flushed)", - FLUSH_TIME, - TIME_TEST_SUPPORT.ITERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.MESSAGE_QUEUE_FLUSH - ); - - end QUEUE_TEST; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm09/tmtest.ads b/c/src/ada-tests/tmtests/tm09/tmtest.ads deleted file mode 100644 index d1a4f3eac1..0000000000 --- a/c/src/ada-tests/tmtests/tm09/tmtest.ads +++ /dev/null @@ -1,100 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 9 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with TIMER_DRIVER; -with RTEMS; - -package TMTEST is - --- --- Buffer Record similar to that used by RTEMS 3.2.1. Using this --- avoids changes to the test. --- - - type BUFFER is - record - FIELD1 : RTEMS.UNSIGNED32; -- TEMPORARY UNTIL VARIABLE LENGTH - FIELD2 : RTEMS.UNSIGNED32; - FIELD3 : RTEMS.UNSIGNED32; - FIELD4 : RTEMS.UNSIGNED32; - end record; - --- --- The following is the ID of the message queue used for timing operations. --- - - QUEUE_ID : RTEMS.ID; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TEST_TASK --- --- DESCRIPTION: --- --- This RTEMS task is responsible for measuring and reporting the --- following directive execution times: --- --- + MESSAGE_QUEUE_CREATE --- + MESSAGE_QUEUE_DELETE --- - - procedure TEST_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- QUEUE_TEST --- --- DESCRIPTION: --- --- This subprogram is responsible for measuring and reporting the --- following directive execution times: --- --- + MESSAGE_QUEUE_SEND with no tasks waiting --- + MESSAGE_QUEUE_URGENT with no tasks waiting --- + MESSAGE_QUEUE_RECEIVE with messages available --- + MESSAGE_QUEUE_FLUSH with an empty message queue --- + MESSAGE_QUEUE_FLUSH with messages flushed --- - - procedure QUEUE_TEST; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm10/config.h b/c/src/ada-tests/tmtests/tm10/config.h deleted file mode 100644 index a3748d64ce..0000000000 --- a/c/src/ada-tests/tmtests/tm10/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 110 -#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 1 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm10/tm10.adb b/c/src/ada-tests/tmtests/tm10/tm10.adb deleted file mode 100644 index 79f725dc0b..0000000000 --- a/c/src/ada-tests/tmtests/tm10/tm10.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM10 of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM10 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM10; - diff --git a/c/src/ada-tests/tmtests/tm10/tmtest.adb b/c/src/ada-tests/tmtests/tm10/tmtest.adb deleted file mode 100644 index 99e776f311..0000000000 --- a/c/src/ada-tests/tmtests/tm10/tmtest.adb +++ /dev/null @@ -1,225 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 10 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERFACES; use INTERFACES; -with RTEMS; -with RTEMS_CALLING_OVERHEAD; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 10 ***" ); - - TMTEST.TEST_INIT; - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- TEST_INIT --- - - procedure TEST_INIT - is - INDEX : RTEMS.UNSIGNED32; - TASK_ENTRY : RTEMS.TASK_ENTRY; - PRIORITY : RTEMS.TASK_PRIORITY; - OVERHEAD : RTEMS.UNSIGNED32; - TASK_ID : RTEMS.ID; - BUFFER : TMTEST.BUFFER; - BUFFER_POINTER : RTEMS.ADDRESS; - MESSAGE_SIZE : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - BUFFER_POINTER := BUFFER'ADDRESS; - - PRIORITY := 5; - - for INDEX in 0 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'T', 'I', 'M', 'E' ), - PRIORITY, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TASK_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE LOOP" ); - - PRIORITY := PRIORITY + 1; - - if INDEX = 0 then - TASK_ENTRY := TMTEST.HIGH_TASK'ACCESS; - elsif INDEX = TIME_TEST_SUPPORT.OPERATION_COUNT then - TASK_ENTRY := TMTEST.LOW_TASK'ACCESS; - else - TASK_ENTRY := TMTEST.MIDDLE_TASKS'ACCESS; - end if; - - RTEMS.TASK_START( TASK_ID, TASK_ENTRY, 0, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START LOOP" ); - - end loop; - - RTEMS.MESSAGE_QUEUE_CREATE( - 1, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 16, - RTEMS.DEFAULT_OPTIONS, - TMTEST.QUEUE_ID, - STATUS - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - TIMER_DRIVER.EMPTY_FUNCTION; - end loop; - OVERHEAD := TIMER_DRIVER.READ_TIMER; - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.MESSAGE_QUEUE_RECEIVE( - TMTEST.QUEUE_ID, - BUFFER_POINTER, - RTEMS.NO_WAIT, - RTEMS.NO_TIMEOUT, - MESSAGE_SIZE, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - TIME_TEST_SUPPORT.PUT_TIME( - "MESSAGE_QUEUE_RECEIVE (NO_WAIT)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.MESSAGE_QUEUE_RECEIVE - ); - - end TEST_INIT; - ---PAGE --- --- HIGH_TASK --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - BUFFER : TMTEST.BUFFER; - BUFFER_POINTER : RTEMS.ADDRESS; - MESSAGE_SIZE : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - BUFFER_POINTER := BUFFER'ADDRESS; - - TIMER_DRIVER.INITIALIZE; - - RTEMS.MESSAGE_QUEUE_RECEIVE( - TMTEST.QUEUE_ID, - BUFFER_POINTER, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - MESSAGE_SIZE, - STATUS - ); - - end HIGH_TASK; - ---PAGE --- --- MIDDLE_TASKS --- - - procedure MIDDLE_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - BUFFER : TMTEST.BUFFER; - BUFFER_POINTER : RTEMS.ADDRESS; - MESSAGE_SIZE : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - BUFFER_POINTER := BUFFER'ADDRESS; - - RTEMS.MESSAGE_QUEUE_RECEIVE( - TMTEST.QUEUE_ID, - BUFFER_POINTER, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - MESSAGE_SIZE, - STATUS - ); - - end MIDDLE_TASKS; - ---PAGE --- --- LOW_TASK --- - - procedure LOW_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - TIME_TEST_SUPPORT.PUT_TIME( - "MESSAGE_QUEUE_RECEIVE (blocking)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.MESSAGE_QUEUE_RECEIVE - ); - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end LOW_TASK; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm10/tmtest.ads b/c/src/ada-tests/tmtests/tm10/tmtest.ads deleted file mode 100644 index 9268fa8bac..0000000000 --- a/c/src/ada-tests/tmtests/tm10/tmtest.ads +++ /dev/null @@ -1,117 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 10 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with TIMER_DRIVER; -with RTEMS; - -package TMTEST is - --- --- Buffer Record similar to that used by RTEMS 3.2.1. Using this --- avoids changes to the test. --- - - type BUFFER is - record - FIELD1 : RTEMS.UNSIGNED32; -- TEMPORARY UNTIL VARIABLE LENGTH - FIELD2 : RTEMS.UNSIGNED32; - FIELD3 : RTEMS.UNSIGNED32; - FIELD4 : RTEMS.UNSIGNED32; - end record; - --- --- The following is the ID of the message queue used for timing operations. --- - - QUEUE_ID : RTEMS.ID; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TEST_INIT --- --- DESCRIPTION: --- --- This subprogram performs test initialization. After initialization --- has been completed, the NO_WAIT case for MESSAGE_QUEUE_RECEIVE --- is timed and reported. --- - - procedure TEST_INIT; - --- --- HIGH_TASK --- --- DESCRIPTION: --- --- This RTEMS task is the highest priority task in the system. --- It starts the timer and performs a blocking MESSAGE_QUEUE_RECEIVE. --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- MIDDLE_TASKS --- --- DESCRIPTION: --- --- These RTEMS tasks perform a blocking MESSAGE_QUEUE_RECEIVE. --- - - procedure MIDDLE_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- LOW_TASK --- --- DESCRIPTION: --- --- This RTEMS task stops the timer and reports the execution time --- of a blocking MESSAGE_QUEUE_RECEIVE. --- - - procedure LOW_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm11/config.h b/c/src/ada-tests/tmtests/tm11/config.h deleted file mode 100644 index b82372ca0f..0000000000 --- a/c/src/ada-tests/tmtests/tm11/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 111 -#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 1 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm11/tm11.adb b/c/src/ada-tests/tmtests/tm11/tm11.adb deleted file mode 100644 index d88dae9fa4..0000000000 --- a/c/src/ada-tests/tmtests/tm11/tm11.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM11 of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM11 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM11; - diff --git a/c/src/ada-tests/tmtests/tm11/tmtest.adb b/c/src/ada-tests/tmtests/tm11/tmtest.adb deleted file mode 100644 index 5cba54d365..0000000000 --- a/c/src/ada-tests/tmtests/tm11/tmtest.adb +++ /dev/null @@ -1,219 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 11 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERFACES; use INTERFACES; -with RTEMS; -with RTEMS_CALLING_OVERHEAD; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - TASK_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 11 ***" ); - - RTEMS.TASK_CREATE( - 1, - 251, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TASK_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE" ); - - RTEMS.TASK_START( - TASK_ID, - TMTEST.TEST_INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START" ); - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- TEST_INIT --- - - procedure TEST_INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - INDEX : RTEMS.UNSIGNED32; - TASK_ENTRY : RTEMS.TASK_ENTRY; - PRIORITY : RTEMS.TASK_PRIORITY; - TASK_ID : RTEMS.ID; - BUFFER : TMTEST.BUFFER; - BUFFER_POINTER : RTEMS.ADDRESS; - MESSAGE_SIZE : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - BUFFER_POINTER := BUFFER'ADDRESS; - --- As each task is started, it preempts this task and performs a blocking --- MESSAGE_QUEUE_RECEIVE. Upon completion of this loop all created tasks --- are blocked. - - RTEMS.MESSAGE_QUEUE_CREATE( - RTEMS.BUILD_NAME( 'M', 'Q', '1', ' ' ), - TIME_TEST_SUPPORT.OPERATION_COUNT, - 16, - RTEMS.DEFAULT_OPTIONS, - TMTEST.QUEUE_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "MESSAGE_QUEUE_CREATE" ); - - PRIORITY := 250; - - for INDEX in 0 .. TIME_TEST_SUPPORT.OPERATION_COUNT - 1 - loop - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'T', 'I', 'M', 'E' ), - PRIORITY, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TASK_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE LOOP" ); - - PRIORITY := PRIORITY - 1; - - if INDEX = TIME_TEST_SUPPORT.OPERATION_COUNT - 1 then - TASK_ENTRY := TMTEST.HIGH_TASK'ACCESS; - else - TASK_ENTRY := TMTEST.MIDDLE_TASKS'ACCESS; - end if; - - RTEMS.TASK_START( TASK_ID, TASK_ENTRY, 0, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START LOOP" ); - - end loop; - - TIMER_DRIVER.INITIALIZE; - RTEMS.MESSAGE_QUEUE_SEND( - TMTEST.QUEUE_ID, - BUFFER_POINTER, - 16, - STATUS - ); - - end TEST_INIT; - ---PAGE --- --- HIGH_TASK --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - BUFFER : TMTEST.BUFFER; - BUFFER_POINTER : RTEMS.ADDRESS; - MESSAGE_SIZE : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - BUFFER_POINTER := BUFFER'ADDRESS; - - RTEMS.MESSAGE_QUEUE_RECEIVE( - TMTEST.QUEUE_ID, - BUFFER_POINTER, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - MESSAGE_SIZE, - STATUS - ); - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "MESSAGE_QUEUE_SEND (preemptive)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.MESSAGE_QUEUE_SEND - ); - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end HIGH_TASK; - ---PAGE --- --- MIDDLE_TASKS --- - - procedure MIDDLE_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - BUFFER : TMTEST.BUFFER; - BUFFER_POINTER : RTEMS.ADDRESS; - MESSAGE_SIZE : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - BUFFER_POINTER := BUFFER'ADDRESS; - - RTEMS.MESSAGE_QUEUE_RECEIVE( - TMTEST.QUEUE_ID, - BUFFER_POINTER, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - MESSAGE_SIZE, - STATUS - ); - - RTEMS.MESSAGE_QUEUE_SEND( - TMTEST.QUEUE_ID, - BUFFER_POINTER, - 16, - STATUS - ); - - end MIDDLE_TASKS; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm11/tmtest.ads b/c/src/ada-tests/tmtests/tm11/tmtest.ads deleted file mode 100644 index 82b9ba2fbe..0000000000 --- a/c/src/ada-tests/tmtests/tm11/tmtest.ads +++ /dev/null @@ -1,114 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 11 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with TIMER_DRIVER; -with RTEMS; - -package TMTEST is - --- --- Buffer Record similar to that used by RTEMS 3.2.1. Using this --- avoids changes to the test. --- - - type BUFFER is - record - FIELD1 : RTEMS.UNSIGNED32; -- TEMPORARY UNTIL VARIABLE LENGTH - FIELD2 : RTEMS.UNSIGNED32; - FIELD3 : RTEMS.UNSIGNED32; - FIELD4 : RTEMS.UNSIGNED32; - end record; - --- --- The following is the ID of the message queue used for timing operations. --- - - QUEUE_ID : RTEMS.ID; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TEST_INIT --- --- DESCRIPTION: --- --- This subprogram performs test initialization. As each application --- task is created and started, it will preempt this task and --- perform a blocking MESSAGE_QUEUE_RECEIVE. Once all of the --- initialization is completed, the timer is started and the first --- preemptive MESSAGE_QUEUE_SEND is executed. --- - - procedure TEST_INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- HIGH_TASK --- --- DESCRIPTION: --- --- This RTEMS task is the highest priority task in the system. --- It performs a blocking blocking MESSAGE_QUEUE_RECEIVE. It is --- the last test task created and started. Thus it is the last --- task to be enqueued waiting for a message and the last task --- to receive the message. Once it receives the message, it --- stops the timer and reports the execution time for a --- preemptive MESSAGE_QUEUE_SEND. --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- MIDDLE_TASKS --- --- DESCRIPTION: --- --- As each of these RTEMS tasks is created and started, it preempts --- the initialization task and perform a blocking MESSAGE_QUEUE_RECEIVE. --- - - procedure MIDDLE_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm12/config.h b/c/src/ada-tests/tmtests/tm12/config.h deleted file mode 100644 index b82372ca0f..0000000000 --- a/c/src/ada-tests/tmtests/tm12/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 111 -#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 1 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm12/tm12.adb b/c/src/ada-tests/tmtests/tm12/tm12.adb deleted file mode 100644 index aa19b74a5c..0000000000 --- a/c/src/ada-tests/tmtests/tm12/tm12.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM12 of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM12 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM12; - diff --git a/c/src/ada-tests/tmtests/tm12/tmtest.adb b/c/src/ada-tests/tmtests/tm12/tmtest.adb deleted file mode 100644 index eb25d84829..0000000000 --- a/c/src/ada-tests/tmtests/tm12/tmtest.adb +++ /dev/null @@ -1,212 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 12 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERFACES; use INTERFACES; -with RTEMS; -with RTEMS_CALLING_OVERHEAD; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - TASK_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 12 ***" ); - - RTEMS.TASK_CREATE( - 1, - 251, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TASK_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE" ); - - RTEMS.TASK_START( - TASK_ID, - TMTEST.TEST_INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START" ); - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- TEST_INIT --- - - procedure TEST_INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - INDEX : RTEMS.UNSIGNED32; - TASK_ENTRY : RTEMS.TASK_ENTRY; - PRIORITY : RTEMS.TASK_PRIORITY; - TASK_ID : RTEMS.ID; - BUFFER : TMTEST.BUFFER; - BUFFER_POINTER : RTEMS.ADDRESS; - STATUS : RTEMS.STATUS_CODES; - begin - - BUFFER_POINTER := BUFFER'ADDRESS; - - RTEMS.MESSAGE_QUEUE_CREATE( - RTEMS.BUILD_NAME( 'M', 'Q', '1', ' ' ), - TIME_TEST_SUPPORT.OPERATION_COUNT, - 16, - RTEMS.DEFAULT_OPTIONS, - TMTEST.QUEUE_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "MESSAGE_QUEUE_CREATE" ); - - PRIORITY := 250; - - for INDEX in 0 .. TIME_TEST_SUPPORT.OPERATION_COUNT - 1 - loop - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'T', 'I', 'M', 'E' ), - PRIORITY, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TASK_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE LOOP" ); - - PRIORITY := PRIORITY - 1; - - if INDEX = TIME_TEST_SUPPORT.OPERATION_COUNT - 1 then - TASK_ENTRY := TMTEST.HIGH_TASK'ACCESS; - else - TASK_ENTRY := TMTEST.LOW_TASKS'ACCESS; - end if; - - RTEMS.TASK_START( TASK_ID, TASK_ENTRY, 0, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START LOOP" ); - - end loop; - - end TEST_INIT; - ---PAGE --- --- HIGH_TASK --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - BUFFER : TMTEST.BUFFER; - BUFFER_POINTER : RTEMS.ADDRESS; - INDEX : RTEMS.UNSIGNED32; - OVERHEAD : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - BUFFER_POINTER := BUFFER'ADDRESS; - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - TIMER_DRIVER.EMPTY_FUNCTION; - end loop; - OVERHEAD := TIMER_DRIVER.READ_TIMER; - - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - - RTEMS.MESSAGE_QUEUE_SEND( - TMTEST.QUEUE_ID, - BUFFER_POINTER, - 16, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "MESSAGE_QUEUE_SEND" ); --XXX - - end loop; - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "MESSAGE_QUEUE_SEND (readying)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.MESSAGE_QUEUE_SEND - ); - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end HIGH_TASK; - ---PAGE --- --- LOW_TASK --- - - procedure LOW_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - BUFFER : TMTEST.BUFFER; - BUFFER_POINTER : RTEMS.ADDRESS; - MESSAGE_SIZE : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - BUFFER_POINTER := BUFFER'ADDRESS; - - RTEMS.MESSAGE_QUEUE_RECEIVE( - TMTEST.QUEUE_ID, - BUFFER_POINTER, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - MESSAGE_SIZE, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "MESSAGE_QUEUE_RECEIVE" ); --XXX - - end LOW_TASKS; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm12/tmtest.ads b/c/src/ada-tests/tmtests/tm12/tmtest.ads deleted file mode 100644 index b18df42719..0000000000 --- a/c/src/ada-tests/tmtests/tm12/tmtest.ads +++ /dev/null @@ -1,105 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 12 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with TIMER_DRIVER; -with RTEMS; - -package TMTEST is - --- --- Buffer Record similar to that used by RTEMS 3.2.1. Using this --- avoids changes to the test. --- - - type BUFFER is - record - FIELD1 : RTEMS.UNSIGNED32; -- TEMPORARY UNTIL VARIABLE LENGTH - FIELD2 : RTEMS.UNSIGNED32; - FIELD3 : RTEMS.UNSIGNED32; - FIELD4 : RTEMS.UNSIGNED32; - end record; - --- --- The following is the ID of the message queue used for timing operations. --- - - QUEUE_ID : RTEMS.ID; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TEST_INIT --- --- DESCRIPTION: --- --- This subprogram performs test initialization. --- - - procedure TEST_INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- HIGH_TASK --- --- DESCRIPTION: --- --- This RTEMS task is the lowest priority task in the system. It --- only executes after all of the LOW_TASKS have blocked. It then --- times a readying MESSAGE_QUEUE_SEND. --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- LOW_TASKS --- --- DESCRIPTION: --- --- These RTEMS tasks perform a blocking MESSAGE_QUEUE_RECEIVE. --- - - procedure LOW_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm13/config.h b/c/src/ada-tests/tmtests/tm13/config.h deleted file mode 100644 index b82372ca0f..0000000000 --- a/c/src/ada-tests/tmtests/tm13/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 111 -#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 1 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm13/tm13.adb b/c/src/ada-tests/tmtests/tm13/tm13.adb deleted file mode 100644 index 79f3aabf2b..0000000000 --- a/c/src/ada-tests/tmtests/tm13/tm13.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM13 of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM13 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM13; - diff --git a/c/src/ada-tests/tmtests/tm13/tmtest.adb b/c/src/ada-tests/tmtests/tm13/tmtest.adb deleted file mode 100644 index 2a657d9515..0000000000 --- a/c/src/ada-tests/tmtests/tm13/tmtest.adb +++ /dev/null @@ -1,217 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 13 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERFACES; use INTERFACES; -with RTEMS; -with RTEMS_CALLING_OVERHEAD; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - TASK_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 13 ***" ); - - RTEMS.TASK_CREATE( - 1, - 251, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TASK_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE" ); - - RTEMS.TASK_START( - TASK_ID, - TMTEST.TEST_INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START" ); - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- TEST_INIT --- - - procedure TEST_INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - INDEX : RTEMS.UNSIGNED32; - TASK_ENTRY : RTEMS.TASK_ENTRY; - PRIORITY : RTEMS.TASK_PRIORITY; - TASK_ID : RTEMS.ID; - BUFFER : TMTEST.BUFFER; - BUFFER_POINTER : RTEMS.ADDRESS; - MESSAGE_SIZE : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - BUFFER_POINTER := BUFFER'ADDRESS; - --- As each task is started, it preempts this task and performs a blocking --- MESSAGE_QUEUE_RECEIVE. Upon completion of this loop all created tasks --- are blocked. - - RTEMS.MESSAGE_QUEUE_CREATE( - RTEMS.BUILD_NAME( 'M', 'Q', '1', ' ' ), - TIME_TEST_SUPPORT.OPERATION_COUNT, - 16, - RTEMS.DEFAULT_OPTIONS, - TMTEST.QUEUE_ID, - STATUS - ); - - PRIORITY := 250; - - for INDEX in 0 .. TIME_TEST_SUPPORT.OPERATION_COUNT - 1 - loop - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'T', 'I', 'M', 'E' ), - PRIORITY, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TASK_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE LOOP" ); - - PRIORITY := PRIORITY - 1; - - if INDEX = TIME_TEST_SUPPORT.OPERATION_COUNT - 1 then - TASK_ENTRY := TMTEST.HIGH_TASK'ACCESS; - else - TASK_ENTRY := TMTEST.MIDDLE_TASKS'ACCESS; - end if; - - RTEMS.TASK_START( TASK_ID, TASK_ENTRY, 0, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START LOOP" ); - - end loop; - - TIMER_DRIVER.INITIALIZE; - RTEMS.MESSAGE_QUEUE_URGENT( - TMTEST.QUEUE_ID, - BUFFER_POINTER, - 16, - STATUS - ); - - end TEST_INIT; - ---PAGE --- --- HIGH_TASK --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - BUFFER : TMTEST.BUFFER; - BUFFER_POINTER : RTEMS.ADDRESS; - MESSAGE_SIZE : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - BUFFER_POINTER := BUFFER'ADDRESS; - - RTEMS.MESSAGE_QUEUE_RECEIVE( - TMTEST.QUEUE_ID, - BUFFER_POINTER, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - MESSAGE_SIZE, - STATUS - ); - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - TIME_TEST_SUPPORT.PUT_TIME( - "MESSAGE_QUEUE_URGENT (preemptive)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.MESSAGE_QUEUE_URGENT - ); - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end HIGH_TASK; - ---PAGE --- --- MIDDLE_TASKS --- - - procedure MIDDLE_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - BUFFER : TMTEST.BUFFER; - BUFFER_POINTER : RTEMS.ADDRESS; - MESSAGE_SIZE : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - BUFFER_POINTER := BUFFER'ADDRESS; - - RTEMS.MESSAGE_QUEUE_RECEIVE( - TMTEST.QUEUE_ID, - BUFFER_POINTER, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - MESSAGE_SIZE, - STATUS - ); - - RTEMS.MESSAGE_QUEUE_URGENT( - TMTEST.QUEUE_ID, - BUFFER_POINTER, - 16, - STATUS - ); - - end MIDDLE_TASKS; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm13/tmtest.ads b/c/src/ada-tests/tmtests/tm13/tmtest.ads deleted file mode 100644 index 2ecf4a3a96..0000000000 --- a/c/src/ada-tests/tmtests/tm13/tmtest.ads +++ /dev/null @@ -1,114 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 13 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with TIMER_DRIVER; -with RTEMS; - -package TMTEST is - --- --- Buffer Record similar to that used by RTEMS 3.2.1. Using this --- avoids changes to the test. --- - - type BUFFER is - record - FIELD1 : RTEMS.UNSIGNED32; -- TEMPORARY UNTIL VARIABLE LENGTH - FIELD2 : RTEMS.UNSIGNED32; - FIELD3 : RTEMS.UNSIGNED32; - FIELD4 : RTEMS.UNSIGNED32; - end record; - --- --- The following is the ID of the message queue used for timing operations. --- - - QUEUE_ID : RTEMS.ID; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TEST_INIT --- --- DESCRIPTION: --- --- This subprogram performs test initialization. As each application --- task is created and started, it will preempt this task and --- perform a blocking MESSAGE_QUEUE_RECEIVE. Once all of the --- initialization is completed, the timer is started and the first --- preemptive MESSAGE_QUEUE_URGENT is executed. --- - - procedure TEST_INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- HIGH_TASK --- --- DESCRIPTION: --- --- This RTEMS task is the highest priority task in the system. --- It performs a blocking blocking MESSAGE_QUEUE_RECEIVE. It is --- the last test task created and started. Thus it is the last --- task to be enqueued waiting for a message and the last task --- to receive the message. Once it receives the message, it --- stops the timer and reports the execution time for a --- preemptive MESSAGE_QUEUE_URGENT. --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- MIDDLE_TASKS --- --- DESCRIPTION: --- --- As each of these RTEMS tasks is created and started, it preempts --- the initialization task and perform a blocking MESSAGE_QUEUE_RECEIVE. --- - - procedure MIDDLE_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm14/config.h b/c/src/ada-tests/tmtests/tm14/config.h deleted file mode 100644 index b82372ca0f..0000000000 --- a/c/src/ada-tests/tmtests/tm14/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 111 -#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 1 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm14/tm14.adb b/c/src/ada-tests/tmtests/tm14/tm14.adb deleted file mode 100644 index c155fcd29d..0000000000 --- a/c/src/ada-tests/tmtests/tm14/tm14.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM14 of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM14 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM14; - diff --git a/c/src/ada-tests/tmtests/tm14/tmtest.adb b/c/src/ada-tests/tmtests/tm14/tmtest.adb deleted file mode 100644 index 69eeb368eb..0000000000 --- a/c/src/ada-tests/tmtests/tm14/tmtest.adb +++ /dev/null @@ -1,216 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 14 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERFACES; use INTERFACES; -with RTEMS; -with RTEMS_CALLING_OVERHEAD; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - TASK_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 14 ***" ); - - RTEMS.TASK_CREATE( - 1, - 251, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TASK_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE" ); - - RTEMS.TASK_START( - TASK_ID, - TMTEST.TEST_INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START" ); - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- TEST_INIT --- - - procedure TEST_INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - INDEX : RTEMS.UNSIGNED32; - TASK_ENTRY : RTEMS.TASK_ENTRY; - PRIORITY : RTEMS.TASK_PRIORITY; - TASK_ID : RTEMS.ID; - BUFFER : TMTEST.BUFFER; - BUFFER_POINTER : RTEMS.ADDRESS; - STATUS : RTEMS.STATUS_CODES; - begin - - BUFFER_POINTER := BUFFER'ADDRESS; - - RTEMS.MESSAGE_QUEUE_CREATE( - RTEMS.BUILD_NAME( 'M', 'Q', '1', ' ' ), - TIME_TEST_SUPPORT.OPERATION_COUNT, - 16, - RTEMS.DEFAULT_OPTIONS, - TMTEST.QUEUE_ID, - STATUS - ); - - PRIORITY := 250; - - for INDEX in 0 .. TIME_TEST_SUPPORT.OPERATION_COUNT - 1 - loop - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'T', 'I', 'M', 'E' ), - PRIORITY, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TASK_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE LOOP" ); - - PRIORITY := PRIORITY - 1; - - if INDEX = TIME_TEST_SUPPORT.OPERATION_COUNT - 1 then - TASK_ENTRY := TMTEST.HIGH_TASK'ACCESS; - else - TASK_ENTRY := TMTEST.LOW_TASKS'ACCESS; - end if; - - RTEMS.TASK_START( TASK_ID, TASK_ENTRY, 0, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START LOOP" ); - - end loop; - - TIMER_DRIVER.INITIALIZE; - RTEMS.MESSAGE_QUEUE_URGENT( - TMTEST.QUEUE_ID, - BUFFER_POINTER, - 16, - STATUS - ); - - end TEST_INIT; - ---PAGE --- --- HIGH_TASK --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - BUFFER : TMTEST.BUFFER; - BUFFER_POINTER : RTEMS.ADDRESS; - OVERHEAD : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - BUFFER_POINTER := BUFFER'ADDRESS; - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - TIMER_DRIVER.EMPTY_FUNCTION; - end loop; - OVERHEAD := TIMER_DRIVER.READ_TIMER; - - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - - RTEMS.MESSAGE_QUEUE_URGENT( - TMTEST.QUEUE_ID, - BUFFER_POINTER, - 16, - STATUS - ); - - end loop; - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "MESSAGE_QUEUE_URGENT (readying)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.MESSAGE_QUEUE_URGENT - ); - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end HIGH_TASK; - ---PAGE --- --- LOW_TASKS --- - - procedure LOW_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - BUFFER : TMTEST.BUFFER; - BUFFER_POINTER : RTEMS.ADDRESS; - MESSAGE_SIZE : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - BUFFER_POINTER := BUFFER'ADDRESS; - - RTEMS.MESSAGE_QUEUE_RECEIVE( - TMTEST.QUEUE_ID, - BUFFER_POINTER, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - MESSAGE_SIZE, - STATUS - ); - - end LOW_TASKS; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm14/tmtest.ads b/c/src/ada-tests/tmtests/tm14/tmtest.ads deleted file mode 100644 index e08a167fcb..0000000000 --- a/c/src/ada-tests/tmtests/tm14/tmtest.ads +++ /dev/null @@ -1,105 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 14 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with TIMER_DRIVER; -with RTEMS; - -package TMTEST is - --- --- Buffer Record similar to that used by RTEMS 3.2.1. Using this --- avoids changes to the test. --- - - type BUFFER is - record - FIELD1 : RTEMS.UNSIGNED32; -- TEMPORARY UNTIL VARIABLE LENGTH - FIELD2 : RTEMS.UNSIGNED32; - FIELD3 : RTEMS.UNSIGNED32; - FIELD4 : RTEMS.UNSIGNED32; - end record; - --- --- The following is the ID of the message queue used for timing operations. --- - - QUEUE_ID : RTEMS.ID; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TEST_INIT --- --- DESCRIPTION: --- --- This subprogram performs test initialization. --- - - procedure TEST_INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- HIGH_TASK --- --- DESCRIPTION: --- --- This RTEMS task is the lowest priority task in the system. It --- only executes after all of the LOW_TASKS have blocked. It then --- times a readying MESSAGE_QUEUE_SEND. --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- LOW_TASKS --- --- DESCRIPTION: --- --- These RTEMS tasks perform a blocking MESSAGE_QUEUE_RECEIVE. --- - - procedure LOW_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm15/config.h b/c/src/ada-tests/tmtests/tm15/config.h deleted file mode 100644 index b82372ca0f..0000000000 --- a/c/src/ada-tests/tmtests/tm15/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 111 -#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 1 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm15/tm15.adb b/c/src/ada-tests/tmtests/tm15/tm15.adb deleted file mode 100644 index ede6d05307..0000000000 --- a/c/src/ada-tests/tmtests/tm15/tm15.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM15 of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM15 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM15; - diff --git a/c/src/ada-tests/tmtests/tm15/tmtest.adb b/c/src/ada-tests/tmtests/tm15/tmtest.adb deleted file mode 100644 index c1ed0dc9c2..0000000000 --- a/c/src/ada-tests/tmtests/tm15/tmtest.adb +++ /dev/null @@ -1,276 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 15 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERFACES; use INTERFACES; -with RTEMS; -with RTEMS_CALLING_OVERHEAD; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - TASK_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 15 ***" ); - - TMTEST.TEST_INIT; - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- TEST_INIT --- - - procedure TEST_INIT - is - ID : RTEMS.ID; - INDEX : RTEMS.UNSIGNED32; - OVERHEAD : RTEMS.UNSIGNED32; - EVENT_OUT : RTEMS.EVENT_SET; - STATUS : RTEMS.STATUS_CODES; - begin - - TMTEST.TIME_SET := FALSE; - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'L', 'O', 'W', ' ' ), - 10, - 1024, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE LOW" ); - - RTEMS.TASK_START( ID, TMTEST.LOW_TASK'ACCESS, 0, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START LOW" ); - - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'H', 'I', 'G', 'H' ), - 5, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TMTEST.TASK_ID( INDEX ), - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE LOOP" ); - - RTEMS.TASK_START( - TMTEST.TASK_ID( INDEX ), - TMTEST.HIGH_TASKS'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START LOOP" ); - - end loop; - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - TIMER_DRIVER.EMPTY_FUNCTION; - end loop; - OVERHEAD := TIMER_DRIVER.READ_TIMER; - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.EVENT_RECEIVE( - RTEMS.PENDING_EVENTS, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - EVENT_OUT, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "EVENT_RECEIVE (current)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.EVENT_RECEIVE - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.EVENT_RECEIVE( - RTEMS.ALL_EVENTS, - RTEMS.NO_WAIT, - RTEMS.NO_TIMEOUT, - EVENT_OUT, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "EVENT_RECEIVE (NO_WAIT)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.EVENT_RECEIVE - ); - - end TEST_INIT; - ---PAGE --- --- LOW_TASK --- - - procedure LOW_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - ID : RTEMS.ID; - INDEX : RTEMS.UNSIGNED32; - EVENT_OUT : RTEMS.EVENT_SET; - OVERHEAD : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "EVENT_RECEIVE (blocking)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.EVENT_RECEIVE - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - TIMER_DRIVER.EMPTY_FUNCTION; - end loop; - OVERHEAD := TIMER_DRIVER.READ_TIMER; - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.EVENT_SEND( RTEMS.SELF, RTEMS.EVENT_16, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "EVENT_SEND (returns to caller)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.EVENT_SEND - ); - - TIMER_DRIVER.INITIALIZE; - RTEMS.EVENT_RECEIVE( - RTEMS.EVENT_16, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - EVENT_OUT, - STATUS - ); - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "EVENT_RECEIVE (available)", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.EVENT_RECEIVE - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.EVENT_SEND( - TMTEST.TASK_ID( INDEX ), - RTEMS.EVENT_16, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "EVENT_SEND (readying)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.EVENT_SEND - ); - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end LOW_TASK; - ---PAGE --- --- HIGH_TASKS --- - - procedure HIGH_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - EVENT_OUT : RTEMS.EVENT_SET; - STATUS : RTEMS.STATUS_CODES; - begin - - if TMTEST.TIME_SET = FALSE then - TMTEST.TIME_SET := TRUE; - TIMER_DRIVER.INITIALIZE; - end if; - - RTEMS.EVENT_RECEIVE( - 16#7FFFFFFF#, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - EVENT_OUT, - STATUS - ); - - end HIGH_TASKS; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm15/tmtest.ads b/c/src/ada-tests/tmtests/tm15/tmtest.ads deleted file mode 100644 index 9ccc3d6558..0000000000 --- a/c/src/ada-tests/tmtests/tm15/tmtest.ads +++ /dev/null @@ -1,109 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 15 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with TIME_TEST_SUPPORT; -with TIMER_DRIVER; -with RTEMS; - -package TMTEST is - --- --- This array contains the IDs of all RTEMS tasks created by this test. --- - - TASK_ID : array ( RTEMS.UNSIGNED32 range 1 .. - TIME_TEST_SUPPORT.OPERATION_COUNT ) of RTEMS.ID; - --- --- This variable is set to TRUE if the timer has been initialized --- and is currently timing an operation. --- - - TIME_SET : Standard.BOOLEAN; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TEST_INIT --- --- DESCRIPTION: --- --- This subprogram performs test initialization. Once initialization --- has been completed, the following operations are timed and reported: --- --- + event_receive of currently PENDING_EVENTS --- + event_receive NO_WAIT case --- - - procedure TEST_INIT; - --- --- LOW_TASK --- --- DESCRIPTION: --- --- This RTEMS task stops the timer and reports the execution time --- of a blocking EVENT_RECEIVE. After this the following --- operations are timed and the execution time is reported: --- --- + EVENT_SEND which does not ready a task --- + EVENT_RECEIVE with the event condition available --- + EVENT_SEND which readies a task --- - - procedure LOW_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- HIGH_TASKS --- --- DESCRIPTION: --- --- These RTEMS tasks executive a blocking EVENT_RECEIVE after --- initialization is complete. The first of these tasks to --- execute starts the timer. --- - - procedure HIGH_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm16/config.h b/c/src/ada-tests/tmtests/tm16/config.h deleted file mode 100644 index b82372ca0f..0000000000 --- a/c/src/ada-tests/tmtests/tm16/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 111 -#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 1 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm16/tm16.adb b/c/src/ada-tests/tmtests/tm16/tm16.adb deleted file mode 100644 index 91acf3fe15..0000000000 --- a/c/src/ada-tests/tmtests/tm16/tm16.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM16 of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM16 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM16; - diff --git a/c/src/ada-tests/tmtests/tm16/tmtest.adb b/c/src/ada-tests/tmtests/tm16/tmtest.adb deleted file mode 100644 index 57dcdd482d..0000000000 --- a/c/src/ada-tests/tmtests/tm16/tmtest.adb +++ /dev/null @@ -1,197 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 16 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERFACES; use INTERFACES; -with RTEMS; -with RTEMS_CALLING_OVERHEAD; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 16 ***" ); - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'T', 'E', 'S', 'T' ), - 251, - 2048, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF TEST INIT" ); - - RTEMS.TASK_START( - ID, - TMTEST.TEST_INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF TEST INIT" ); - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- TEST_INIT --- - - procedure TEST_INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - PRIORITY : RTEMS.TASK_PRIORITY; - INDEX : RTEMS.UNSIGNED32; - TASK_ENTRY : RTEMS.TASK_ENTRY; - STATUS : RTEMS.STATUS_CODES; - begin - - PRIORITY := 250; - - for INDEX in 0 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'M', 'I', 'D', ' ' ), - PRIORITY, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TMTEST.TASK_ID( INDEX ), - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE LOOP" ); - - if INDEX = TIME_TEST_SUPPORT.OPERATION_COUNT then - TASK_ENTRY := TMTEST.HIGH_TASK'ACCESS; - else - TASK_ENTRY := TMTEST.MIDDLE_TASKS'ACCESS; - end if; - - RTEMS.TASK_START( - TMTEST.TASK_ID( INDEX ), - TASK_ENTRY, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START LOOP" ); - - PRIORITY := PRIORITY - 1; - - end loop; - - TMTEST.TASK_COUNT := 0; - - TIMER_DRIVER.INITIALIZE; -- starts the timer - - RTEMS.EVENT_SEND( -- preempts task - TMTEST.TASK_ID( TMTEST.TASK_COUNT ), - RTEMS.EVENT_16, - STATUS - ); - - end TEST_INIT; - ---PAGE --- --- MIDDLE_TASKS --- - - procedure MIDDLE_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - EVENT_OUT : RTEMS.EVENT_SET; - STATUS : RTEMS.STATUS_CODES; - begin - - RTEMS.EVENT_RECEIVE( -- task blocks - RTEMS.EVENT_16, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - EVENT_OUT, - STATUS - ); - - TMTEST.TASK_COUNT := TMTEST.TASK_COUNT + 1; - - RTEMS.EVENT_SEND( -- preempts task - TMTEST.TASK_ID( TMTEST.TASK_COUNT ), - RTEMS.EVENT_16, - STATUS - ); - - end MIDDLE_TASKS; - ---PAGE --- --- HIGH_TASK --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - EVENT_OUT : RTEMS.EVENT_SET; - STATUS : RTEMS.STATUS_CODES; - begin - - RTEMS.EVENT_RECEIVE( -- task blocks - RTEMS.EVENT_16, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - EVENT_OUT, - STATUS - ); - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "EVENT_SEND (preemptive)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.EVENT_SEND - ); - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end HIGH_TASK; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm16/tmtest.ads b/c/src/ada-tests/tmtests/tm16/tmtest.ads deleted file mode 100644 index 44b7feabd2..0000000000 --- a/c/src/ada-tests/tmtests/tm16/tmtest.ads +++ /dev/null @@ -1,111 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 16 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TIME_TEST_SUPPORT; -with TIMER_DRIVER; - -package TMTEST is - --- --- This array contains the IDs of all RTEMS tasks created by this test. --- - - TASK_ID : array ( RTEMS.UNSIGNED32 - range 0 .. TIME_TEST_SUPPORT.OPERATION_COUNT ) of RTEMS.ID; - --- --- This variable is used to index through the TASK_ID array --- so that events can be send to the next task. --- - - TASK_COUNT : RTEMS.UNSIGNED32; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TEST_INIT --- --- DESCRIPTION: --- --- This subprogram performs test initialization. Once initialization --- has been completed, this task sets the TASK_COUNT to 0 and --- starts the timer before performing a preemptive EVENT_SEND. --- - - procedure TEST_INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- HIGH_TASK --- --- DESCRIPTION: --- --- This RTEMS task is highest priority task in the system. --- Its first action is to perform a blocking EVENT_RECEIVE. --- It is the last task to have its event set sent to it. Thus it --- is the last task to be awakened by a preemptive EVENT_SEND. --- After it preempts the last MIDDLE_TASKS, it stops the timer --- and reports the execution time of preemptive EVENT_SEND. --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- MIDDLE_TASKS --- --- DESCRIPTION: --- --- These RTEMS tasks perform a blocking EVENT_RECEIVE. When --- readied, each task will increment the TASK_COUNT and --- perform a preemptive EVENT_SEND. TASK_COUNT is used to --- index the TASK_ID array in such a way that incrementing --- TASK_COUNT makes it index the ID of the next task to --- send events to. --- - - procedure MIDDLE_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm17/config.h b/c/src/ada-tests/tmtests/tm17/config.h deleted file mode 100644 index b82372ca0f..0000000000 --- a/c/src/ada-tests/tmtests/tm17/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 111 -#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 1 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm17/tm17.adb b/c/src/ada-tests/tmtests/tm17/tm17.adb deleted file mode 100644 index 263352447b..0000000000 --- a/c/src/ada-tests/tmtests/tm17/tm17.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM17 of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM17 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM17; - diff --git a/c/src/ada-tests/tmtests/tm17/tmtest.adb b/c/src/ada-tests/tmtests/tm17/tmtest.adb deleted file mode 100644 index 1b36ab0cbf..0000000000 --- a/c/src/ada-tests/tmtests/tm17/tmtest.adb +++ /dev/null @@ -1,160 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 17 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERFACES; use INTERFACES; -with RTEMS; -with RTEMS_CALLING_OVERHEAD; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - TASK_ENTRY : RTEMS.TASK_ENTRY; - INDEX : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 17 ***" ); - - TMTEST.TASK_PRIORITY := 254; - - for INDEX in 0 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'T', 'I', 'M', 'E' ), - TMTEST.TASK_PRIORITY, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TMTEST.TASK_ID( INDEX ), - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE LOOP" ); - - if INDEX = TIME_TEST_SUPPORT.OPERATION_COUNT then - TASK_ENTRY := TMTEST.LAST_TASK'ACCESS; - elsif INDEX = 0 then - TASK_ENTRY := TMTEST.FIRST_TASK'ACCESS; - else - TASK_ENTRY := TMTEST.MIDDLE_TASKS'ACCESS; - end if; - - RTEMS.TASK_START( TMTEST.TASK_ID( INDEX ), TASK_ENTRY, 0, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START LOOP" ); - - end loop; - - TMTEST.TASK_COUNT := 1; - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- FIRST_TASK --- - - procedure FIRST_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - PREVIOUS_PRIORITY : RTEMS.TASK_PRIORITY; - STATUS : RTEMS.STATUS_CODES; - begin - - TIMER_DRIVER.INITIALIZE; - - TMTEST.TASK_PRIORITY := TMTEST.TASK_PRIORITY - 1; - TMTEST.TASK_COUNT := TMTEST.TASK_COUNT + 1; - - RTEMS.TASK_SET_PRIORITY( - TMTEST.TASK_ID( TMTEST.TASK_COUNT ), - TMTEST.TASK_PRIORITY, - PREVIOUS_PRIORITY, - STATUS - ); - - end FIRST_TASK; - ---PAGE --- --- MIDDLE_TASKS --- - - procedure MIDDLE_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - PREVIOUS_PRIORITY : RTEMS.TASK_PRIORITY; - STATUS : RTEMS.STATUS_CODES; - begin - - TMTEST.TASK_PRIORITY := TMTEST.TASK_PRIORITY - 1; - TMTEST.TASK_COUNT := TMTEST.TASK_COUNT + 1; - - RTEMS.TASK_SET_PRIORITY( - TMTEST.TASK_ID( TMTEST.TASK_COUNT ), - TMTEST.TASK_PRIORITY, - PREVIOUS_PRIORITY, - STATUS - ); - - end MIDDLE_TASKS; - ---PAGE --- --- LAST_TASK --- - - procedure LAST_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - begin - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_SET_PRIORITY (preemptive)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.TASK_SET_PRIORITY - ); - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end LAST_TASK; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm17/tmtest.ads b/c/src/ada-tests/tmtests/tm17/tmtest.ads deleted file mode 100644 index e63a76fc62..0000000000 --- a/c/src/ada-tests/tmtests/tm17/tmtest.ads +++ /dev/null @@ -1,109 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 17 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TIME_TEST_SUPPORT; -with TIMER_DRIVER; - -package TMTEST is - --- --- These arrays contain the IDs and NAMEs of all RTEMS tasks created --- by this test. --- - - TASK_ID : array ( RTEMS.UNSIGNED32 - range 0 .. TIME_TEST_SUPPORT.OPERATION_COUNT ) of RTEMS.ID; - TASK_NAME : array ( RTEMS.UNSIGNED32 - range 0 .. TIME_TEST_SUPPORT.OPERATION_COUNT ) of RTEMS.NAME; - --- --- These variables are used to index the TASK_ID array and change --- the priority of each successive task such that the TASK_SET_PRIORITY --- results in a preemption. --- - - TASK_COUNT : RTEMS.UNSIGNED32; - TASK_PRIORITY : RTEMS.TASK_PRIORITY; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- FIRST_TASK --- --- DESCRIPTION: --- --- This RTEMS task is the first task to execute in the system. It --- starts the timer and updates the TASK_COUNT and TASK_PRIORITY --- variables so that a preemptive TASK_SET_PRIORITY can be performed. --- - - procedure FIRST_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- MIDDLE_TASK --- --- DESCRIPTION: --- --- These RTEMS tasks update the TASK_COUNT and TASK_PRIORITY variables --- so that a preemptive TASK_SET_PRIORITY can be performed. --- - - procedure MIDDLE_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- LAST_TASK --- --- DESCRIPTION: --- --- This RTEMS task is the last task to execute in the system. It --- stops the timer and reports the execution time of a preemptive --- TASK_SET_PRIORITY. --- - - procedure LAST_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm18/config.h b/c/src/ada-tests/tmtests/tm18/config.h deleted file mode 100644 index b82372ca0f..0000000000 --- a/c/src/ada-tests/tmtests/tm18/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 111 -#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 1 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm18/tm18.adb b/c/src/ada-tests/tmtests/tm18/tm18.adb deleted file mode 100644 index 207c78261e..0000000000 --- a/c/src/ada-tests/tmtests/tm18/tm18.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM18 of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM18 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM18; - diff --git a/c/src/ada-tests/tmtests/tm18/tmtest.adb b/c/src/ada-tests/tmtests/tm18/tmtest.adb deleted file mode 100644 index 2603ed0c77..0000000000 --- a/c/src/ada-tests/tmtests/tm18/tmtest.adb +++ /dev/null @@ -1,154 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 18 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERFACES; use INTERFACES; -with RTEMS; -with RTEMS_CALLING_OVERHEAD; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 18 ***" ); - - TMTEST.TEST_INIT; - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- TEST_INIT --- - - procedure TEST_INIT - is - ID : RTEMS.ID; - TASK_ENTRY : RTEMS.TASK_ENTRY; - INDEX : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - for INDEX in 0 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'T', 'I', 'M', 'E' ), - 128, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE LOOP" ); - - - if INDEX = TIME_TEST_SUPPORT.OPERATION_COUNT then - TASK_ENTRY := TMTEST.LAST_TASK'ACCESS; - elsif INDEX = 0 then - TASK_ENTRY := TMTEST.FIRST_TASK'ACCESS; - else - TASK_ENTRY := TMTEST.MIDDLE_TASKS'ACCESS; - end if; - - RTEMS.TASK_START( ID, TASK_ENTRY, 0, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START LOOP" ); - - end loop; - - end TEST_INIT; - ---PAGE --- --- FIRST_TASK --- - - procedure FIRST_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - TIMER_DRIVER.INITIALIZE; - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - - end FIRST_TASK; - ---PAGE --- --- MIDDLE_TASKS --- - - procedure MIDDLE_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - - end MIDDLE_TASKS; - ---PAGE --- --- LAST_TASK --- - - procedure LAST_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - begin - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_DELETE (self)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.TASK_DELETE - ); - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end LAST_TASK; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm18/tmtest.ads b/c/src/ada-tests/tmtests/tm18/tmtest.ads deleted file mode 100644 index 4fe81c9fcb..0000000000 --- a/c/src/ada-tests/tmtests/tm18/tmtest.ads +++ /dev/null @@ -1,97 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 18 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TIME_TEST_SUPPORT; -with TIMER_DRIVER; - -package TMTEST is - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TEST_INIT --- --- DESCRIPTION: --- --- This subprogram performs test initialization. --- - - procedure TEST_INIT; - --- --- FIRST_TASK --- --- DESCRIPTION: --- --- This RTEMS task is the first task to execute. It starts the --- timer and performs a TASK_DELETE on itself. --- - - procedure FIRST_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- MIDDLE_TASK --- --- DESCRIPTION: --- --- These RTEMS tasks perform a TASK_DELETE on themselves. --- - - procedure MIDDLE_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- LAST_TASK --- --- DESCRIPTION: --- --- This RTEMS task is the last task to execute. It stops the --- timer and reports the execution time of a TASK_DELETE SELF. --- - - procedure LAST_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm19/config.h b/c/src/ada-tests/tmtests/tm19/config.h deleted file mode 100644 index b82372ca0f..0000000000 --- a/c/src/ada-tests/tmtests/tm19/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 111 -#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 1 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm19/tm19.adb b/c/src/ada-tests/tmtests/tm19/tm19.adb deleted file mode 100644 index 6e62411a10..0000000000 --- a/c/src/ada-tests/tmtests/tm19/tm19.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM19 of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM19 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM19; - diff --git a/c/src/ada-tests/tmtests/tm19/tmtest.adb b/c/src/ada-tests/tmtests/tm19/tmtest.adb deleted file mode 100644 index 1beb25e26b..0000000000 --- a/c/src/ada-tests/tmtests/tm19/tmtest.adb +++ /dev/null @@ -1,287 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 19 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERFACES; use INTERFACES; -with RTEMS; -with RTEMS_CALLING_OVERHEAD; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 19 ***" ); - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'T', 'I', 'M', 'E' ), - 128, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TMTEST.TASK_ID( 1 ), - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF TASK1" ); - - RTEMS.TASK_START( - TMTEST.TASK_ID( 1 ), - TMTEST.TASK_1'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF TASK1" ); - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'T', 'I', 'M', 'E' ), - 127, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TMTEST.TASK_ID( 2 ), - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF TASK2" ); - - RTEMS.TASK_START( - TMTEST.TASK_ID( 2 ), - TMTEST.TASK_2'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF TASK2" ); - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'T', 'I', 'M', 'E' ), - 126, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TMTEST.TASK_ID( 3 ), - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF TASK3" ); - - RTEMS.TASK_START( - TMTEST.TASK_ID( 3 ), - TMTEST.TASK_3'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF TASK3" ); - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- PROCESS_ASR_FOR_PASS_1 --- - - procedure PROCESS_ASR_FOR_PASS_1 ( - SIGNALS : in RTEMS.SIGNAL_SET - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "SIGNAL_SEND (self)", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.SIGNAL_SEND - ); - - TEXT_IO.PUT_LINE( "SIGNAL_ENTER (preemptive) na" ); - - TIMER_DRIVER.INITIALIZE; - - end PROCESS_ASR_FOR_PASS_1; - ---PAGE --- --- PROCESS_ASR_FOR_PASS_2 --- - - procedure PROCESS_ASR_FOR_PASS_2 ( - SIGNALS : in RTEMS.SIGNAL_SET - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.PUT_LINE( "SIGNAL_ENTER (preemptive) na" ); - - RTEMS.TASK_RESUME( TMTEST.TASK_ID( 3 ), STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_RESUME" ); - - TIMER_DRIVER.INITIALIZE; - - end PROCESS_ASR_FOR_PASS_2; - ---PAGE --- --- TASK_1 --- - - procedure TASK_1 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - TIMER_DRIVER.INITIALIZE; - RTEMS.SIGNAL_CATCH( - TMTEST.PROCESS_ASR_FOR_PASS_1'ACCESS, - RTEMS.DEFAULT_MODES, - STATUS - ); - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "SIGNAL_CATCH", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.SIGNAL_CATCH - ); - - TIMER_DRIVER.INITIALIZE; - RTEMS.SIGNAL_SEND( TMTEST.TASK_ID( 2 ), RTEMS.SIGNAL_1, STATUS ); - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "SIGNAL_SEND (non-preemptive)", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.SIGNAL_SEND - ); - - TIMER_DRIVER.INITIALIZE; - RTEMS.SIGNAL_SEND( RTEMS.SELF, RTEMS.SIGNAL_1, STATUS ); - - -- end time is done in ASR - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "SIGNAL_RETURN (non-preemptive)", - TMTEST.END_TIME, - 1, - 0, - 0 - ); - - RTEMS.SIGNAL_CATCH( - TMTEST.PROCESS_ASR_FOR_PASS_2'ACCESS, - RTEMS.NO_PREEMPT, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "SIGNAL_CATCH" ); - - TIMER_DRIVER.INITIALIZE; - RTEMS.SIGNAL_SEND( RTEMS.SELF, RTEMS.SIGNAL_1, STATUS ); - - end TASK_1; - ---PAGE --- --- PROCESS_ASR_FOR_TASK_2 --- - - procedure PROCESS_ASR_FOR_TASK_2 ( - SIGNALS : in RTEMS.SIGNAL_SET - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - NULL; - - end PROCESS_ASR_FOR_TASK_2; - ---PAGE --- --- TASK_2 --- - - procedure TASK_2 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - RTEMS.SIGNAL_CATCH( - TMTEST.PROCESS_ASR_FOR_TASK_2'ACCESS, - RTEMS.DEFAULT_MODES, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "SIGNAL_CATCH" ); - - RTEMS.TASK_SUSPEND( RTEMS.SELF, STATUS ); - - end TASK_2; - ---PAGE --- --- TASK_3 --- - - procedure TASK_3 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - RTEMS.TASK_SUSPEND( RTEMS.SELF, STATUS ); - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "SIGNAL_RETURN (preemptive)", - TMTEST.END_TIME, - 1, - 0, - 0 - ); - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end TASK_3; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm19/tmtest.ads b/c/src/ada-tests/tmtests/tm19/tmtest.ads deleted file mode 100644 index 2ac34a75fb..0000000000 --- a/c/src/ada-tests/tmtests/tm19/tmtest.ads +++ /dev/null @@ -1,144 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 19 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TIME_TEST_SUPPORT; -with TIMER_DRIVER; - -package TMTEST is - --- --- This array contains the IDs of all RTEMS tasks created by this test. --- - - TASK_ID : array ( RTEMS.UNSIGNED32 range 1 .. 3 ) of RTEMS.ID; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- PROCESS_ASR_FOR_PASS_1 --- --- DESCRIPTION: --- --- This subprogram is the ASR used to measure and report the --- execution time of a SIGNAL_SEND to SELF. Before it exits --- it starts the timer so that the execution time required to --- exit from an ASR back to the same task can be measured. --- - - procedure PROCESS_ASR_FOR_PASS_1 ( - SIGNALS : in RTEMS.SIGNAL_SET - ); - --- --- PROCESS_ASR_FOR_PASS_2 --- --- DESCRIPTION: --- --- This subprogram is the ASR which sets up for a preemptive --- return from an ASR. Before it exits it starts the timer --- so that the execution time required to exit from an ASR --- and transfer control to the another task can be measured. --- - - procedure PROCESS_ASR_FOR_PASS_2 ( - SIGNALS : in RTEMS.SIGNAL_SET - ); - --- --- TASK_1 --- --- DESCRIPTION: --- --- This RTEMS task is responsible for measuring and reporting --- the following execution times: --- --- + SIGNAL_CATCH --- + non-preemptive SIGNAL_SEND --- + non-preemptive return from an ASR --- - - procedure TASK_1 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- PROCESS_ASR_FOR_TASK_2 --- --- DESCRIPTION: --- --- This subprogram is the ASR for TASK_2. It performs no actions. --- - - procedure PROCESS_ASR_FOR_TASK_2 ( - SIGNALS : in RTEMS.SIGNAL_SET - ); - --- --- TASK_2 --- --- DESCRIPTION: --- --- This RTEMS task is used as the recipient of a SIGNAL_SEND. --- After establishing an ASR, it suspends itself to insure --- that it does not execute again. --- - - procedure TASK_2 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TASK_3 --- --- DESCRIPTION: --- --- This RTEMS task is used as the recipient of a preemptive --- SIGNAL_SEND. This task suspends itself and is resumed by --- an ASR for TASK_1. Once the task executes, it stops the --- timer and reports the execution time for a preemptive --- return from an ASR. --- - - procedure TASK_3 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm20/config.h b/c/src/ada-tests/tmtests/tm20/config.h deleted file mode 100644 index 83d86e9b8c..0000000000 --- a/c/src/ada-tests/tmtests/tm20/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_PARTITIONS 1 -#define CONFIGURE_MAXIMUM_REGIONS 1 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm20/tm20.adb b/c/src/ada-tests/tmtests/tm20/tm20.adb deleted file mode 100644 index 4462a79bb9..0000000000 --- a/c/src/ada-tests/tmtests/tm20/tm20.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM20 of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM20 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM20; - diff --git a/c/src/ada-tests/tmtests/tm20/tmtest.adb b/c/src/ada-tests/tmtests/tm20/tmtest.adb deleted file mode 100644 index 6b17059e35..0000000000 --- a/c/src/ada-tests/tmtests/tm20/tmtest.adb +++ /dev/null @@ -1,588 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 20 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERFACES; use INTERFACES; -with RTEMS; -with RTEMS_CALLING_OVERHEAD; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 20 ***" ); - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'T', 'I', 'M', '1' ), - 128, - 2048, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TMTEST.TASK_ID( 1 ), - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF TASK1" ); - - RTEMS.TASK_START( - TMTEST.TASK_ID( 1 ), - TMTEST.TASK_1'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF TASK1" ); - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'T', 'I', 'M', '2' ), - 129, - 2048, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TMTEST.TASK_ID( 2 ), - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF TASK2" ); - - RTEMS.TASK_START( - TMTEST.TASK_ID( 2 ), - TMTEST.TASK_2'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF TASK2" ); - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- TASK_1 --- - - procedure TASK_1 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - BUFFER_COUNT : RTEMS.UNSIGNED32; - INDEX : RTEMS.UNSIGNED32; - PREVIOUS_MODE : RTEMS.MODE; - PREVIOUS_PRIORITY : RTEMS.TASK_PRIORITY; - RETURN_VALUE : RTEMS.UNSIGNED32; - OVERHEAD : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - TMTEST.PARTITION_NAME := RTEMS.BUILD_NAME( 'P', 'A', 'R', 'T' ); - - TIMER_DRIVER.INITIALIZE; - - RTEMS.PARTITION_CREATE( - TMTEST.PARTITION_NAME, - TMTEST.PARTITION_AREA'ADDRESS, - 2048, - 128, - RTEMS.DEFAULT_ATTRIBUTES, - TMTEST.PARTITION_ID, - STATUS - ); - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "PARTITION_CREATE", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.PARTITION_CREATE - ); - - TMTEST.REGION_NAME := RTEMS.BUILD_NAME( 'R', 'E', 'G', 'N' ); - - TIMER_DRIVER.INITIALIZE; - - RTEMS.REGION_CREATE( - TMTEST.REGION_NAME, - TMTEST.REGION_AREA'ADDRESS, - 2048, - 16, - RTEMS.DEFAULT_ATTRIBUTES, - TMTEST.REGION_ID, - STATUS - ); - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "REGION_CREATE", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.REGION_CREATE - ); - - TIMER_DRIVER.INITIALIZE; - RTEMS.PARTITION_GET_BUFFER( - TMTEST.PARTITION_ID, - TMTEST.BUFFER_ADDRESS_1, - STATUS - ); - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "PARTITION_GET_BUFFER (available)", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.PARTITION_GET_BUFFER - ); - - BUFFER_COUNT := 0; - loop - - RTEMS.PARTITION_GET_BUFFER( - TMTEST.PARTITION_ID, - TMTEST.BUFFER_ADDRESSES( BUFFER_COUNT ), - STATUS - ); - - exit when RTEMS.ARE_STATUSES_EQUAL( STATUS, RTEMS.UNSATISFIED ); - - BUFFER_COUNT := BUFFER_COUNT + 1; - - end loop; - - TIMER_DRIVER.INITIALIZE; - RTEMS.PARTITION_GET_BUFFER( - TMTEST.PARTITION_ID, - TMTEST.BUFFER_ADDRESS_2, - STATUS - ); - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "PARTITION_GET_BUFFER (not available)", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.PARTITION_GET_BUFFER - ); - - TIMER_DRIVER.INITIALIZE; - RTEMS.PARTITION_RETURN_BUFFER( - TMTEST.PARTITION_ID, - TMTEST.BUFFER_ADDRESS_1, - STATUS - ); - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "PARTITION_RETURN_BUFFER", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.PARTITION_RETURN_BUFFER - ); - - for INDEX in 0 .. BUFFER_COUNT - 1 - loop - - RTEMS.PARTITION_RETURN_BUFFER( - TMTEST.PARTITION_ID, - TMTEST.BUFFER_ADDRESSES( INDEX ), - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "PARTITION_RETURN_BUFFER" ); - - end loop; - - TIMER_DRIVER.INITIALIZE; - RTEMS.PARTITION_DELETE( TMTEST.PARTITION_ID, STATUS ); - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "PARTITION_DELETE", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.PARTITION_DELETE - ); - - RTEMS.REGION_GET_SEGMENT( - TMTEST.REGION_ID, - 400, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - TMTEST.BUFFER_ADDRESS_2, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "REGION_GET_SEGMENT" ); - - TIMER_DRIVER.INITIALIZE; - RTEMS.REGION_GET_SEGMENT( - TMTEST.REGION_ID, - 400, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - TMTEST.BUFFER_ADDRESS_3, - STATUS - ); - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "REGION_GET_SEGMENT (available)", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.REGION_GET_SEGMENT - ); - - TIMER_DRIVER.INITIALIZE; - RTEMS.REGION_GET_SEGMENT( - TMTEST.REGION_ID, - 1998, - RTEMS.NO_WAIT, - RTEMS.NO_TIMEOUT, - TMTEST.BUFFER_ADDRESS_4, - STATUS - ); - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "REGION_GET_SEGMENT (NO_WAIT)", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.REGION_GET_SEGMENT - ); - - RTEMS.REGION_RETURN_SEGMENT( - TMTEST.REGION_ID, - TMTEST.BUFFER_ADDRESS_3, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "REGION_RETURN_SEGMENT" ); - - TIMER_DRIVER.INITIALIZE; - RTEMS.REGION_RETURN_SEGMENT( - TMTEST.REGION_ID, - TMTEST.BUFFER_ADDRESS_2, - STATUS - ); - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "REGION_RETURN_SEGMENT (no tasks waiting)", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.REGION_RETURN_SEGMENT - ); - - RTEMS.REGION_GET_SEGMENT( - TMTEST.REGION_ID, - 400, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - TMTEST.BUFFER_ADDRESS_1, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "REGION_GET_SEGMENT" ); - - TIMER_DRIVER.INITIALIZE; - RTEMS.REGION_GET_SEGMENT( - TMTEST.REGION_ID, - 1998, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - TMTEST.BUFFER_ADDRESS_2, - STATUS - ); - - -- execute TASK_2 - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "REGION_RETURN_SEGMENT (preempt)", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.REGION_RETURN_SEGMENT - ); - - RTEMS.REGION_RETURN_SEGMENT( - TMTEST.REGION_ID, - TMTEST.BUFFER_ADDRESS_2, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "REGION_RETURN_SEGMENT" ); - - RTEMS.TASK_MODE( - RTEMS.NO_PREEMPT, - RTEMS.PREEMPT_MASK, - PREVIOUS_MODE, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_MODE" ); - - RTEMS.TASK_SET_PRIORITY( RTEMS.SELF, 254, PREVIOUS_PRIORITY, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_SET_PRIORITY" ); - - RTEMS.REGION_GET_SEGMENT( - TMTEST.REGION_ID, - 400, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - TMTEST.BUFFER_ADDRESS_1, - STATUS - ); - - RTEMS.REGION_GET_SEGMENT( - TMTEST.REGION_ID, - 1998, - RTEMS.DEFAULT_OPTIONS, - RTEMS.NO_TIMEOUT, - TMTEST.BUFFER_ADDRESS_2, - STATUS - ); - - -- execute TASK_2 - - RTEMS.REGION_RETURN_SEGMENT( - TMTEST.REGION_ID, - TMTEST.BUFFER_ADDRESS_2, - STATUS - ); - - TIMER_DRIVER.INITIALIZE; - RTEMS.REGION_DELETE( TMTEST.REGION_ID, STATUS ); - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "REGION_DELETE", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.REGION_DELETE - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - TIMER_DRIVER.EMPTY_FUNCTION; - end loop; - OVERHEAD := TIMER_DRIVER.READ_TIMER; - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.IO_INITIALIZE( - 1, - 0, - RTEMS.NULL_ADDRESS, - RETURN_VALUE, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "IO_INITIALIZE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.IO_INITIALIZE - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.IO_OPEN( - 1, - 0, - RTEMS.NULL_ADDRESS, - RETURN_VALUE, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "IO_OPEN", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.IO_OPEN - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.IO_CLOSE( - 1, - 0, - RTEMS.NULL_ADDRESS, - RETURN_VALUE, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "IO_CLOSE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.IO_CLOSE - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.IO_READ( - 1, - 0, - RTEMS.NULL_ADDRESS, - RETURN_VALUE, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "IO_READ", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.IO_READ - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.IO_WRITE( - 1, - 0, - RTEMS.NULL_ADDRESS, - RETURN_VALUE, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "IO_WRITE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.IO_WRITE - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.IO_CONTROL( - 1, - 0, - RTEMS.NULL_ADDRESS, - RETURN_VALUE, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "IO_CONTROL", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.IO_CONTROL - ); - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end TASK_1; - ---PAGE --- --- TASK_2 --- - - procedure TASK_2 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "REGION_GET_SEGMENT (blocking)", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.REGION_GET_SEGMENT - ); - - TIMER_DRIVER.INITIALIZE; - RTEMS.REGION_RETURN_SEGMENT( - TMTEST.REGION_ID, - TMTEST.BUFFER_ADDRESS_1, - STATUS - ); - - -- preempt back to TASK_1 - - TIMER_DRIVER.INITIALIZE; - RTEMS.REGION_RETURN_SEGMENT( - TMTEST.REGION_ID, - TMTEST.BUFFER_ADDRESS_1, - STATUS - ); - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "REGION_RETURN_SEGMENT (ready -- return)", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.REGION_RETURN_SEGMENT - ); - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end TASK_2; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm20/tmtest.ads b/c/src/ada-tests/tmtests/tm20/tmtest.ads deleted file mode 100644 index cf1dfeaaa1..0000000000 --- a/c/src/ada-tests/tmtests/tm20/tmtest.ads +++ /dev/null @@ -1,151 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 20 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with TIME_TEST_SUPPORT; -with TIMER_DRIVER; -with RTEMS; - -package TMTEST is - --- --- These arrays contain the IDs and NAMEs of all RTEMS tasks created --- by this test. --- - - TASK_ID : array ( RTEMS.UNSIGNED32 range 1 .. 3 ) of RTEMS.ID; - TASK_NAME : array ( RTEMS.UNSIGNED32 range 1 .. 3 ) of RTEMS.NAME; - --- --- These following are the ID and NAME of the RTEMS partition created --- by this test. --- - - PARTITION_ID : RTEMS.ID; - PARTITION_NAME : RTEMS.NAME; - --- --- These following are the ID and NAME of the RTEMS region created --- by this test. --- - - REGION_ID : RTEMS.ID; - REGION_NAME : RTEMS.NAME; - --- --- The following area defines a memory area to be used as the --- memory space for a partition. --- - - PARTITION_AREA : array ( RTEMS.UNSIGNED32 range 0 .. 2047 ) - of RTEMS.UNSIGNED8; - for PARTITION_AREA'ALIGNMENT use RTEMS.STRUCTURE_ALIGNMENT; - --- --- The following area defines a memory area to be used as the --- memory space for a region. --- - - REGION_AREA : array ( RTEMS.UNSIGNED32 range 0 .. 2047 ) - of RTEMS.UNSIGNED8; - - for REGION_AREA'ALIGNMENT use RTEMS.STRUCTURE_ALIGNMENT; - --- --- The following are the buffers allocated from the region. --- - - BUFFER_ADDRESS_1 : RTEMS.ADDRESS; - BUFFER_ADDRESS_2 : RTEMS.ADDRESS; - BUFFER_ADDRESS_3 : RTEMS.ADDRESS; - BUFFER_ADDRESS_4 : RTEMS.ADDRESS; - - BUFFER_ADDRESSES : array ( RTEMS.UNSIGNED32 - range 0 .. TIME_TEST_SUPPORT.OPERATION_COUNT ) of RTEMS.ADDRESS; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TASK_1 --- --- DESCRIPTION: --- --- This RTEMS task is responsible for measuring and reporting --- the following execution times: --- --- + PARTITION_CREATE --- + REGION_CREATE --- + PARTITION_GET_BUFFER with a buffer available --- + PARTITION_GET_BUFFER with no buffers available --- + PARTITION_RETURN_BUFFER --- + PARTITION_DELETE --- + REGION_GET_SEGMENT with a segment available --- + REGION_GET_SEGMENT with the NO_WAIT option --- + REGION_RETURN_SEGMENT with no tasks waiting for memory --- + REGION_RETURN_SEGMENT preemptive --- + REGION_DELETE --- + IO_INITIALIZE --- + IO_OPEN --- + IO_CLOSE --- + IO_READ --- + IO_WRITE --- + IO_CONTROL --- - - procedure TASK_1 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TASK_2 --- --- DESCRIPTION: --- --- This RTEMS task is responsible for measuring and reporting --- the following execution times: --- --- + blocking REGION_GET_SEGMENT --- + REGION_RETURN_SEGMENT which readies a task --- - - procedure TASK_2 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm21/config.h b/c/src/ada-tests/tmtests/tm21/config.h deleted file mode 100644 index 43d589d0f0..0000000000 --- a/c/src/ada-tests/tmtests/tm21/config.h +++ /dev/null @@ -1,43 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 102 -#define CONFIGURE_MAXIMUM_TIMERS 100 -#define CONFIGURE_MAXIMUM_SEMAPHORES 100 -#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 100 -#define CONFIGURE_MAXIMUM_PARTITIONS 100 -#define CONFIGURE_MAXIMUM_REGIONS 100 -#define CONFIGURE_MAXIMUM_PORTS 100 -#define CONFIGURE_MAXIMUM_PERIODS 100 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm21/tm21.adb b/c/src/ada-tests/tmtests/tm21/tm21.adb deleted file mode 100644 index 05958d5ad5..0000000000 --- a/c/src/ada-tests/tmtests/tm21/tm21.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM21 of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM21 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM21; - diff --git a/c/src/ada-tests/tmtests/tm21/tmtest.adb b/c/src/ada-tests/tmtests/tm21/tmtest.adb deleted file mode 100644 index 51ea93cc8b..0000000000 --- a/c/src/ada-tests/tmtests/tm21/tmtest.adb +++ /dev/null @@ -1,302 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 21 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERFACES; use INTERFACES; -with RTEMS; -with RTEMS_CALLING_OVERHEAD; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 21 ***" ); - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'T', 'I', 'M', 'E' ), - 250, - 2048, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE TASK_1" ); - - RTEMS.TASK_START( ID, TMTEST.TASK_1'ACCESS, 0, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START TASK1" ); - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- TASK_1 --- - - procedure TASK_1 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - INDEX : RTEMS.UNSIGNED32; - ID : RTEMS.ID; - OVERHEAD : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - - RTEMS.TASK_CREATE( - INDEX, - 254, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE" ); - - RTEMS.MESSAGE_QUEUE_CREATE( - INDEX, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 16, - RTEMS.DEFAULT_ATTRIBUTES, - ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "MESSAGE_QUEUE_CREATE" ); - - RTEMS.SEMAPHORE_CREATE( - INDEX, - TIME_TEST_SUPPORT.OPERATION_COUNT, - RTEMS.DEFAULT_ATTRIBUTES, - RTEMS.NO_PRIORITY, - ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "SEMAPHORE_CREATE" ); - - RTEMS.REGION_CREATE( - INDEX, - TMTEST.REGION_AREA'ADDRESS, - 2048, - 16, - RTEMS.DEFAULT_ATTRIBUTES, - ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "REGION_CREATE" ); - - RTEMS.PARTITION_CREATE( - INDEX, - TMTEST.PARTITION_AREA'ADDRESS, - 2048, - 128, - RTEMS.DEFAULT_ATTRIBUTES, - ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "PARTITION_CREATE" ); - - RTEMS.PORT_CREATE( - INDEX, - TMTEST.INTERNAL_PORT_AREA'ADDRESS, - TMTEST.EXTERNAL_PORT_AREA'ADDRESS, - 16#FF#, - ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "PORT_CREATE" ); - - RTEMS.TIMER_CREATE( INDEX, ID, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TIMER_CREATE" ); - - RTEMS.RATE_MONOTONIC_CREATE( INDEX, ID, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "RATE_MONOTONIC_CREATE" ); - - end loop; - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - TIMER_DRIVER.EMPTY_FUNCTION; - end loop; - OVERHEAD := TIMER_DRIVER.READ_TIMER; - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TASK_IDENT( INDEX, RTEMS.SEARCH_ALL_NODES, ID, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_IDENT", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.TASK_IDENT - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.MESSAGE_QUEUE_IDENT( - INDEX, - RTEMS.SEARCH_ALL_NODES, - ID, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "MESSAGE_QUEUE_IDENT", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.MESSAGE_QUEUE_IDENT - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.SEMAPHORE_IDENT( - INDEX, - RTEMS.SEARCH_ALL_NODES, - ID, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "SEMAPHORE_IDENT", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.SEMAPHORE_IDENT - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.PARTITION_IDENT( - INDEX, - RTEMS.SEARCH_ALL_NODES, - ID, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "PARTITION_IDENT", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.PARTITION_IDENT - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.REGION_IDENT( INDEX, ID, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "REGION_IDENT", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.REGION_IDENT - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.PORT_IDENT( INDEX, ID, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "PORT_IDENT", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.PORT_IDENT - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TIMER_IDENT( INDEX, ID, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TIMER_IDENT", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.TIMER_IDENT - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.RATE_MONOTONIC_IDENT( INDEX, ID, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "RATE_MONOTONIC_IDENT", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.RATE_MONOTONIC_IDENT - ); - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end TASK_1; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm21/tmtest.ads b/c/src/ada-tests/tmtests/tm21/tmtest.ads deleted file mode 100644 index 36d687256f..0000000000 --- a/c/src/ada-tests/tmtests/tm21/tmtest.ads +++ /dev/null @@ -1,122 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 21 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with SYSTEM; -with TIMER_DRIVER; -with System.Storage_Elements; - -package TMTEST is - --- --- These arrays contain the IDs and NAMEs of all RTEMS tasks created --- by this test. --- - - TASK_ID : array ( RTEMS.UNSIGNED32 range 1 .. 3 ) of RTEMS.ID; - TASK_NAME : array ( RTEMS.UNSIGNED32 range 1 .. 3 ) of RTEMS.NAME; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- The following area defines a memory area to be used as the --- internal address space of the port. --- - - INTERNAL_PORT_AREA_ADDRESS : constant System.Address := - System.Storage_Elements.To_Address(16#00001000#); - - INTERNAL_PORT_AREA : array ( RTEMS.UNSIGNED32 range 0 .. 255 ) - of RTEMS.UNSIGNED8; - for INTERNAL_PORT_AREA use at INTERNAL_PORT_AREA_ADDRESS; - --- --- The following area defines a memory area to be used as the --- external address space of the port. --- - - EXTERNAL_PORT_AREA_ADDRESS : constant System.Address := - System.Storage_Elements.To_Address(16#00002000#); - - EXTERNAL_PORT_AREA : array ( RTEMS.UNSIGNED32 range 0 .. 255 ) - of RTEMS.UNSIGNED8; - for EXTERNAL_PORT_AREA use at EXTERNAL_PORT_AREA_ADDRESS; - --- --- The following area defines a memory area to be used as the --- memory space for a partition. --- - - PARTITION_AREA : array ( RTEMS.UNSIGNED32 range 0 .. 2047 ) - of RTEMS.UNSIGNED8; - for PARTITION_AREA'ALIGNMENT use RTEMS.STRUCTURE_ALIGNMENT; - --- --- These following are the ID and NAME of the RTEMS region created --- by this test. --- - - REGION_AREA : array ( RTEMS.UNSIGNED32 range 0 .. 2047 ) - of RTEMS.UNSIGNED8; - for REGION_AREA'ALIGNMENT use RTEMS.STRUCTURE_ALIGNMENT; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TASK_1 --- --- DESCRIPTION: --- --- This RTEMS task is responsible for measuring and reporting the --- following directive execution times: --- --- + TASK_IDENT --- + MESSAGE_QUEUE_IDENT --- + SEMAPHORE_IDENT --- + PARTITION_IDENT --- + REGION_IDENT --- + PORT_IDENT --- + TIMER_IDENT --- + RATE_MONOTONIC_IDENT --- - - procedure TASK_1 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm22/config.h b/c/src/ada-tests/tmtests/tm22/config.h deleted file mode 100644 index a9d518d83e..0000000000 --- a/c/src/ada-tests/tmtests/tm22/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 103 -#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 1 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm22/tm22.adb b/c/src/ada-tests/tmtests/tm22/tm22.adb deleted file mode 100644 index 037168ddcf..0000000000 --- a/c/src/ada-tests/tmtests/tm22/tm22.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM22 of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM22 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM22; - diff --git a/c/src/ada-tests/tmtests/tm22/tmtest.adb b/c/src/ada-tests/tmtests/tm22/tmtest.adb deleted file mode 100644 index d1a2c3cf29..0000000000 --- a/c/src/ada-tests/tmtests/tm22/tmtest.adb +++ /dev/null @@ -1,256 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 22 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERFACES; use INTERFACES; -with RTEMS; -with RTEMS_CALLING_OVERHEAD; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 22 ***" ); - - RTEMS.MESSAGE_QUEUE_CREATE( - RTEMS.BUILD_NAME( 'M', 'Q', '1', ' ' ), - 100, - 16, - RTEMS.DEFAULT_ATTRIBUTES, - TMTEST.MESSAGE_QUEUE_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "MESSAGE_QUEUE_CREATE" ); - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'L', 'O', 'W', ' ' ), - 10, - 2048, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE LOW" ); - - RTEMS.TASK_START( ID, TMTEST.LOW_TASK'ACCESS, 0, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START LOW" ); - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'P', 'R', 'M', 'T' ), - 11, - 2048, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE PREEMPT" ); - - RTEMS.TASK_START( ID, TMTEST.PREEMPT_TASK'ACCESS, 0, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START PREEMPT" ); - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- HIGH_TASK --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - BUFFER : TMTEST.BUFFER; - BUFFER_POINTER : RTEMS.ADDRESS; - COUNT : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - BUFFER_POINTER := BUFFER'ADDRESS; - - TIMER_DRIVER.INITIALIZE; - RTEMS.MESSAGE_QUEUE_BROADCAST( - TMTEST.MESSAGE_QUEUE_ID, - BUFFER_POINTER, - 16, - COUNT, - STATUS - ); - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "MESSAGE_QUEUE_BROADCAST (readying)", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.MESSAGE_QUEUE_BROADCAST - ); - - RTEMS.TASK_SUSPEND( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_SUSPEND" ); - - end HIGH_TASK; - ---PAGE --- --- LOW_TASK --- - - procedure LOW_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - ID : RTEMS.ID; - BUFFER : TMTEST.BUFFER; - BUFFER_POINTER : RTEMS.ADDRESS; - INDEX : RTEMS.UNSIGNED32; - OVERHEAD : RTEMS.UNSIGNED32; - COUNT : RTEMS.UNSIGNED32; - MESSAGE_SIZE : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - BUFFER_POINTER := BUFFER'ADDRESS; - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'H', 'I', 'G', 'H' ), - 5, - 2048, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE HIGH" ); - - RTEMS.TASK_START( ID, TMTEST.HIGH_TASK'ACCESS, 0, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START HIGH" ); - - RTEMS.MESSAGE_QUEUE_RECEIVE( - TMTEST.MESSAGE_QUEUE_ID, - BUFFER_POINTER, - RTEMS.DEFAULT_MODES, - RTEMS.NO_TIMEOUT, - MESSAGE_SIZE, - STATUS - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - TIMER_DRIVER.EMPTY_FUNCTION; - end loop; - OVERHEAD := TIMER_DRIVER.READ_TIMER; - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.MESSAGE_QUEUE_BROADCAST( - TMTEST.MESSAGE_QUEUE_ID, - BUFFER_POINTER, - 16, - COUNT, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "MESSAGE_QUEUE_BROADCAST (no waiting tasks)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.MESSAGE_QUEUE_BROADCAST - ); - - RTEMS.MESSAGE_QUEUE_RECEIVE( - TMTEST.MESSAGE_QUEUE_ID, - BUFFER_POINTER, - RTEMS.DEFAULT_MODES, - RTEMS.NO_TIMEOUT, - MESSAGE_SIZE, - STATUS - ); - - -- should go to PREEMPT_TASK here - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "MESSAGE_QUEUE_BROADCAST (preempt)", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.MESSAGE_QUEUE_BROADCAST - ); - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end LOW_TASK; - ---PAGE --- --- LOW_TASK --- - - procedure PREEMPT_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - BUFFER : TMTEST.BUFFER; - BUFFER_POINTER : RTEMS.ADDRESS; - COUNT : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - BUFFER_POINTER := BUFFER'ADDRESS; - - TIMER_DRIVER.INITIALIZE; - RTEMS.MESSAGE_QUEUE_BROADCAST( - TMTEST.MESSAGE_QUEUE_ID, - BUFFER_POINTER, - 16, - COUNT, - STATUS - ); - - -- should be preempted by LOW_TASK - - end PREEMPT_TASK; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm22/tmtest.ads b/c/src/ada-tests/tmtests/tm22/tmtest.ads deleted file mode 100644 index 43270fcf65..0000000000 --- a/c/src/ada-tests/tmtests/tm22/tmtest.ads +++ /dev/null @@ -1,119 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 22 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with TIMER_DRIVER; -with RTEMS; - -package TMTEST is - --- --- Buffer Record similar to that used by RTEMS 3.2.1. Using this --- avoids changes to the test. --- - - type BUFFER is - record - FIELD1 : RTEMS.UNSIGNED32; -- TEMPORARY UNTIL VARIABLE LENGTH - FIELD2 : RTEMS.UNSIGNED32; - FIELD3 : RTEMS.UNSIGNED32; - FIELD4 : RTEMS.UNSIGNED32; - end record; - --- --- The following is the ID of the message queue used for timing operations. --- - - MESSAGE_QUEUE_ID : RTEMS.ID; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- HIGH_TASK --- --- DESCRIPTION: --- --- This RTEMS task is created by LOW_TASK and executes after --- LOW_TASK has performed a blocking MESSAGE_QUEUE_RECEIVE. --- This task then executes and performs a readying --- MESSAGE_QUEUE_BROADCAST and reports its execution time. --- Finally, the task suspends itself so LOW_TASK can continue --- execution. --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- LOW_TASK --- --- DESCRIPTION: --- --- This RTEMS task performs a blocking MESSAGE_QUEUE_RECEIVE --- so that when HIGH_TASK performs a MESSAGE_QUEUE_BROADCAST, --- there will be a task to be readied. Following this, the --- execution time for a MESSAGE_QUEUE_BROADCAST to a message --- queue with no waiting tasks is measured and reported. --- Then this task performs another blocking MESSAGE_QUEUE_RECEIVE --- so that when PREEMPT_TASK performs a MESSAGE_QUEUE_BROADCAST, --- PREEMPT_TASK will be preempted by this task. After control --- of the processor is transferred back to this task by the --- preemption, the timer is stopped and the execution time of --- a preemptive MESSAGE_QUEUE_BROADCAST is reported. --- - - procedure LOW_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- PREEMPT_TASK --- --- DESCRIPTION: --- --- This RTEMS task starts the timer and performs a preemptive --- MESSAGE_QUEUE_BROADCAST. --- - - procedure PREEMPT_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm23/config.h b/c/src/ada-tests/tmtests/tm23/config.h deleted file mode 100644 index 5e53478121..0000000000 --- a/c/src/ada-tests/tmtests/tm23/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 111 -#define CONFIGURE_MAXIMUM_TIMERS 110 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm23/tm23.adb b/c/src/ada-tests/tmtests/tm23/tm23.adb deleted file mode 100644 index b6855a86e1..0000000000 --- a/c/src/ada-tests/tmtests/tm23/tm23.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM23 of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM23 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM23; - diff --git a/c/src/ada-tests/tmtests/tm23/tmtest.adb b/c/src/ada-tests/tmtests/tm23/tmtest.adb deleted file mode 100644 index bb9dabe3be..0000000000 --- a/c/src/ada-tests/tmtests/tm23/tmtest.adb +++ /dev/null @@ -1,399 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 23 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERFACES; use INTERFACES; -with RTEMS; -with RTEMS_CALLING_OVERHEAD; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - OVERHEAD : RTEMS.UNSIGNED32; - TASK_PRIORITY : RTEMS.TASK_PRIORITY; - INDEX : RTEMS.UNSIGNED32; - ID : RTEMS.ID; - TASK_ENTRY : RTEMS.TASK_ENTRY; - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 23 ***" ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - TIMER_DRIVER.EMPTY_FUNCTION; - end loop; - OVERHEAD := TIMER_DRIVER.READ_TIMER; - - TASK_PRIORITY := 5; - - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'T', 'I', 'M', 'E' ), - TASK_PRIORITY, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE LOOP" ); - - if INDEX = 1 then - TASK_ENTRY := TMTEST.HIGH_TASK'ACCESS; - elsif INDEX = TIME_TEST_SUPPORT.OPERATION_COUNT then - TASK_ENTRY := TMTEST.LOW_TASK'ACCESS; - else - TASK_ENTRY := TMTEST.MIDDLE_TASKS'ACCESS; - end if; - - RTEMS.TASK_START( ID, TASK_ENTRY, 0, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START LOOP" ); - - TASK_PRIORITY := TASK_PRIORITY + 1; - - end loop; - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- NULL_DELAY --- - - procedure NULL_DELAY ( - IGNORED_ID : in RTEMS.ID; - IGNORED_ADDRESS : in RTEMS.ADDRESS - ) is - begin - - NULL; - - end NULL_DELAY; - ---PAGE --- --- HIGH_TASK --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - INDEX : RTEMS.TASK_PRIORITY; - OVERHEAD : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - TIMER_DRIVER.EMPTY_FUNCTION; - end loop; - OVERHEAD := TIMER_DRIVER.READ_TIMER; - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TIMER_CREATE( - INDEX, - TMTEST.TIMER_ID( INDEX ), - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TIMER_CREATE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.TIMER_CREATE - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TIMER_FIRE_AFTER( - TMTEST.TIMER_ID( INDEX ), - 500, - TMTEST.NULL_DELAY'ACCESS, - RTEMS.NULL_ADDRESS, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TIMER_FIRE_AFTER (inactive)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.TIMER_FIRE_AFTER - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TIMER_FIRE_AFTER( - TMTEST.TIMER_ID( INDEX ), - 500, - TMTEST.NULL_DELAY'ACCESS, - RTEMS.NULL_ADDRESS, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TIMER_FIRE_AFTER (active)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.TIMER_FIRE_AFTER - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TIMER_CANCEL( TMTEST.TIMER_ID( INDEX ), STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TIMER_CANCEL (active)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.TIMER_CANCEL - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TIMER_CANCEL( TMTEST.TIMER_ID( INDEX ), STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TIMER_CANCEL (inactive)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.TIMER_CANCEL - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TIMER_RESET( TMTEST.TIMER_ID( INDEX ), STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TIMER_RESET (inactive)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.TIMER_RESET - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TIMER_RESET( TMTEST.TIMER_ID( INDEX ), STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TIMER_RESET (active)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.TIMER_RESET - ); - - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TIMER_CANCEL( TMTEST.TIMER_ID( INDEX ), STATUS ); - end loop; - - TMTEST.TIME_OF_DAY := ( 1988, 12, 31, 9, 0, 0, 0 ); - - RTEMS.CLOCK_SET( TMTEST.TIME_OF_DAY, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "CLOCK_SET" ); - - TMTEST.TIME_OF_DAY.YEAR := 1989; - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TIMER_FIRE_WHEN( - TMTEST.TIMER_ID( INDEX ), - TMTEST.TIME_OF_DAY, - TMTEST.NULL_DELAY'ACCESS, - RTEMS.NULL_ADDRESS, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TIMER_FIRE_WHEN (inactive)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.TIMER_FIRE_WHEN - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TIMER_FIRE_WHEN( - TMTEST.TIMER_ID( INDEX ), - TMTEST.TIME_OF_DAY, - TMTEST.NULL_DELAY'ACCESS, - RTEMS.NULL_ADDRESS, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TIMER_FIRE_WHEN (active)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.TIMER_FIRE_WHEN - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TIMER_DELETE( TMTEST.TIMER_ID( INDEX ), STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TIMER_DELETE (active)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.TIMER_DELETE - ); - - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TIMER_CREATE( INDEX, TMTEST.TIMER_ID( INDEX ), STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TIMER_CREATE" ); - - RTEMS.TIMER_FIRE_AFTER( - TMTEST.TIMER_ID( INDEX ), - 500, - TMTEST.NULL_DELAY'ACCESS, - RTEMS.NULL_ADDRESS, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TIMER_FIRE_AFTER" ); - - RTEMS.TIMER_CANCEL( TMTEST.TIMER_ID( INDEX ), STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TIMER_CANCEL" ); - - end loop; - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TIMER_DELETE( TMTEST.TIMER_ID( INDEX ), STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TIMER_DELETE (inactive)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.TIMER_DELETE - ); - - TIMER_DRIVER.INITIALIZE; - RTEMS.TASK_WAKE_WHEN( TMTEST.TIME_OF_DAY, STATUS ); - - end HIGH_TASK; - ---PAGE --- --- MIDDLE_TASKS --- - - procedure MIDDLE_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - RTEMS.TASK_WAKE_WHEN( TMTEST.TIME_OF_DAY, STATUS ); - - end MIDDLE_TASKS; - ---PAGE --- --- LOW_TASK --- - - procedure LOW_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - begin - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_WAKE_WHEN", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.TASK_WAKE_WHEN - ); - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end LOW_TASK; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm23/tmtest.ads b/c/src/ada-tests/tmtests/tm23/tmtest.ads deleted file mode 100644 index 9f713ae073..0000000000 --- a/c/src/ada-tests/tmtests/tm23/tmtest.ads +++ /dev/null @@ -1,130 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 23 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with TIMER_DRIVER; -with TIME_TEST_SUPPORT; -with RTEMS; - -package TMTEST is - --- --- This array contains the IDs of all RTEMS timers created by this test. --- - - TIMER_ID : array ( RTEMS.UNSIGNED32 - range 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT ) of RTEMS.ID; - --- --- This data item contains a time of day used by all of the --- "WHEN" directives timed in this test. --- - - TIME_OF_DAY : RTEMS.TIME_OF_DAY; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- NULL_DELAY --- --- DESCRIPTION: --- --- This subprogram is a timer service routine. It performs --- no actions. --- - - procedure NULL_DELAY ( - IGNORED_ID : in RTEMS.ID; - IGNORED_ADDRESS : in RTEMS.ADDRESS - ); - --- --- HIGH_TASK --- --- DESCRIPTION: --- --- This RTEMS task is responsible for measuring and reporting --- the following directive execution times: --- --- + TIMER_CREATE --- + TIMER_FIRE_AFTER with an inactive timer --- + TIMER_FIRE_AFTER with an active timer --- + TIMER_CANCEL of an active timer --- + TIMER_CANCEL of an inactive timer --- + TIMER_RESET of an active timer --- + TIMER_RESET of an inactive timer --- + TIMER_FIRE_WHEN of an inactive timer --- + TIMER_FIRE_WHEN of an active timer --- + TIMER_DELETE of an active timer --- + TIMER_DELETE of an inactive timer --- --- After measuring and reporting the above times, this task starts --- the timer and executes the TASK_WAKE_WHEN directive. --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- MIDDLE_TASKS --- --- DESCRIPTION: --- --- These RTEMS tasks executes the TASK_WAKE_WHEN directive. --- - - procedure MIDDLE_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- MIDDLE_TASKS --- --- DESCRIPTION: --- --- This RTEMS task stops the timer and reports the execution time for --- the TASK_WAKE_WHEN directive. --- - - procedure LOW_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm24/config.h b/c/src/ada-tests/tmtests/tm24/config.h deleted file mode 100644 index 7e7793cf15..0000000000 --- a/c/src/ada-tests/tmtests/tm24/config.h +++ /dev/null @@ -1,36 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 111 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm24/tm24.adb b/c/src/ada-tests/tmtests/tm24/tm24.adb deleted file mode 100644 index 03873ba82c..0000000000 --- a/c/src/ada-tests/tmtests/tm24/tm24.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM24 of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM24 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM24; - diff --git a/c/src/ada-tests/tmtests/tm24/tmtest.adb b/c/src/ada-tests/tmtests/tm24/tmtest.adb deleted file mode 100644 index e8af0ca6ea..0000000000 --- a/c/src/ada-tests/tmtests/tm24/tmtest.adb +++ /dev/null @@ -1,165 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 24 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERFACES; use INTERFACES; -with RTEMS; -with RTEMS_CALLING_OVERHEAD; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - ID : RTEMS.ID; - INDEX : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 24 ***" ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - TIMER_DRIVER.EMPTY_FUNCTION; - end loop; - TMTEST.OVERHEAD := TIMER_DRIVER.READ_TIMER; - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'H', 'I', 'G', 'H' ), - 10, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE HIGH" ); - - RTEMS.TASK_START( ID, TMTEST.HIGH_TASK'ACCESS, 0, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START HIGH" ); - - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'R', 'E', 'S', 'T' ), - 128, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE LOOP" ); - - RTEMS.TASK_START( ID, TMTEST.TASKS'ACCESS, 0, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START LOOP" ); - - end loop; - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- HIGH_TASK --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - INDEX : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.TASK_WAKE_AFTER( RTEMS.YIELD_PROCESSOR, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_WAKE_AFTER (no context switch)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - TMTEST.OVERHEAD, - RTEMS_CALLING_OVERHEAD.TASK_WAKE_AFTER - ); - - TMTEST.TASK_COUNT := 0; - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end HIGH_TASK; - ---PAGE --- --- TASKS --- - - procedure TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - TMTEST.TASK_COUNT := TMTEST.TASK_COUNT + 1; - - if TMTEST.TASK_COUNT = 1 then - - TIMER_DRIVER.INITIALIZE; - - elsif TMTEST.TASK_COUNT = TIME_TEST_SUPPORT.OPERATION_COUNT then - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_WAKE_AFTER (context switch)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - TMTEST.OVERHEAD, - RTEMS_CALLING_OVERHEAD.TASK_WAKE_AFTER - ); - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end if; - - RTEMS.TASK_WAKE_AFTER( RTEMS.YIELD_PROCESSOR, STATUS ); - - end TASKS; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm24/tmtest.ads b/c/src/ada-tests/tmtests/tm24/tmtest.ads deleted file mode 100644 index df90eddb91..0000000000 --- a/c/src/ada-tests/tmtests/tm24/tmtest.ads +++ /dev/null @@ -1,99 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 24 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with TIMER_DRIVER; -with RTEMS; - -package TMTEST is - --- --- These arrays contain the IDs and NAMEs of all RTEMS tasks created --- by this test. --- - - TASK_ID : array ( RTEMS.UNSIGNED32 range 1 .. 3 ) of RTEMS.ID; - TASK_NAME : array ( RTEMS.UNSIGNED32 range 1 .. 3 ) of RTEMS.NAME; - --- --- This variable is used to determine which task should --- start the timer and which task should stop the timer --- and report the execution time. --- - - TASK_COUNT : RTEMS.UNSIGNED32; - --- --- This variable contains the execution time required of the --- loop used to execute the directive. --- - - OVERHEAD : RTEMS.UNSIGNED32; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- HIGH_TASK --- --- DESCRIPTION: --- --- This RTEMS task is responsible for measuring and reporting the --- execution time for an invocation of TASK_WAKE_AFTER which --- attempts to yield but does not result in a context switch. --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TASKS --- --- DESCRIPTION: --- --- These RTEMS tasks are responsible for measuring and reporting the --- execution time for an invocation of TASK_WAKE_AFTER which --- attempts to yield but does result in a context switch. --- - - procedure TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm25/config.h b/c/src/ada-tests/tmtests/tm25/config.h deleted file mode 100644 index e58f7c9923..0000000000 --- a/c/src/ada-tests/tmtests/tm25/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 111 -#define CONFIGURE_MAXIMUM_SEMAPHORES 1 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm25/tm25.adb b/c/src/ada-tests/tmtests/tm25/tm25.adb deleted file mode 100644 index c3099ab193..0000000000 --- a/c/src/ada-tests/tmtests/tm25/tm25.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM25 of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM25 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM25; - diff --git a/c/src/ada-tests/tmtests/tm25/tmtest.adb b/c/src/ada-tests/tmtests/tm25/tmtest.adb deleted file mode 100644 index 080129028e..0000000000 --- a/c/src/ada-tests/tmtests/tm25/tmtest.adb +++ /dev/null @@ -1,157 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 25 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERFACES; use INTERFACES; -with RTEMS; -with RTEMS_CALLING_OVERHEAD; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - INDEX : RTEMS.UNSIGNED32; - TASK_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 25 ***" ); - - RTEMS.SEMAPHORE_CREATE( - RTEMS.BUILD_NAME( 'S', 'M', '1', ' ' ), - 0, - RTEMS.DEFAULT_ATTRIBUTES, - RTEMS.NO_PRIORITY, - TMTEST.SEMAPHORE_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "SEMAPHORE_CREATE OF SM1" ); - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'L', 'O', 'W', ' ' ), - 254, - 2048, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TASK_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE LOW" ); - - RTEMS.TASK_START( - TASK_ID, - TMTEST.LOW_TASK'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START LOW" ); - - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'T', 'I', 'M', 'E' ), - 128, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TASK_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE LOOP" ); - - RTEMS.TASK_START( - TASK_ID, - TMTEST.HIGH_TASKS'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START LOOP" ); - - end loop; - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- HIGH_TASKS --- - - procedure HIGH_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - RTEMS.SEMAPHORE_OBTAIN( - TMTEST.SEMAPHORE_ID, - RTEMS.DEFAULT_OPTIONS, - RTEMS.INTERVAL'LAST, - STATUS - ); - - end HIGH_TASKS; - ---PAGE --- --- LOW_TASK --- - - procedure LOW_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.CLOCK_TICK( STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "CLOCK_TICK", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - RTEMS_CALLING_OVERHEAD.CLOCK_TICK - ); - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end LOW_TASK; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm25/tmtest.ads b/c/src/ada-tests/tmtests/tm25/tmtest.ads deleted file mode 100644 index 069e7e17ee..0000000000 --- a/c/src/ada-tests/tmtests/tm25/tmtest.ads +++ /dev/null @@ -1,80 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 25 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with TIMER_DRIVER; -with RTEMS; - -package TMTEST is - --- --- The following is the ID of the semaphore used for timing operations. --- - - SEMAPHORE_ID : RTEMS.ID; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- HIGH_TASKS --- --- DESCRIPTION: --- --- These RTEMS tasks perform a blocking SEMAPHORE_OBTAIN which --- has an optional timeout. --- - - procedure HIGH_TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- LOW_TASK --- --- DESCRIPTION: --- --- This RTEMS task is responsible for measuring and reporting --- the execution time for the CLOCK_TICK directive. --- - - procedure LOW_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm26/README b/c/src/ada-tests/tmtests/tm26/README deleted file mode 100644 index c54eb82024..0000000000 --- a/c/src/ada-tests/tmtests/tm26/README +++ /dev/null @@ -1,6 +0,0 @@ -# -# $Id$ -# - -This test requires interfacing to internal RTEMS routines and -is probably not worth the effort to convert. diff --git a/c/src/ada-tests/tmtests/tm26/config.h b/c/src/ada-tests/tmtests/tm26/config.h deleted file mode 100644 index e58f7c9923..0000000000 --- a/c/src/ada-tests/tmtests/tm26/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 111 -#define CONFIGURE_MAXIMUM_SEMAPHORES 1 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm26/tm26.adb b/c/src/ada-tests/tmtests/tm26/tm26.adb deleted file mode 100644 index 8d4db0a3ed..0000000000 --- a/c/src/ada-tests/tmtests/tm26/tm26.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM26 of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM26 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM26; - diff --git a/c/src/ada-tests/tmtests/tm26/tmtest.adp b/c/src/ada-tests/tmtests/tm26/tmtest.adp deleted file mode 100644 index ddf0c39f7a..0000000000 --- a/c/src/ada-tests/tmtests/tm26/tmtest.adp +++ /dev/null @@ -1,650 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 26 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERFACES; use INTERFACES; -with RTEMS_CALLING_OVERHEAD; -with RTEMS; -with RTEMS_TEST_SUPPORT; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -include(../../support/fp.inc) - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - INDEX : RTEMS.UNSIGNED32; - TASK_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 26 ***" ); - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'F', 'P', '1', ' ' ), - 201, - 2048, - RTEMS.DEFAULT_MODES, - RTEMS.FLOATING_POINT, - TASK_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF FP1" ); - - RTEMS.TASK_START( - TASK_ID, - TMTEST.FLOATING_POINT_TASK_1'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF FP1" ); - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'F', 'P', '2', ' ' ), - 202, - 2048, - RTEMS.DEFAULT_MODES, - RTEMS.FLOATING_POINT, - TASK_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF FP2" ); - - RTEMS.TASK_START( - TASK_ID, - TMTEST.FLOATING_POINT_TASK_2'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF FP2" ); - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'L', 'O', 'W', ' ' ), - 200, - 2048, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TASK_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF LOW" ); - - RTEMS.TASK_START( - TASK_ID, - TMTEST.LOW_TASK'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF LOW" ); - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'M', 'I', 'D', ' ' ), - 128, - 2048, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TASK_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF MIDDLE" ); - - RTEMS.TASK_START( - TASK_ID, - TMTEST.MIDDLE_TASK'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF MIDDLE" ); - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'H', 'I', 'G', 'H' ), - 5, - 2048, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TASK_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF HIGH" ); - - RTEMS.TASK_START( - TASK_ID, - TMTEST.HIGH_TASK'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF HIGH" ); - - RTEMS.SEMAPHORE_CREATE( - RTEMS.BUILD_NAME( 'S', 'E', 'M', '1' ), - TIME_TEST_SUPPORT.OPERATION_COUNT, - RTEMS.DEFAULT_ATTRIBUTES, - TMTEST.SEMAPHORE_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "SEMAPHORE_CREATE" ); - - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'N', 'U', 'L', 'L' ), - 254, - 512, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TASK_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE LOOP" ); - - RTEMS.TASK_START( - TASK_ID, - TMTEST.NULL_TASK'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START LOOP" ); - - end loop; - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- NULL_TASK --- - - procedure NULL_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - begin - - NULL; - - end NULL_TASK; - ---PAGE --- --- HIGH_TASK --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - begin - - TIMER_DRIVER.INITIALIZE; - RTEMS_TEST_SUPPORT.THREAD_ENABLE_DISPATCH; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "THREAD_ENABLE_DISPATCH", - TMTEST.END_TIME, - 1, - 0, - 0 - ); - - TIMER_DRIVER.INITIALIZE; - RTEMS_TEST_SUPPORT.THREAD_SET_STATE( - RTEMS_TEST_SUPPORT.THREAD_EXECUTING, - RTEMS.SUSPENDED - ); - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "THREAD_SET_STATE", - TMTEST.END_TIME, - 1, - 0, - 0 - ); - - -- FORCE CONTEXT SWITCH - - RTEMS_TEST_SUPPORT.CONTEXT_SWITCH_NECESSARY := TRUE; - - TIMER_DRIVER.INITIALIZE; - RTEMS_TEST_SUPPORT.THREAD_DISPATCH; -- dispatches MIDDLE_TASK - - end HIGH_TASK; - ---PAGE --- --- MIDDLE_TASK --- - - procedure MIDDLE_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - begin - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "THREAD_DISPATCH (NO FP)", - TMTEST.END_TIME, - 1, - 0, - 0 - ); - - RTEMS_TEST_SUPPORT.THREAD_SET_STATE( - RTEMS_TEST_SUPPORT.THREAD_EXECUTING, - RTEMS.SUSPENDED - ); - - TMTEST.MIDDLE_TCB := RTEMS_TEST_SUPPORT.THREAD_EXECUTING; - - RTEMS_TEST_SUPPORT.THREAD_EXECUTING := - RTEMS_TEST_SUPPORT.THREAD_TO_CONTROL_POINTER( - RTEMS_TEST_SUPPORT.CHAIN_NODE_POINTER_TO_ADDRESS( - RTEMS_TEST_SUPPORT.THREAD_READY_CHAIN( 200 ).FIRST - ) - ); - - -- do NOT force context switch - - RTEMS_TEST_SUPPORT.CONTEXT_SWITCH_NECESSARY := FALSE; - - RTEMS_TEST_SUPPORT.THREAD_DISABLE_DISPATCH; - - TIMER_DRIVER.INITIALIZE; - RTEMS_TEST_SUPPORT.CONTEXT_SWITCH( - RTEMS_TEST_SUPPORT.CONTEXT_TO_CONTROL_POINTER( - TMTEST.MIDDLE_TCB.REGISTERS'ADDRESS - ), - RTEMS_TEST_SUPPORT.CONTEXT_TO_CONTROL_POINTER( - RTEMS_TEST_SUPPORT.THREAD_EXECUTING.REGISTERS'ADDRESS - ) - ); - - end MIDDLE_TASK; - ---PAGE --- --- LOW_TASK --- - - procedure LOW_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - EXECUTING : RTEMS.TCB_POINTER; - begin - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "CONTEXT_SWITCH (NO FP)", - TMTEST.END_TIME, - 1, - 0, - 0 - ); - - EXECUTING := RTEMS_TEST_SUPPORT.THREAD_EXECUTING; - - RTEMS_TEST_SUPPORT.THREAD_EXECUTING := - RTEMS_TEST_SUPPORT.THREAD_TO_CONTROL_POINTER( - RTEMS_TEST_SUPPORT.CHAIN_NODE_POINTER_TO_ADDRESS( - RTEMS_TEST_SUPPORT.THREAD_READY_CHAIN( 201 ).FIRST - ) - ); - - -- do NOT force context switch - - RTEMS_TEST_SUPPORT.CONTEXT_SWITCH_NECESSARY := FALSE; - - RTEMS_TEST_SUPPORT.THREAD_DISABLE_DISPATCH; - - TIMER_DRIVER.INITIALIZE; - - RTEMS_TEST_SUPPORT.CONTEXT_RESTORE_FP( - RTEMS_TEST_SUPPORT.THREAD_EXECUTING.FP_CONTEXT'ADDRESS - ); - RTEMS_TEST_SUPPORT.CONTEXT_SWITCH( - RTEMS_TEST_SUPPORT.CONTEXT_TO_CONTROL_POINTER( - EXECUTING.REGISTERS'ADDRESS - ), - RTEMS_TEST_SUPPORT.CONTEXT_TO_CONTROL_POINTER( - RTEMS_TEST_SUPPORT.THREAD_EXECUTING.REGISTERS'ADDRESS - ) - ); - - end LOW_TASK; - ---PAGE --- --- FLOATING_POINT_TASK_1 --- - - procedure FLOATING_POINT_TASK_1 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - EXECUTING : RTEMS.TCB_POINTER; - FP_DECLARE; - begin - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "CONTEXT_SWITCH (restore 1st FP)", - TMTEST.END_TIME, - 1, - 0, - 0 - ); - - EXECUTING := RTEMS_TEST_SUPPORT.THREAD_EXECUTING; - - RTEMS_TEST_SUPPORT.THREAD_EXECUTING := - RTEMS_TEST_SUPPORT.THREAD_TO_CONTROL_POINTER( - RTEMS_TEST_SUPPORT.CHAIN_NODE_POINTER_TO_ADDRESS( - RTEMS_TEST_SUPPORT.THREAD_READY_CHAIN( 202 ).FIRST - ) - ); - - -- do NOT force context switch - - RTEMS_TEST_SUPPORT.CONTEXT_SWITCH_NECESSARY := FALSE; - - RTEMS_TEST_SUPPORT.THREAD_DISABLE_DISPATCH; - - TIMER_DRIVER.INITIALIZE; - - RTEMS_TEST_SUPPORT.CONTEXT_SAVE_FP( EXECUTING.FP_CONTEXT'ADDRESS ); - RTEMS_TEST_SUPPORT.CONTEXT_RESTORE_FP( - RTEMS_TEST_SUPPORT.THREAD_EXECUTING.FP_CONTEXT'ADDRESS - ); - RTEMS_TEST_SUPPORT.CONTEXT_SWITCH( - RTEMS_TEST_SUPPORT.CONTEXT_TO_CONTROL_POINTER( - EXECUTING.REGISTERS'ADDRESS - ), - RTEMS_TEST_SUPPORT.CONTEXT_TO_CONTROL_POINTER( - RTEMS_TEST_SUPPORT.THREAD_EXECUTING.REGISTERS'ADDRESS - ) - ); - - -- switch to FLOATING_POINT_TASK_2 - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "CONTEXT_SWITCH (used->init FP)", - TMTEST.END_TIME, - 1, - 0, - 0 - ); - - FP_LOAD( 1.0 ); - - EXECUTING := RTEMS_TEST_SUPPORT.THREAD_EXECUTING; - - RTEMS_TEST_SUPPORT.THREAD_EXECUTING := - RTEMS_TEST_SUPPORT.THREAD_TO_CONTROL_POINTER( - RTEMS_TEST_SUPPORT.CHAIN_NODE_POINTER_TO_ADDRESS( - RTEMS_TEST_SUPPORT.THREAD_READY_CHAIN( 202 ).FIRST - ) - ); - - -- do NOT force context switch - - RTEMS_TEST_SUPPORT.CONTEXT_SWITCH_NECESSARY := FALSE; - - RTEMS_TEST_SUPPORT.THREAD_DISABLE_DISPATCH; - - TIMER_DRIVER.INITIALIZE; - - RTEMS_TEST_SUPPORT.CONTEXT_SAVE_FP( EXECUTING.FP_CONTEXT'ADDRESS ); - RTEMS_TEST_SUPPORT.CONTEXT_RESTORE_FP( - RTEMS_TEST_SUPPORT.THREAD_EXECUTING.FP_CONTEXT'ADDRESS - ); - RTEMS_TEST_SUPPORT.CONTEXT_SWITCH( - RTEMS_TEST_SUPPORT.CONTEXT_TO_CONTROL_POINTER( - EXECUTING.REGISTERS'ADDRESS - ), - RTEMS_TEST_SUPPORT.CONTEXT_TO_CONTROL_POINTER( - RTEMS_TEST_SUPPORT.THREAD_EXECUTING.REGISTERS'ADDRESS - ) - ); - - -- switch to FLOATING_POINT_TASK_2 - - end FLOATING_POINT_TASK_1; - ---PAGE --- --- FLOATING_POINT_TASK_2 --- - - procedure FLOATING_POINT_TASK_2 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - EXECUTING : RTEMS.TCB_POINTER; - FP_DECLARE; - begin - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "CONTEXT_SWITCH (init->init FP)", - TMTEST.END_TIME, - 1, - 0, - 0 - ); - - EXECUTING := RTEMS_TEST_SUPPORT.THREAD_EXECUTING; - - RTEMS_TEST_SUPPORT.THREAD_EXECUTING := - RTEMS_TEST_SUPPORT.THREAD_TO_CONTROL_POINTER( - RTEMS_TEST_SUPPORT.CHAIN_NODE_POINTER_TO_ADDRESS( - RTEMS_TEST_SUPPORT.THREAD_READY_CHAIN( 201 ).FIRST - ) - ); - - FP_LOAD( 1.0 ); - - -- do NOT force context switch - - RTEMS_TEST_SUPPORT.CONTEXT_SWITCH_NECESSARY := FALSE; - - RTEMS_TEST_SUPPORT.THREAD_DISABLE_DISPATCH; - - TIMER_DRIVER.INITIALIZE; - - RTEMS_TEST_SUPPORT.CONTEXT_SAVE_FP( EXECUTING.FP_CONTEXT'ADDRESS ); - RTEMS_TEST_SUPPORT.CONTEXT_RESTORE_FP( - RTEMS_TEST_SUPPORT.THREAD_EXECUTING.FP_CONTEXT'ADDRESS - ); - RTEMS_TEST_SUPPORT.CONTEXT_SWITCH( - RTEMS_TEST_SUPPORT.CONTEXT_TO_CONTROL_POINTER( - EXECUTING.REGISTERS'ADDRESS - ), - RTEMS_TEST_SUPPORT.CONTEXT_TO_CONTROL_POINTER( - RTEMS_TEST_SUPPORT.THREAD_EXECUTING.REGISTERS'ADDRESS - ) - ); - - -- switch to FLOATING_POINT_TASK_1 - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "CONTEXT_SWITCH (used->used FP)", - TMTEST.END_TIME, - 1, - 0, - 0 - ); - - TMTEST.COMPLETE_TEST; - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end FLOATING_POINT_TASK_2; - ---PAGE --- --- COMPLETE_TEST --- - - procedure COMPLETE_TEST - is - INDEX : RTEMS.UNSIGNED32; - OVERHEAD : RTEMS.UNSIGNED32; - TASK_ID : RTEMS.ID; - LOCATION : RTEMS_TEST_SUPPORT.OBJECTS_LOCATIONS; - THE_SEMAPHORE : RTEMS.TCB_POINTER; - THE_THREAD : RTEMS.TCB_POINTER; - begin - - TIMER_DRIVER.INITIALIZE; - RTEMS_TEST_SUPPORT.THREAD_RESUME( TMTEST.MIDDLE_TCB ); - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "THREAD_RESUME", - TMTEST.END_TIME, - 1, - 0, - 0 - ); - - RTEMS_TEST_SUPPORT.THREAD_SET_STATE( - TMTEST.MIDDLE_TCB, - RTEMS.WAITING_FOR_MESSAGE - ); - - TIMER_DRIVER.INITIALIZE; - RTEMS_TEST_SUPPORT.THREAD_UNBLOCK( TMTEST.MIDDLE_TCB ); - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "THREAD_UNBLOCK", - TMTEST.END_TIME, - 1, - 0, - 0 - ); - - RTEMS_TEST_SUPPORT.THREAD_SET_STATE( - TMTEST.MIDDLE_TCB, - RTEMS.WAITING_FOR_MESSAGE - ); - - TIMER_DRIVER.INITIALIZE; - RTEMS_TEST_SUPPORT.THREAD_READY( TMTEST.MIDDLE_TCB ); - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "THREAD_READY", - TMTEST.END_TIME, - 1, - 0, - 0 - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - TIMER_DRIVER.EMPTY_FUNCTION; - end loop; - OVERHEAD := TIMER_DRIVER.READ_TIMER; - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS_TEST_SUPPORT.THREAD_GET( - TASK_ID, - LOCATION, - THE_THREAD - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "THREAD_GET", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - 0 - ); - --- TIMER_DRIVER.INITIALIZE; --- for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT --- loop --- RTEMS_TEST_SUPPORT.SEMAPHORE_GET( --- TMTEST.SEMAPHORE_ID, --- LOCATION, --- THE_SEMAPHORE --- ); --- end loop; --- TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - --- TIME_TEST_SUPPORT.PUT_TIME( --- "SEMAPHORE_GET", --- TMTEST.END_TIME, --- TIME_TEST_SUPPORT.OPERATION_COUNT, --- 0, --- 0 --- ); - TEXT_IO.PUT_LINE( "SEMAPHORE_GET NOT IN ADA" ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS_TEST_SUPPORT.THREAD_GET( - 16#3#, - LOCATION, - THE_THREAD - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "THREAD_GET (invalid id)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - 0, - 0 - ); - - end COMPLETE_TEST; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm26/tmtest.ads b/c/src/ada-tests/tmtests/tm26/tmtest.ads deleted file mode 100644 index 3f56e24010..0000000000 --- a/c/src/ada-tests/tmtests/tm26/tmtest.ads +++ /dev/null @@ -1,189 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 26 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with TIMER_DRIVER; -with RTEMS; - -package TMTEST is - --- --- This points to the RTEMS task control block for the MIDDLE_TASK. --- - - MIDDLE_TCB : RTEMS.TCB_POINTER; - --- --- The following is the ID of the semaphore used for timing operations. --- - - SEMAPHORE_ID : RTEMS.ID; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- NULL_TASK --- --- DESCRIPTION: --- --- This RTEMS task has a NULL body and is only included to --- allow TASK_START to be invoked without impacting another --- task. --- - - procedure NULL_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- HIGH_TASK --- --- DESCRIPTION: --- --- This RTEMS task is the highest priority test task and --- thus executes first. It is responsible for measuring --- and reporting the following times: --- --- + THREAD_DISABLE_DISPATCH --- + THREAD_ENABLE_DISPATCH --- + THREAD_SET_STATE --- --- After measuring and reporting the above times, this task --- starts the timer and forces dispatch to the MIDDLE_TASK. --- - - procedure HIGH_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- MIDDLE_TASK --- --- DESCRIPTION: --- --- This RTEMS task stops the timer and reports the execution --- time for THREAD_DISPATCH without any floating point context --- save and restore involved. Following this, it starts the --- timer and forces a CONTEXT_SWITCH to the LOW_TASK. --- - - procedure MIDDLE_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- LOW_TASK --- --- DESCRIPTION: --- --- This RTEMS task stops the timer and reports the execution --- time for a raw CONTEXT_SWITCH without any floating point context --- save and restore involved. Following this, it starts the --- timer and performs a CONTEXT_RESTORE_FP for the FLOATING_POINT_TASK_1 --- and a CONTEXT_SWITCH to FLOATING_POINT_TASK_1. --- - - procedure LOW_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- FLOATING_POINT_TASK_1 --- --- DESCRIPTION: --- --- This RTEMS task stops the timer and reports the execution --- time for a CONTEXT_SWITCH which restores the first floating --- point context. Following this, it starts the --- timer and performs a CONTEXT_SAVE_FP and CONTEXT_RESTORE_FP --- and a CONTEXT_SWITCH to FLOATING_POINT_TASK_2. Once --- control is returned to this task FLOATING_POINT_TASK_2, the --- timer is stopped and the execution time for CONTEXT_SWITCH --- from a used to an initialized floating point context is reported. --- Following this, it starts the timer and performs a --- CONTEXT_SAVE_FP and CONTEXT_RESTORE_FP and a CONTEXT_SWITCH --- to FLOATING_POINT_TASK_2. --- - - procedure FLOATING_POINT_TASK_1 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- FLOATING_POINT_TASK_2 --- --- DESCRIPTION: --- --- This RTEMS task stops the timer and reports the execution --- time for a CONTEXT_SWITCH which switches from one freshly --- initialized floating point context to another freshly --- initialized floating point context. Following this, it --- "dirties" its floating point context and starts the --- timer. After this it performs a CONTEXT_SAVE_FP and --- CONTEXT_RESTORE_FP and a CONTEXT_SWITCH to FLOATING_POINT_TASK_1. --- Once control is returned to this task FLOATING_POINT_TASK_2, the --- timer is stopped and the execution time for CONTEXT_SWITCH --- from one used floating point context to another used floating --- point context is reported. After this, this task invokes --- the COMPLETE_TEST subprogram to measure and report --- the remaining execution times measured by this test. --- - - procedure FLOATING_POINT_TASK_2 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- COMPLETE_TEST --- --- DESCRIPTION: --- --- This subprogram is responsible for measuring and reporting the --- following execution times: --- --- + THREAD_RESUME --- + THREAD_UNBLOCK --- + THREAD_READY --- + THREAD_GET with a valid id --- + THREAD_GET with an invalid id --- - - procedure COMPLETE_TEST; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm27/README b/c/src/ada-tests/tmtests/tm27/README deleted file mode 100644 index 7fa8ba0b23..0000000000 --- a/c/src/ada-tests/tmtests/tm27/README +++ /dev/null @@ -1,8 +0,0 @@ -# -# $Id$ -# - -This test requires interfacing to BSP provided macros which aid in -installing an ISR. It may or may not be worth the effort to convert. -Primarily this would require a C file which provided real bodies -to invoke for these macros. diff --git a/c/src/ada-tests/tmtests/tm27/config.h b/c/src/ada-tests/tmtests/tm27/config.h deleted file mode 100644 index 7e7793cf15..0000000000 --- a/c/src/ada-tests/tmtests/tm27/config.h +++ /dev/null @@ -1,36 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 111 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm27/tm27.adb b/c/src/ada-tests/tmtests/tm27/tm27.adb deleted file mode 100644 index 7a8e1ca9f3..0000000000 --- a/c/src/ada-tests/tmtests/tm27/tm27.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM27 of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM27 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM27; - diff --git a/c/src/ada-tests/tmtests/tm27/tmtest.adb b/c/src/ada-tests/tmtests/tm27/tmtest.adb deleted file mode 100644 index 12761659be..0000000000 --- a/c/src/ada-tests/tmtests/tm27/tmtest.adb +++ /dev/null @@ -1,268 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 27 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERRUPT_TIME_TEST_SUPPORT; -with INTERFACES; use INTERFACES; -with RTEMS_CALLING_OVERHEAD; -with RTEMS; -with RTEMS_TEST_SUPPORT; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 27 ***" ); - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'T', 'A', '1', ' ' ), - 254, - 2048, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TMTEST.TASK_ID( 1 ), - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE TASK_1" ); - - RTEMS.TASK_START( - TMTEST.TASK_ID( 1 ), - TMTEST.TASK_1'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START TASK_1" ); - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'T', 'A', '2', ' ' ), - 254, - 2048, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TMTEST.TASK_ID( 2 ), - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE TASK_2" ); - - RTEMS.TASK_START( - TMTEST.TASK_ID( 2 ), - TMTEST.TASK_2'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START TASK_2" ); - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- TASK_1 --- - - procedure TASK_1 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - begin - - RTEMS_TEST_SUPPORT.THREAD_DISPATCH_DISABLE_LEVEL := 1; - - TMTEST.INTERRUPT_NEST := 1; - - INTERRUPT_TIME_TEST_SUPPORT.INSTALL_HANDLER( - TMTEST.ISR_HANDLER'ADDRESS - ); - - TIMER_DRIVER.INITIALIZE; - INTERRUPT_TIME_TEST_SUPPORT.CAUSE_INTERRUPT; - -- goes to ISR_HANDLER - - TMTEST.INTERRUPT_RETURN_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "INTERRUPT_ENTER (nested interrupt)", - TMTEST.INTERRUPT_ENTER_NESTED_TIME, - 1, - 0, - 0 - ); - - TIME_TEST_SUPPORT.PUT_TIME( - "INTERRUPT_RETURN (nested interrupt)", - TMTEST.INTERRUPT_RETURN_NESTED_TIME, - 1, - 0, - 0 - ); - - TMTEST.INTERRUPT_NEST := 0; - - RTEMS_TEST_SUPPORT.THREAD_DISPATCH_DISABLE_LEVEL := 0; - - TIMER_DRIVER.INITIALIZE; - INTERRUPT_TIME_TEST_SUPPORT.CAUSE_INTERRUPT; - -- goes to ISR_HANDLER - - TMTEST.INTERRUPT_RETURN_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "INTERRUPT_ENTER (no preempt)", - TMTEST.INTERRUPT_ENTER_TIME, - 1, - 0, - 0 - ); - - TIME_TEST_SUPPORT.PUT_TIME( - "INTERRUPT_RETURN (no preempt)", - TMTEST.INTERRUPT_RETURN_TIME, - 1, - 0, - 0 - ); - - RTEMS_TEST_SUPPORT.THREAD_DISPATCH_DISABLE_LEVEL := 0; - - RTEMS_TEST_SUPPORT.THREAD_HEIR := - RTEMS_TEST_SUPPORT.THREAD_TO_CONTROL_POINTER( - RTEMS_TEST_SUPPORT.CHAIN_NODE_POINTER_TO_ADDRESS( - RTEMS_TEST_SUPPORT.THREAD_READY_CHAIN( 254 ).LAST - ) - ); - - RTEMS_TEST_SUPPORT.CONTEXT_SWITCH_NECESSARY := TRUE; - - TIMER_DRIVER.INITIALIZE; - INTERRUPT_TIME_TEST_SUPPORT.CAUSE_INTERRUPT; - -- goes to ISR_HANDLER - - end TASK_1; - ---PAGE --- --- TASK_2 --- - - procedure TASK_2 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - begin - - TMTEST.INTERRUPT_RETURN_TIME := TIMER_DRIVER.READ_TIMER; - TIME_TEST_SUPPORT.PUT_TIME( - "INTERRUPT_ENTER (preempt)", - TMTEST.INTERRUPT_ENTER_TIME, - 1, - 0, - 0 - ); - - TIME_TEST_SUPPORT.PUT_TIME( - "INTERRUPT_RETURN (preempt)", - TMTEST.INTERRUPT_RETURN_TIME, - 1, - 0, - 0 - ); - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end TASK_2; - ---PAGE --- --- ISR_HANDLER --- - --- --- The ISR_HANDLER and ISR_HANDLER_INNER subprograms are structured --- so that there will be as little entry overhead as possible included --- in the interrupt entry time. --- - - procedure ISR_HANDLER ( - VECTOR : in RTEMS.VECTOR_NUMBER - ) is - begin - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TMTEST.ISR_HANDLER_INNER; - - end ISR_HANDLER; - --- --- ISR_HANDLER_INNER --- - - procedure ISR_HANDLER_INNER - is - begin - - -- enable tracing here is necessary - - INTERRUPT_TIME_TEST_SUPPORT.CLEAR_INTERRUPT; - - case TMTEST.INTERRUPT_NEST is - when 0 => - TMTEST.INTERRUPT_ENTER_TIME := TMTEST.END_TIME; - - when 1 => - TMTEST.INTERRUPT_ENTER_TIME := TMTEST.END_TIME; - TMTEST.INTERRUPT_NEST := 2; - TIMER_DRIVER.INITIALIZE; - INTERRUPT_TIME_TEST_SUPPORT.CAUSE_INTERRUPT; - -- goes to a nested copy of ISR_HANDLER - - TMTEST.INTERRUPT_RETURN_NESTED_TIME := TIMER_DRIVER.READ_TIMER; - - when 2 => - TMTEST.INTERRUPT_ENTER_NESTED_TIME := TMTEST.END_TIME; - - when others => - NULL; - - end case; - - -- Start the timer so interrupt return times can be measured - - TIMER_DRIVER.INITIALIZE; - - end ISR_HANDLER_INNER; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm27/tmtest.ads b/c/src/ada-tests/tmtests/tm27/tmtest.ads deleted file mode 100644 index ef7848c822..0000000000 --- a/c/src/ada-tests/tmtests/tm27/tmtest.ads +++ /dev/null @@ -1,131 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 27 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with TIMER_DRIVER; -with RTEMS; - -package TMTEST is - --- --- This array contains the IDs of all RTEMS tasks created by this test. --- - - TASK_ID : array ( RTEMS.UNSIGNED32 range 1 .. 2 ) of RTEMS.ID; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- The following variable indicates which interrupt case is --- currently being timed. --- - - INTERRUPT_NEST : RTEMS.UNSIGNED32; - --- --- The following variables are set to the appropriate execution --- times by the ISR. This is done so the times will be available --- to be printed by a task. --- - - INTERRUPT_ENTER_TIME : RTEMS.UNSIGNED32; - INTERRUPT_RETURN_TIME : RTEMS.UNSIGNED32; - - INTERRUPT_ENTER_NESTED_TIME : RTEMS.UNSIGNED32; - INTERRUPT_RETURN_NESTED_TIME : RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TASK_1 --- --- DESCRIPTION: --- --- This RTEMS task reports the following execution times: --- --- + interrupt entry overhead for a nested interrupt --- + interrupt exit overhead for a nested interrupt --- + interrupt entry overhead when no preemption occurs --- + interrupt exit overhead when no preemption occurs --- - - procedure TASK_1 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TASK_2 --- --- DESCRIPTION: --- --- This RTEMS task reports the following execution times: --- --- + interrupt entry overhead when preemption occurs --- + interrupt exit overhead when preemption occurs --- - - procedure TASK_2 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- ISR_HANDLER --- --- DESCRIPTION: --- --- This subprogram is the test ISR. It simply stops the --- timer and save the execution time for ISR_HANDLER_INNER. --- This is done to minimize the subroutine linkage overhead --- for this routine. --- - - procedure ISR_HANDLER ( - VECTOR : in RTEMS.VECTOR_NUMBER - ); - --- --- ISR_HANDLER_INNER --- --- DESCRIPTION: --- --- This subprogram is responsible for storing the execution --- time for the case currently being timed. --- - - procedure ISR_HANDLER_INNER; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm28/config.h b/c/src/ada-tests/tmtests/tm28/config.h deleted file mode 100644 index 0c238dfbaf..0000000000 --- a/c/src/ada-tests/tmtests/tm28/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 2 -#define CONFIGURE_MAXIMUM_PORTS 1 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm28/tm28.adb b/c/src/ada-tests/tmtests/tm28/tm28.adb deleted file mode 100644 index e76d166e7a..0000000000 --- a/c/src/ada-tests/tmtests/tm28/tm28.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM28 of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM28 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM28; - diff --git a/c/src/ada-tests/tmtests/tm28/tmtest.adb b/c/src/ada-tests/tmtests/tm28/tmtest.adb deleted file mode 100644 index 7505635c06..0000000000 --- a/c/src/ada-tests/tmtests/tm28/tmtest.adb +++ /dev/null @@ -1,176 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 28 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERFACES; use INTERFACES; -with RTEMS; -with RTEMS_CALLING_OVERHEAD; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - TASK_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 28 ***" ); - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'T', 'E', 'S', 'T' ), - 128, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TMTEST.TASK_ID( 1 ), - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE" ); - - RTEMS.TASK_START( - TMTEST.TASK_ID( 1 ), - TMTEST.TEST_TASK'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START" ); - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- TEST_TASK --- - - procedure TEST_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - NAME : RTEMS.NAME; - OVERHEAD : RTEMS.UNSIGNED32; - CONVERTED : RTEMS.ADDRESS; - STATUS : RTEMS.STATUS_CODES; - begin - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - TIMER_DRIVER.EMPTY_FUNCTION; - end loop; - OVERHEAD := TIMER_DRIVER.READ_TIMER; - - NAME := RTEMS.BUILD_NAME( 'P', 'O', 'R', 'T' ); - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.PORT_CREATE( - NAME, - TMTEST.INTERNAL_PORT_AREA'ADDRESS, - TMTEST.EXTERNAL_PORT_AREA'ADDRESS, - 16#FF#, - TMTEST.PORT_ID( INDEX ), - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "PORT_CREATE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.PORT_CREATE - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.PORT_EXTERNAL_TO_INTERNAL( - TMTEST.PORT_ID( 1 ), - TMTEST.EXTERNAL_PORT_AREA( 16#F# )'ADDRESS, - CONVERTED, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "PORT_EXTERNAL_TO_INTERNAL", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.PORT_EXTERNAL_TO_INTERNAL - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.PORT_INTERNAL_TO_EXTERNAL( - TMTEST.PORT_ID( 1 ), - TMTEST.INTERNAL_PORT_AREA( 16#F# )'ADDRESS, - CONVERTED, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "PORT_INTERNAL_TO_EXTERNAL", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.PORT_INTERNAL_TO_EXTERNAL - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - RTEMS.PORT_DELETE( TMTEST.PORT_ID( INDEX ), STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "PORT_DELETE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.PORT_DELETE - ); - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end TEST_TASK; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm28/tmtest.ads b/c/src/ada-tests/tmtests/tm28/tmtest.ads deleted file mode 100644 index 5bf220d453..0000000000 --- a/c/src/ada-tests/tmtests/tm28/tmtest.ads +++ /dev/null @@ -1,106 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 28 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with SYSTEM; -with TIME_TEST_SUPPORT; -with TIMER_DRIVER; -with RTEMS; -with System.Storage_Elements; - -package TMTEST is - --- --- This array contains the IDs of all RTEMS tasks created by this test. --- - - TASK_ID : array ( RTEMS.UNSIGNED32 range 1 .. 3 ) of RTEMS.ID; - --- --- This array contains the IDs of all RTEMS ports created by this test. --- - - PORT_ID : array ( RTEMS.UNSIGNED32 - range 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT ) of RTEMS.ID; - --- --- The following area defines a memory area to be used as the --- internal address space of the port. --- - - INTERNAL_PORT_AREA_ADDRESS : constant System.Address := - System.Storage_Elements.To_Address(16#00001000#); - - INTERNAL_PORT_AREA : array ( RTEMS.UNSIGNED32 range 0 .. 255 ) - of RTEMS.UNSIGNED8; - for INTERNAL_PORT_AREA use at INTERNAL_PORT_AREA_ADDRESS; - --- --- The following area defines a memory area to be used as the --- external address space of the port. --- - - EXTERNAL_PORT_AREA_ADDRESS : constant System.Address := - System.Storage_Elements.To_Address(16#00002000#); - - EXTERNAL_PORT_AREA : array ( RTEMS.UNSIGNED32 range 0 .. 255 ) - of RTEMS.UNSIGNED8; - for EXTERNAL_PORT_AREA use at EXTERNAL_PORT_AREA_ADDRESS; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TEST_TASK --- --- DESCRIPTION: --- --- This RTEMS task is responsible for measuring and reporting the --- following directive execution times: --- --- + PORT_CREATE --- + PORT_EXTERNAL_TO_INTERNAL --- + PORT_INTERNAL_TO_EXTERNAL --- + PORT_DELETE --- - - procedure TEST_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm29/config.h b/c/src/ada-tests/tmtests/tm29/config.h deleted file mode 100644 index d22b4a61cb..0000000000 --- a/c/src/ada-tests/tmtests/tm29/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 111 -#define CONFIGURE_MAXIMUM_PERIODS 111 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tm29/tm29.adb b/c/src/ada-tests/tmtests/tm29/tm29.adb deleted file mode 100644 index 7834403d2b..0000000000 --- a/c/src/ada-tests/tmtests/tm29/tm29.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TM29 of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TM29 is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TM29; - diff --git a/c/src/ada-tests/tmtests/tm29/tmtest.adb b/c/src/ada-tests/tmtests/tm29/tmtest.adb deleted file mode 100644 index e1f1af77dd..0000000000 --- a/c/src/ada-tests/tmtests/tm29/tmtest.adb +++ /dev/null @@ -1,234 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Test 29 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with INTERFACES; use INTERFACES; -with RTEMS; -with RTEMS_CALLING_OVERHEAD; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST 29 ***" ); - - TMTEST.PERIOD_NAME := RTEMS.BUILD_NAME( 'P', 'R', 'D', ' ' ); - - TIMER_DRIVER.INITIALIZE; - RTEMS.RATE_MONOTONIC_CREATE( TMTEST.PERIOD_NAME, ID, STATUS ); - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "RATE_MONOTONIC_CREATE", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.RATE_MONOTONIC_CREATE - ); - - TIMER_DRIVER.INITIALIZE; - RTEMS.RATE_MONOTONIC_PERIOD( ID, 10, STATUS ); - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "RATE_MONOTONIC_PERIOD (initial)", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.RATE_MONOTONIC_PERIOD - ); - - TIMER_DRIVER.INITIALIZE; - RTEMS.RATE_MONOTONIC_PERIOD( ID, RTEMS.PERIOD_STATUS, STATUS ); - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "RATE_MONOTONIC_PERIOD (STATUS)", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.RATE_MONOTONIC_PERIOD - ); - - TIMER_DRIVER.INITIALIZE; - RTEMS.RATE_MONOTONIC_CANCEL( ID, STATUS ); - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "RATE_MONOTONIC_CANCEL", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.RATE_MONOTONIC_CANCEL - ); - - TIMER_DRIVER.INITIALIZE; - RTEMS.RATE_MONOTONIC_DELETE( ID, STATUS ); - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "RATE_MONOTONIC_DELETE (cancelled)", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.RATE_MONOTONIC_DELETE - ); - - RTEMS.RATE_MONOTONIC_CREATE( TMTEST.PERIOD_NAME, ID, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "RATE_MONOTONIC_CREATE" ); - - RTEMS.RATE_MONOTONIC_PERIOD( ID, 10, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "RATE_MONOTONIC_PERIOD" ); - - TIMER_DRIVER.INITIALIZE; - RTEMS.RATE_MONOTONIC_DELETE( ID, STATUS ); - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "RATE_MONOTONIC_DELETE (active)", - TMTEST.END_TIME, - 1, - 0, - RTEMS_CALLING_OVERHEAD.RATE_MONOTONIC_DELETE - ); - - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'T', 'E', 'S', 'T' ), - 128, - 1024, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE LOOP" ); - - RTEMS.TASK_START( ID, TMTEST.TASKS'ACCESS, 0, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START LOOP" ); - - end loop; - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'L', 'O', 'W', ' ' ), - 200, - 2048, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE LOOP" ); - - RTEMS.TASK_START( ID, TMTEST.LOW_TASK'ACCESS, 0, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START LOOP" ); - - TMTEST.TASK_COUNT := 0; - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- TASKS --- - - procedure TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - ID : RTEMS.NAME; - STATUS : RTEMS.STATUS_CODES; - begin - - RTEMS.RATE_MONOTONIC_CREATE( TMTEST.PERIOD_NAME, ID, STATUS ); - RTEMS.RATE_MONOTONIC_PERIOD( ID, 10, STATUS ); - - -- Give up the processor to allow all tasks to actually - -- create and start their period timer before the benchmark - -- timer driver is initialized. - - RTEMS.TASK_WAKE_AFTER( RTEMS.YIELD_PROCESSOR, STATUS ); - - TMTEST.TASK_COUNT := TMTEST.TASK_COUNT + 1; - - if TMTEST.TASK_COUNT = 1 then - TIMER_DRIVER.INITIALIZE; - end if; - - RTEMS.RATE_MONOTONIC_PERIOD( ID, 100, STATUS ); - - end TASKS; - ---PAGE --- --- LOW_TASK --- - - procedure LOW_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - INDEX : RTEMS.UNSIGNED32; - OVERHEAD : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - TIMER_DRIVER.EMPTY_FUNCTION; - end loop; - OVERHEAD := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "RATE_MONOTONIC_PERIOD (blocking)", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - RTEMS_CALLING_OVERHEAD.RATE_MONOTONIC_PERIOD - ); - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end LOW_TASK; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tm29/tmtest.ads b/c/src/ada-tests/tmtests/tm29/tmtest.ads deleted file mode 100644 index e60ded1e11..0000000000 --- a/c/src/ada-tests/tmtests/tm29/tmtest.ads +++ /dev/null @@ -1,96 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Test 29 of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with TIMER_DRIVER; -with RTEMS; - -package TMTEST is - --- --- The following is the name used for all periods created by this test. --- - - PERIOD_NAME : RTEMS.NAME; - --- --- The following is used to allow all tasks to create and start --- their period timers before the timer is started for timing --- the blocking case of RATE_MONOTONIC_PERIOD. --- - - TASK_COUNT : RTEMS.UNSIGNED32; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. It also measures and --- reports the following directive execution times: --- --- + RATE_MONOTONIC_CREATE --- + RATE_MONOTONIC_PERIOD the initial time --- + RATE_MONOTONIC_PERIOD for a period's status --- + RATE_MONOTONIC_CANCEL --- + RATE_MONOTONIC_DELETE of a cancelled period --- + RATE_MONOTONIC_DELETE of an active period --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TEST_TASK --- --- DESCRIPTION: --- --- The first of these RTEMS tasks starts the timer. All of these --- tasks execute a blocking RATE_MONOTONIC_PERIOD. --- - - procedure TASKS ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TEST_TASK --- --- DESCRIPTION: --- --- This RTEMS task stops the timer and reports the execution --- time for a blocking RATE_MONOTONIC_PERIOD. --- - - procedure LOW_TASK ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tmck/config.h b/c/src/ada-tests/tmtests/tmck/config.h deleted file mode 100644 index be54f54955..0000000000 --- a/c/src/ada-tests/tmtests/tmck/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 2 -#define CONFIGURE_MAXIMUM_SEMAPHORES 1 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tmck/tmck.adb b/c/src/ada-tests/tmtests/tmck/tmck.adb deleted file mode 100644 index 4f05735bca..0000000000 --- a/c/src/ada-tests/tmtests/tmck/tmck.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TMCK of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TMCK is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TMCK; - diff --git a/c/src/ada-tests/tmtests/tmck/tmtest.adb b/c/src/ada-tests/tmtests/tmck/tmtest.adb deleted file mode 100644 index 254a462bcc..0000000000 --- a/c/src/ada-tests/tmtests/tmck/tmtest.adb +++ /dev/null @@ -1,220 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Timer Check Test of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with TIMER_DRIVER; -with INTERFACES; use INTERFACES; -with RTEMS; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST CHECK ***" ); - - TIMER_DRIVER.SET_FIND_AVERAGE_OVERHEAD( TRUE ); - - TMTEST.TASK_NAME( 1 ) := RTEMS.BUILD_NAME( 'T', 'A', '1', ' ' ); - - RTEMS.TASK_CREATE( - TMTEST.TASK_NAME( 1 ), - 1, - 2048, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TMTEST.TASK_ID( 1 ), - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF TA1" ); - - RTEMS.TASK_START( - TMTEST.TASK_ID( 1 ), - TMTEST.TASK_1'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF TA1" ); - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- TASK_1 --- - - procedure TASK_1 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - INDEX : RTEMS.UNSIGNED32; - begin - - TMTEST.CHECK_READ_TIMER; - -TEST_SUPPORT.PAUSE; - - TIMER_DRIVER.INITIALIZE; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - TIME_TEST_SUPPORT.PUT_TIME( - "NULL timer stopped at", - TMTEST.END_TIME, - 1, - 0, - 0 - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 0 .. 1000 - loop - TIMER_DRIVER.EMPTY_FUNCTION; - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - TIME_TEST_SUPPORT.PUT_TIME( - "LOOP (1000) timer stopped at", - TMTEST.END_TIME, - 1, - 0, - 0 - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 0 .. 10000 - loop - TIMER_DRIVER.EMPTY_FUNCTION; - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - TIME_TEST_SUPPORT.PUT_TIME( - "LOOP (10000) timer stopped at", - TMTEST.END_TIME, - 1, - 0, - 0 - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 0 .. 50000 - loop - TIMER_DRIVER.EMPTY_FUNCTION; - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - TIME_TEST_SUPPORT.PUT_TIME( - "LOOP (50000) timer stopped at", - TMTEST.END_TIME, - 1, - 0, - 0 - ); - - TIMER_DRIVER.INITIALIZE; - for INDEX in 0 .. 100000 - loop - TIMER_DRIVER.EMPTY_FUNCTION; - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - TIME_TEST_SUPPORT.PUT_TIME( - "LOOP (100000) timer stopped at", - TMTEST.END_TIME, - 1, - 0, - 0 - ); - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end TASK_1; - ---PAGE --- --- CHECK_READ_TIMER --- - - procedure CHECK_READ_TIMER - is - INDEX : RTEMS.UNSIGNED32; - TIME : RTEMS.UNSIGNED32; - begin - - for INDEX in TMTEST.DISTRIBUTION'FIRST .. TMTEST.DISTRIBUTION'LAST - loop - TMTEST.DISTRIBUTION( INDEX ) := 0; - end loop; - - for INDEX in 1 .. TMTEST.OPERATION_COUNT - loop - - loop - TIMER_DRIVER.INITIALIZE; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - exit when - TMTEST.END_TIME <= RTEMS.UNSIGNED32( TMTEST.DISTRIBUTION'LAST ); - - TEXT_IO.PUT( "TOO LONG (" ); - UNSIGNED32_IO.PUT( TMTEST.END_TIME ); - TEXT_IO.PUT_LINE( ")!!!" ); - end loop; - - TMTEST.DISTRIBUTION( TMTEST.END_TIME ) := - TMTEST.DISTRIBUTION( TMTEST.END_TIME ) + 1; - - end loop; - - TEXT_IO.PUT_LINE( - "Units may not be in microseconds for this test!!!" - ); - - TIME := 0; - - for INDEX in TMTEST.DISTRIBUTION'FIRST .. TMTEST.DISTRIBUTION'LAST - loop - if TMTEST.DISTRIBUTION( INDEX ) /= 0 then - TIME := TIME + (TMTEST.DISTRIBUTION( INDEX ) * INDEX); - UNSIGNED32_IO.PUT( INDEX ); - TEXT_IO.PUT( " " ); - UNSIGNED32_IO.PUT( TMTEST.DISTRIBUTION( INDEX ) ); - TEXT_IO.NEW_LINE; - end if; - end loop; - - TEXT_IO.PUT( "Total time = " ); - UNSIGNED32_IO.PUT( TIME ); - TEXT_IO.NEW_LINE; - - end CHECK_READ_TIMER; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tmck/tmtest.ads b/c/src/ada-tests/tmtests/tmck/tmtest.ads deleted file mode 100644 index 8f82d786a2..0000000000 --- a/c/src/ada-tests/tmtests/tmck/tmtest.ads +++ /dev/null @@ -1,97 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Timer Check Test of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with TIMER_DRIVER; -with RTEMS; - -package TMTEST is - --- --- These arrays contain the IDs and NAMEs of all RTEMS tasks created --- by this test. --- - - TASK_ID : array ( RTEMS.UNSIGNED32 range 1 .. 3 ) of RTEMS.ID; - TASK_NAME : array ( RTEMS.UNSIGNED32 range 1 .. 3 ) of RTEMS.NAME; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- The following defines the number of iterations of each timed --- operation to perform. --- - - OPERATION_COUNT : constant RTEMS.UNSIGNED32 := 100000; - --- --- The following array is used to determine how many times --- each time between 0 and 1000 microseconds was returned --- when simply starting and stopping the timer. - - DISTRIBUTION : array ( RTEMS.UNSIGNED32 range 0 .. 10000 ) of RTEMS.UNSIGNED32; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TASK_1 --- --- DESCRIPTION: --- --- This RTEMS task invokes CHECK_READ_TIMER before demonstrating --- that increasing the order of magnitude of the number of loop --- iterations performed has a corresponding impact on the time --- reported by the timer driver. --- - - procedure TASK_1 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- CHECK_READ_TIMER --- --- DESCRIPTION: --- --- This subprogram is used to determine the overhead associated --- with starting and stopping the timer. It is also useful --- for determining if unexpected times will be reported. --- - - procedure CHECK_READ_TIMER; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tmoverhd/README b/c/src/ada-tests/tmtests/tmoverhd/README deleted file mode 100644 index d5624c4270..0000000000 --- a/c/src/ada-tests/tmtests/tmoverhd/README +++ /dev/null @@ -1,9 +0,0 @@ -# -# $Id$ -# - -This test is of marginal usefulness in testing the bindings. It -shows how much overhead is required to call the Ada binding -routine but does not give any indication of how much overhead the -binding itself adds. This information can be inferred by subtracting -the C times from Ada times on the same target processor. diff --git a/c/src/ada-tests/tmtests/tmoverhd/config.h b/c/src/ada-tests/tmtests/tmoverhd/config.h deleted file mode 100644 index be54f54955..0000000000 --- a/c/src/ada-tests/tmtests/tmoverhd/config.h +++ /dev/null @@ -1,37 +0,0 @@ -/* config.h - * - * This include file defines the Configuration Table for this test. - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * Copyright assigned to U.S. Government, 1994. - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - - -/* configuration information */ - -#define CONFIGURE_TMTEST - -#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER -#define CONFIGURE_TEST_NEEDS_TIMER_DRIVER - -#define CONFIGURE_MAXIMUM_TASKS 2 -#define CONFIGURE_MAXIMUM_SEMAPHORES 1 -#define CONFIGURE_TICKS_PER_TIMESLICE 0 - -#define CONFIGURE_POSIX_INIT_THREAD_TABLE - -#define CONFIGURE_MAXIMUM_POSIX_THREADS 10 -#define CONFIGURE_MAXIMUM_POSIX_KEYS 10 -#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20 -#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10 - -#include <confdefs.h> - -/* end of include file */ diff --git a/c/src/ada-tests/tmtests/tmoverhd/dummy_rtems.adb b/c/src/ada-tests/tmtests/tmoverhd/dummy_rtems.adb deleted file mode 100644 index e6a3519e99..0000000000 --- a/c/src/ada-tests/tmtests/tmoverhd/dummy_rtems.adb +++ /dev/null @@ -1,877 +0,0 @@ --- --- DUMMY_RTEMS / SPECIFICATION --- --- DESCRIPTION: --- --- This package contains implementation of stub routines --- which are used to time the invocation overhead incurred --- with an Ada application program invokes each RTEMS directive. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; - -package body DUMMY_RTEMS is - --- Initialization Manager - - procedure INITIALIZE_EXECUTIVE ( - CONFIGURATION_TABLE : in RTEMS.CONFIGURATION_TABLE_POINTER; - CPU_TABLE : in RTEMS.CPU_TABLE_POINTER - ) is - begin - - NULL; - - end INITIALIZE_EXECUTIVE; - - procedure SHUTDOWN_EXECUTIVE ( - RESULT : in RTEMS.UNSIGNED32 - ) is - begin - - NULL; - - end SHUTDOWN_EXECUTIVE; - --- Task Manager - - procedure TASK_CREATE ( - NAME : in RTEMS.NAME; - INITIAL_PRIORITY : in RTEMS.TASK_PRIORITY; - STACK_SIZE : in RTEMS.UNSIGNED32; - INITIAL_MODES : in RTEMS.MODE; - ATTRIBUTE_SET : in RTEMS.ATTRIBUTE; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end TASK_CREATE; - - procedure TASK_IDENT ( - NAME : in RTEMS.NAME; - NODE : in RTEMS.UNSIGNED32; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end TASK_IDENT; - - procedure TASK_START ( - ID : in RTEMS.ID; - ENTRY_POINT : in RTEMS.TASK_ENTRY; - ARGUMENT : in RTEMS.UNSIGNED32; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end TASK_START; - - procedure TASK_RESTART ( - ID : in RTEMS.ID; - ARGUMENT : in RTEMS.UNSIGNED32; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end TASK_RESTART; - - procedure TASK_DELETE ( - ID : in RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end TASK_DELETE; - - procedure TASK_SUSPEND ( - ID : in RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end TASK_SUSPEND; - - procedure TASK_RESUME ( - ID : in RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end TASK_RESUME; - - procedure TASK_SET_PRIORITY ( - ID : in RTEMS.ID; - NEW_PRIORITY : in RTEMS.TASK_PRIORITY; - OLD_PRIORITY : out RTEMS.TASK_PRIORITY; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end TASK_SET_PRIORITY; - - procedure TASK_MODE ( - MODE_SET : in RTEMS.MODE; - MASK : in RTEMS.MODE; - PREVIOUS_MODE_SET : out RTEMS.MODE; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end TASK_MODE; - - procedure TASK_GET_NOTE ( - ID : in RTEMS.ID; - NOTEPAD : in RTEMS.NOTEPAD_INDEX; - NOTE : out RTEMS.UNSIGNED32; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end TASK_GET_NOTE; - - procedure TASK_SET_NOTE ( - ID : in RTEMS.ID; - NOTEPAD : in RTEMS.NOTEPAD_INDEX; - NOTE : in RTEMS.UNSIGNED32; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end TASK_SET_NOTE; - - procedure TASK_WAKE_WHEN ( - TIME_BUFFER : in RTEMS.TIME_OF_DAY; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end TASK_WAKE_WHEN; - - procedure TASK_WAKE_AFTER ( - TICKS : in RTEMS.INTERVAL; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end TASK_WAKE_AFTER; - --- Interrupt Manager - - procedure INTERRUPT_CATCH ( - NEW_ISR_HANDLER : in RTEMS.ADDRESS; - VECTOR : in RTEMS.VECTOR_NUMBER; - OLD_ISR_HANDLER : out RTEMS.ADDRESS; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end INTERRUPT_CATCH; - --- Clock Manager - - procedure CLOCK_GET ( - OPTION : in RTEMS.CLOCK_GET_OPTIONS; - TIME_BUFFER : in RTEMS.ADDRESS; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end CLOCK_GET; - - procedure CLOCK_SET ( - TIME_BUFFER : in RTEMS.TIME_OF_DAY; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end CLOCK_SET; - - procedure CLOCK_TICK ( - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end CLOCK_TICK; - --- Timer Manager - - procedure TIMER_CREATE ( - NAME : in RTEMS.NAME; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end TIMER_CREATE; - - procedure TIMER_DELETE ( - ID : in RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end TIMER_DELETE; - - procedure TIMER_IDENT ( - NAME : in RTEMS.NAME; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end TIMER_IDENT; - - procedure TIMER_FIRE_AFTER ( - ID : in RTEMS.ID; - TICKS : in RTEMS.INTERVAL; - ROUTINE : in RTEMS.TIMER_SERVICE_ROUTINE; - USER_DATA : in RTEMS.ADDRESS; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end TIMER_FIRE_AFTER; - - procedure TIMER_FIRE_WHEN ( - ID : in RTEMS.ID; - WALL_TIME : in RTEMS.TIME_OF_DAY; - ROUTINE : in RTEMS.TIMER_SERVICE_ROUTINE; - USER_DATA : in RTEMS.ADDRESS; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end TIMER_FIRE_WHEN; - - procedure TIMER_RESET ( - ID : in RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end TIMER_RESET; - - procedure TIMER_CANCEL ( - ID : in RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end TIMER_CANCEL; - --- Semaphore Manager - - procedure SEMAPHORE_CREATE ( - NAME : in RTEMS.NAME; - COUNT : in RTEMS.UNSIGNED32; - ATTRIBUTE_SET : in RTEMS.ATTRIBUTE; - PRIORITY_CEILING : in RTEMS.TASK_PRIORITY; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end SEMAPHORE_CREATE; - - procedure SEMAPHORE_DELETE ( - ID : in RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end SEMAPHORE_DELETE; - - procedure SEMAPHORE_IDENT ( - NAME : in RTEMS.NAME; - NODE : in RTEMS.UNSIGNED32; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end SEMAPHORE_IDENT; - - procedure SEMAPHORE_OBTAIN ( - ID : in RTEMS.ID; - OPTION_SET : in RTEMS.OPTION; - TIMEOUT : in RTEMS.INTERVAL; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end SEMAPHORE_OBTAIN; - - procedure SEMAPHORE_RELEASE ( - ID : in RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end SEMAPHORE_RELEASE; - --- Message Queue Manager - - procedure MESSAGE_QUEUE_CREATE ( - Name : in RTEMS.Name; - Count : in RTEMS.Unsigned32; - Max_Message_Size : in RTEMS.Unsigned32; - Attribute_Set : in RTEMS.Attribute; - ID : out RTEMS.ID; - Result : out RTEMS.Status_Codes - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end MESSAGE_QUEUE_CREATE; - - procedure MESSAGE_QUEUE_IDENT ( - NAME : in RTEMS.NAME; - NODE : in RTEMS.UNSIGNED32; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end MESSAGE_QUEUE_IDENT; - - procedure MESSAGE_QUEUE_DELETE ( - ID : in RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end MESSAGE_QUEUE_DELETE; - - procedure MESSAGE_QUEUE_SEND ( - ID : in RTEMS.ID; - BUFFER : in RTEMS.ADDRESS; - Size : in RTEMS.Unsigned32; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end MESSAGE_QUEUE_SEND; - - procedure MESSAGE_QUEUE_URGENT ( - ID : in RTEMS.ID; - BUFFER : in RTEMS.ADDRESS; - Size : in RTEMS.Unsigned32; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end MESSAGE_QUEUE_URGENT; - - procedure MESSAGE_QUEUE_BROADCAST ( - ID : in RTEMS.ID; - BUFFER : in RTEMS.ADDRESS; - Size : in RTEMS.Unsigned32; - COUNT : out RTEMS.UNSIGNED32; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end MESSAGE_QUEUE_BROADCAST; - - procedure MESSAGE_QUEUE_RECEIVE ( - ID : in RTEMS.ID; - BUFFER : in RTEMS.ADDRESS; - OPTION_SET : in RTEMS.OPTION; - TIMEOUT : in RTEMS.INTERVAL; - Size : out RTEMS.Unsigned32; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end MESSAGE_QUEUE_RECEIVE; - - procedure MESSAGE_QUEUE_FLUSH ( - ID : in RTEMS.ID; - COUNT : out RTEMS.UNSIGNED32; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end MESSAGE_QUEUE_FLUSH; - --- Event Manager - - procedure EVENT_SEND ( - ID : in RTEMS.ID; - EVENT_IN : in RTEMS.EVENT_SET; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end EVENT_SEND; - - procedure EVENT_RECEIVE ( - EVENT_IN : in RTEMS.EVENT_SET; - OPTION_SET : in RTEMS.OPTION; - TICKS : in RTEMS.INTERVAL; - EVENT_OUT : out RTEMS.EVENT_SET; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end EVENT_RECEIVE; - --- Signal Manager - - procedure SIGNAL_CATCH ( - ASR_HANDLER : in RTEMS.ASR_HANDLER; - MODE_SET : in RTEMS.MODE; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end SIGNAL_CATCH; - - procedure SIGNAL_SEND ( - ID : in RTEMS.ID; - SIGNAL_SET : in RTEMS.SIGNAL_SET; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end SIGNAL_SEND; - --- Partition Manager - - procedure PARTITION_CREATE ( - NAME : in RTEMS.NAME; - STARTING_ADDRESS : in RTEMS.ADDRESS; - LENGTH : in RTEMS.UNSIGNED32; - BUFFER_SIZE : in RTEMS.UNSIGNED32; - ATTRIBUTE_SET : in RTEMS.ATTRIBUTE; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end PARTITION_CREATE; - - procedure PARTITION_IDENT ( - NAME : in RTEMS.NAME; - NODE : in RTEMS.UNSIGNED32; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end PARTITION_IDENT; - - procedure PARTITION_DELETE ( - ID : in RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end PARTITION_DELETE; - - procedure PARTITION_GET_BUFFER ( - ID : in RTEMS.ID; - BUFFER : out RTEMS.ADDRESS; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end PARTITION_GET_BUFFER; - - procedure PARTITION_RETURN_BUFFER ( - ID : in RTEMS.ID; - BUFFER : in RTEMS.ADDRESS; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end PARTITION_RETURN_BUFFER; - --- Region Manager - - procedure REGION_CREATE ( - NAME : in RTEMS.NAME; - STARTING_ADDRESS : in RTEMS.ADDRESS; - LENGTH : in RTEMS.UNSIGNED32; - PAGE_SIZE : in RTEMS.UNSIGNED32; - ATTRIBUTE_SET : in RTEMS.ATTRIBUTE; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end REGION_CREATE; - - procedure REGION_IDENT ( - NAME : in RTEMS.NAME; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end REGION_IDENT; - - procedure REGION_DELETE ( - ID : in RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end REGION_DELETE; - - procedure REGION_GET_SEGMENT ( - ID : in RTEMS.ID; - SIZE : in RTEMS.UNSIGNED32; - OPTION_SET : in RTEMS.OPTION; - TIMEOUT : in RTEMS.INTERVAL; - SEGMENT : out RTEMS.ADDRESS; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end REGION_GET_SEGMENT; - - procedure REGION_RETURN_SEGMENT ( - ID : in RTEMS.ID; - SEGMENT : in RTEMS.ADDRESS; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end REGION_RETURN_SEGMENT; - --- Dual Ported Memory Manager - - procedure PORT_CREATE ( - NAME : in RTEMS.NAME; - INTERNAL_START : in RTEMS.ADDRESS; - EXTERNAL_START : in RTEMS.ADDRESS; - LENGTH : in RTEMS.UNSIGNED32; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end PORT_CREATE; - - procedure PORT_IDENT ( - NAME : in RTEMS.NAME; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end PORT_IDENT; - - procedure PORT_DELETE ( - ID : in RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end PORT_DELETE; - - procedure PORT_EXTERNAL_TO_INTERNAL ( - ID : in RTEMS.ID; - EXTERNAL : in RTEMS.ADDRESS; - INTERNAL : out RTEMS.ADDRESS; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end PORT_EXTERNAL_TO_INTERNAL; - - procedure PORT_INTERNAL_TO_EXTERNAL ( - ID : in RTEMS.ID; - INTERNAL : in RTEMS.ADDRESS; - EXTERNAL : out RTEMS.ADDRESS; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end PORT_INTERNAL_TO_EXTERNAL; - --- Input/Output Manager - - procedure IO_INITIALIZE ( - MAJOR : in RTEMS.DEVICE_MAJOR_NUMBER; - MINOR : in RTEMS.DEVICE_MINOR_NUMBER; - ARGUMENT : in RTEMS.ADDRESS; - RETURN_VALUE : out RTEMS.UNSIGNED32; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end IO_INITIALIZE; - - procedure IO_OPEN ( - MAJOR : in RTEMS.DEVICE_MAJOR_NUMBER; - MINOR : in RTEMS.DEVICE_MINOR_NUMBER; - ARGUMENT : in RTEMS.ADDRESS; - RETURN_VALUE : out RTEMS.UNSIGNED32; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end IO_OPEN; - - procedure IO_CLOSE ( - MAJOR : in RTEMS.DEVICE_MAJOR_NUMBER; - MINOR : in RTEMS.DEVICE_MINOR_NUMBER; - ARGUMENT : in RTEMS.ADDRESS; - RETURN_VALUE : out RTEMS.UNSIGNED32; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end IO_CLOSE; - - procedure IO_READ ( - MAJOR : in RTEMS.DEVICE_MAJOR_NUMBER; - MINOR : in RTEMS.DEVICE_MINOR_NUMBER; - ARGUMENT : in RTEMS.ADDRESS; - RETURN_VALUE : out RTEMS.UNSIGNED32; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end IO_READ; - - procedure IO_WRITE ( - MAJOR : in RTEMS.DEVICE_MAJOR_NUMBER; - MINOR : in RTEMS.DEVICE_MINOR_NUMBER; - ARGUMENT : in RTEMS.ADDRESS; - RETURN_VALUE : out RTEMS.UNSIGNED32; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end IO_WRITE; - - procedure IO_CONTROL ( - MAJOR : in RTEMS.DEVICE_MAJOR_NUMBER; - MINOR : in RTEMS.DEVICE_MINOR_NUMBER; - ARGUMENT : in RTEMS.ADDRESS; - RETURN_VALUE : out RTEMS.UNSIGNED32; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end IO_CONTROL; - --- Fatal Error Manager - - procedure FATAL_ERROR_OCCURRED ( - THE_ERROR : in RTEMS.UNSIGNED32 - ) is - begin - - NULL; - - end FATAL_ERROR_OCCURRED; - --- Rate Monotonic Manager - - procedure RATE_MONOTONIC_CREATE ( - NAME : in RTEMS.NAME; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end RATE_MONOTONIC_CREATE; - - procedure RATE_MONOTONIC_IDENT ( - NAME : in RTEMS.NAME; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end RATE_MONOTONIC_IDENT; - - procedure RATE_MONOTONIC_DELETE ( - ID : in RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end RATE_MONOTONIC_DELETE; - - procedure RATE_MONOTONIC_CANCEL ( - ID : in RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end RATE_MONOTONIC_CANCEL; - - procedure RATE_MONOTONIC_PERIOD ( - ID : in RTEMS.ID; - LENGTH : in RTEMS.INTERVAL; - RESULT : out RTEMS.STATUS_CODES - ) is - begin - - RESULT := RTEMS.SUCCESSFUL; - - end RATE_MONOTONIC_PERIOD; - --- Multiprocessing Manager - - procedure MULTIPROCESSING_ANNOUNCE - is - begin - - NULL; - - end MULTIPROCESSING_ANNOUNCE; - -end DUMMY_RTEMS; diff --git a/c/src/ada-tests/tmtests/tmoverhd/dummy_rtems.ads b/c/src/ada-tests/tmtests/tmoverhd/dummy_rtems.ads deleted file mode 100644 index ccad73c0ef..0000000000 --- a/c/src/ada-tests/tmtests/tmoverhd/dummy_rtems.ads +++ /dev/null @@ -1,521 +0,0 @@ --- --- DUMMY_RTEMS / SPECIFICATION --- --- DESCRIPTION: --- --- This package contains specifications for stub routines --- which are used to time the invocation overhead incurred --- with an Ada application program invokes each RTEMS directive. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; - -package DUMMY_RTEMS is - --- Initialization Manager - - procedure INITIALIZE_EXECUTIVE ( - CONFIGURATION_TABLE : in RTEMS.CONFIGURATION_TABLE_POINTER; - CPU_TABLE : in RTEMS.CPU_TABLE_POINTER - ); - - procedure SHUTDOWN_EXECUTIVE ( - RESULT : in RTEMS.UNSIGNED32 - ); - --- Task Manager - - procedure TASK_CREATE ( - NAME : in RTEMS.NAME; - INITIAL_PRIORITY : in RTEMS.TASK_PRIORITY; - STACK_SIZE : in RTEMS.UNSIGNED32; - INITIAL_MODES : in RTEMS.MODE; - ATTRIBUTE_SET : in RTEMS.ATTRIBUTE; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure TASK_IDENT ( - NAME : in RTEMS.NAME; - NODE : in RTEMS.UNSIGNED32; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure TASK_START ( - ID : in RTEMS.ID; - ENTRY_POINT : in RTEMS.TASK_ENTRY; - ARGUMENT : in RTEMS.UNSIGNED32; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure TASK_RESTART ( - ID : in RTEMS.ID; - ARGUMENT : in RTEMS.UNSIGNED32; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure TASK_DELETE ( - ID : in RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure TASK_SUSPEND ( - ID : in RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure TASK_RESUME ( - ID : in RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure TASK_SET_PRIORITY ( - ID : in RTEMS.ID; - NEW_PRIORITY : in RTEMS.TASK_PRIORITY; - OLD_PRIORITY : out RTEMS.TASK_PRIORITY; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure TASK_MODE ( - MODE_SET : in RTEMS.MODE; - MASK : in RTEMS.MODE; - PREVIOUS_MODE_SET : out RTEMS.MODE; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure TASK_GET_NOTE ( - ID : in RTEMS.ID; - NOTEPAD : in RTEMS.NOTEPAD_INDEX; - NOTE : out RTEMS.UNSIGNED32; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure TASK_SET_NOTE ( - ID : in RTEMS.ID; - NOTEPAD : in RTEMS.NOTEPAD_INDEX; - NOTE : in RTEMS.UNSIGNED32; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure TASK_WAKE_WHEN ( - TIME_BUFFER : in RTEMS.TIME_OF_DAY; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure TASK_WAKE_AFTER ( - TICKS : in RTEMS.INTERVAL; - RESULT : out RTEMS.STATUS_CODES - ); - --- Interrupt Manager - - procedure INTERRUPT_CATCH ( - NEW_ISR_HANDLER : in RTEMS.ADDRESS; - VECTOR : in RTEMS.VECTOR_NUMBER; - OLD_ISR_HANDLER : out RTEMS.ADDRESS; - RESULT : out RTEMS.STATUS_CODES - ); - --- Clock Manager - - procedure CLOCK_GET ( - OPTION : in RTEMS.CLOCK_GET_OPTIONS; - TIME_BUFFER : in RTEMS.ADDRESS; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure CLOCK_SET ( - TIME_BUFFER : in RTEMS.TIME_OF_DAY; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure CLOCK_TICK ( - RESULT : out RTEMS.STATUS_CODES - ); - --- Timer Manager - - procedure TIMER_CREATE ( - NAME : in RTEMS.NAME; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure TIMER_DELETE ( - ID : in RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure TIMER_IDENT ( - NAME : in RTEMS.NAME; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure TIMER_FIRE_AFTER ( - ID : in RTEMS.ID; - TICKS : in RTEMS.INTERVAL; - ROUTINE : in RTEMS.TIMER_SERVICE_ROUTINE; - USER_DATA : in RTEMS.ADDRESS; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure TIMER_FIRE_WHEN ( - ID : in RTEMS.ID; - WALL_TIME : in RTEMS.TIME_OF_DAY; - ROUTINE : in RTEMS.TIMER_SERVICE_ROUTINE; - USER_DATA : in RTEMS.ADDRESS; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure TIMER_RESET ( - ID : in RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure TIMER_CANCEL ( - ID : in RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - --- Semaphore Manager - - procedure SEMAPHORE_CREATE ( - NAME : in RTEMS.NAME; - COUNT : in RTEMS.UNSIGNED32; - ATTRIBUTE_SET : in RTEMS.ATTRIBUTE; - PRIORITY_CEILING : in RTEMS.TASK_PRIORITY; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure SEMAPHORE_DELETE ( - ID : in RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure SEMAPHORE_IDENT ( - NAME : in RTEMS.NAME; - NODE : in RTEMS.UNSIGNED32; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure SEMAPHORE_OBTAIN ( - ID : in RTEMS.ID; - OPTION_SET : in RTEMS.OPTION; - TIMEOUT : in RTEMS.INTERVAL; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure SEMAPHORE_RELEASE ( - ID : in RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - --- Message Queue Manager - - procedure MESSAGE_QUEUE_CREATE ( - Name : in RTEMS.Name; - Count : in RTEMS.Unsigned32; - Max_Message_Size : in RTEMS.Unsigned32; - Attribute_Set : in RTEMS.Attribute; - ID : out RTEMS.ID; - Result : out RTEMS.Status_Codes - ); - - procedure MESSAGE_QUEUE_IDENT ( - NAME : in RTEMS.NAME; - NODE : in RTEMS.UNSIGNED32; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure MESSAGE_QUEUE_DELETE ( - ID : in RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure MESSAGE_QUEUE_SEND ( - ID : in RTEMS.ID; - BUFFER : in RTEMS.ADDRESS; - SIZE : in RTEMS.UNSIGNED32; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure MESSAGE_QUEUE_URGENT ( - ID : in RTEMS.ID; - BUFFER : in RTEMS.ADDRESS; - SIZE : in RTEMS.UNSIGNED32; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure MESSAGE_QUEUE_BROADCAST ( - ID : in RTEMS.ID; - BUFFER : in RTEMS.ADDRESS; - SIZE : in RTEMS.UNSIGNED32; - COUNT : out RTEMS.UNSIGNED32; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure MESSAGE_QUEUE_RECEIVE ( - ID : in RTEMS.ID; - BUFFER : in RTEMS.ADDRESS; - OPTION_SET : in RTEMS.OPTION; - TIMEOUT : in RTEMS.INTERVAL; - SIZE : out RTEMS.UNSIGNED32; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure MESSAGE_QUEUE_FLUSH ( - ID : in RTEMS.ID; - COUNT : out RTEMS.UNSIGNED32; - RESULT : out RTEMS.STATUS_CODES - ); - --- Event Manager - - procedure EVENT_SEND ( - ID : in RTEMS.ID; - EVENT_IN : in RTEMS.EVENT_SET; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure EVENT_RECEIVE ( - EVENT_IN : in RTEMS.EVENT_SET; - OPTION_SET : in RTEMS.OPTION; - TICKS : in RTEMS.INTERVAL; - EVENT_OUT : out RTEMS.EVENT_SET; - RESULT : out RTEMS.STATUS_CODES - ); - --- Signal Manager - - procedure SIGNAL_CATCH ( - ASR_HANDLER : in RTEMS.ASR_HANDLER; - MODE_SET : in RTEMS.MODE; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure SIGNAL_SEND ( - ID : in RTEMS.ID; - SIGNAL_SET : in RTEMS.SIGNAL_SET; - RESULT : out RTEMS.STATUS_CODES - ); - --- Partition Manager - - procedure PARTITION_CREATE ( - NAME : in RTEMS.NAME; - STARTING_ADDRESS : in RTEMS.ADDRESS; - LENGTH : in RTEMS.UNSIGNED32; - BUFFER_SIZE : in RTEMS.UNSIGNED32; - ATTRIBUTE_SET : in RTEMS.ATTRIBUTE; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure PARTITION_IDENT ( - NAME : in RTEMS.NAME; - NODE : in RTEMS.UNSIGNED32; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure PARTITION_DELETE ( - ID : in RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure PARTITION_GET_BUFFER ( - ID : in RTEMS.ID; - BUFFER : out RTEMS.ADDRESS; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure PARTITION_RETURN_BUFFER ( - ID : in RTEMS.ID; - BUFFER : in RTEMS.ADDRESS; - RESULT : out RTEMS.STATUS_CODES - ); - --- Region Manager - - procedure REGION_CREATE ( - NAME : in RTEMS.NAME; - STARTING_ADDRESS : in RTEMS.ADDRESS; - LENGTH : in RTEMS.UNSIGNED32; - PAGE_SIZE : in RTEMS.UNSIGNED32; - ATTRIBUTE_SET : in RTEMS.ATTRIBUTE; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure REGION_IDENT ( - NAME : in RTEMS.NAME; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure REGION_DELETE ( - ID : in RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure REGION_GET_SEGMENT ( - ID : in RTEMS.ID; - SIZE : in RTEMS.UNSIGNED32; - OPTION_SET : in RTEMS.OPTION; - TIMEOUT : in RTEMS.INTERVAL; - SEGMENT : out RTEMS.ADDRESS; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure REGION_RETURN_SEGMENT ( - ID : in RTEMS.ID; - SEGMENT : in RTEMS.ADDRESS; - RESULT : out RTEMS.STATUS_CODES - ); - --- Dual Ported Memory Manager - - procedure PORT_CREATE ( - NAME : in RTEMS.NAME; - INTERNAL_START : in RTEMS.ADDRESS; - EXTERNAL_START : in RTEMS.ADDRESS; - LENGTH : in RTEMS.UNSIGNED32; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure PORT_IDENT ( - NAME : in RTEMS.NAME; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure PORT_DELETE ( - ID : in RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure PORT_EXTERNAL_TO_INTERNAL ( - ID : in RTEMS.ID; - EXTERNAL : in RTEMS.ADDRESS; - INTERNAL : out RTEMS.ADDRESS; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure PORT_INTERNAL_TO_EXTERNAL ( - ID : in RTEMS.ID; - INTERNAL : in RTEMS.ADDRESS; - EXTERNAL : out RTEMS.ADDRESS; - RESULT : out RTEMS.STATUS_CODES - ); - --- Input/Output Manager - - procedure IO_INITIALIZE ( - MAJOR : in RTEMS.DEVICE_MAJOR_NUMBER; - MINOR : in RTEMS.DEVICE_MINOR_NUMBER; - ARGUMENT : in RTEMS.ADDRESS; - RETURN_VALUE : out RTEMS.UNSIGNED32; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure IO_OPEN ( - MAJOR : in RTEMS.DEVICE_MAJOR_NUMBER; - MINOR : in RTEMS.DEVICE_MINOR_NUMBER; - ARGUMENT : in RTEMS.ADDRESS; - RETURN_VALUE : out RTEMS.UNSIGNED32; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure IO_CLOSE ( - MAJOR : in RTEMS.DEVICE_MAJOR_NUMBER; - MINOR : in RTEMS.DEVICE_MINOR_NUMBER; - ARGUMENT : in RTEMS.ADDRESS; - RETURN_VALUE : out RTEMS.UNSIGNED32; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure IO_READ ( - MAJOR : in RTEMS.DEVICE_MAJOR_NUMBER; - MINOR : in RTEMS.DEVICE_MINOR_NUMBER; - ARGUMENT : in RTEMS.ADDRESS; - RETURN_VALUE : out RTEMS.UNSIGNED32; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure IO_WRITE ( - MAJOR : in RTEMS.DEVICE_MAJOR_NUMBER; - MINOR : in RTEMS.DEVICE_MINOR_NUMBER; - ARGUMENT : in RTEMS.ADDRESS; - RETURN_VALUE : out RTEMS.UNSIGNED32; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure IO_CONTROL ( - MAJOR : in RTEMS.DEVICE_MAJOR_NUMBER; - MINOR : in RTEMS.DEVICE_MINOR_NUMBER; - ARGUMENT : in RTEMS.ADDRESS; - RETURN_VALUE : out RTEMS.UNSIGNED32; - RESULT : out RTEMS.STATUS_CODES - ); - --- Fatal Error Manager - - procedure FATAL_ERROR_OCCURRED ( - THE_ERROR : in RTEMS.UNSIGNED32 - ); - --- Rate Monotonic Manager - - procedure RATE_MONOTONIC_CREATE ( - NAME : in RTEMS.NAME; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure RATE_MONOTONIC_IDENT ( - NAME : in RTEMS.NAME; - ID : out RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure RATE_MONOTONIC_DELETE ( - ID : in RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure RATE_MONOTONIC_CANCEL ( - ID : in RTEMS.ID; - RESULT : out RTEMS.STATUS_CODES - ); - - procedure RATE_MONOTONIC_PERIOD ( - ID : in RTEMS.ID; - LENGTH : in RTEMS.INTERVAL; - RESULT : out RTEMS.STATUS_CODES - ); - --- Multiprocessing Manager - - procedure MULTIPROCESSING_ANNOUNCE; - -end DUMMY_RTEMS; diff --git a/c/src/ada-tests/tmtests/tmoverhd/tmoverhd.adb b/c/src/ada-tests/tmtests/tmoverhd/tmoverhd.adb deleted file mode 100644 index 50066a949c..0000000000 --- a/c/src/ada-tests/tmtests/tmoverhd/tmoverhd.adb +++ /dev/null @@ -1,57 +0,0 @@ --- --- MAIN / BODY --- --- DESCRIPTION: --- --- This is the entry point for Test TMOVERHD of the Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with TMTEST; -with TEST_SUPPORT; - -procedure TMOVERHD is - INIT_ID : RTEMS.ID; - STATUS : RTEMS.STATUS_CODES; -begin - - RTEMS.TASK_CREATE( - RTEMS.BUILD_NAME( 'I', 'N', 'I', 'T' ), - 1, - RTEMS.MINIMUM_STACK_SIZE, - RTEMS.NO_PREEMPT, - RTEMS.DEFAULT_ATTRIBUTES, - INIT_ID, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF INIT" ); - - - RTEMS.TASK_START( - INIT_ID, - TMTEST.INIT'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" ); - - loop - delay 120.0; - end loop; - -end TMOVERHD; - diff --git a/c/src/ada-tests/tmtests/tmoverhd/tmtest.adb b/c/src/ada-tests/tmtests/tmoverhd/tmtest.adb deleted file mode 100644 index 2faf4bb226..0000000000 --- a/c/src/ada-tests/tmtests/tmoverhd/tmtest.adb +++ /dev/null @@ -1,1564 +0,0 @@ --- --- TMTEST / BODY --- --- DESCRIPTION: --- --- This package is the implementation of Calling Overhead Test of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with DUMMY_RTEMS; -with INTERFACES; use INTERFACES; -with RTEMS; -with TEST_SUPPORT; -with TEXT_IO; -with TIME_TEST_SUPPORT; -with UNSIGNED32_IO; - -package body TMTEST is - ---PAGE --- --- INIT --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - STATUS : RTEMS.STATUS_CODES; - begin - - TEXT_IO.NEW_LINE( 2 ); - TEXT_IO.PUT_LINE( "*** TIME TEST OVERHEAD ***" ); - - TIMER_DRIVER.SET_FIND_AVERAGE_OVERHEAD( TRUE ); - - TMTEST.TASK_NAME( 1 ) := RTEMS.BUILD_NAME( 'T', 'A', '1', ' ' ); - - RTEMS.TASK_CREATE( - TMTEST.TASK_NAME( 1 ), - 254, - 2048, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - TMTEST.TASK_ID( 1 ), - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF TA1" ); - - RTEMS.TASK_START( - TMTEST.TASK_ID( 1 ), - TMTEST.TASK_1'ACCESS, - 0, - STATUS - ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF TA1" ); - - RTEMS.TASK_DELETE( RTEMS.SELF, STATUS ); - TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" ); - - end INIT; - ---PAGE --- --- TIMER_HANDLER --- - - procedure TIMER_HANDLER ( - IGNORED_ID : in RTEMS.ID; - IGNORED_ADDRESS : in RTEMS.ADDRESS - ) is - begin - - NULL; - - end TIMER_HANDLER; - ---PAGE --- --- ISR_HANDLER --- - - procedure ISR_HANDLER ( - VECTOR : in RTEMS.VECTOR_NUMBER - ) is - begin - - NULL; - - end ISR_HANDLER; - ---PAGE --- --- ASR_HANDLER --- - - procedure ASR_HANDLER ( - SIGNALS : in RTEMS.SIGNAL_SET - ) is - begin - - NULL; - - end ASR_HANDLER; - ---PAGE --- --- TASK_1 --- - - CPU_TABLE : aliased RTEMS.CPU_TABLE; - - procedure TASK_1 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ) is - NAME : RTEMS.NAME; - INDEX : RTEMS.UNSIGNED32; - OVERHEAD : RTEMS.UNSIGNED32; - ID : RTEMS.ID; - IN_PRIORITY : RTEMS.TASK_PRIORITY; - OUT_PRIORITY : RTEMS.TASK_PRIORITY; - IN_MODE : RTEMS.MODE; - MASK : RTEMS.MODE; - OUT_MODE : RTEMS.MODE; - NOTE : RTEMS.UNSIGNED32; - TIME : RTEMS.TIME_OF_DAY; - TIMEOUT : RTEMS.INTERVAL; - SIGNALS : RTEMS.SIGNAL_SET; - ADDRESS_1 : RTEMS.ADDRESS; - EVENTS : RTEMS.SIGNAL_SET; - BUFFER : TMTEST.BUFFER; - BUFFER_POINTER : RTEMS.ADDRESS; - MESSAGE_SIZE : RTEMS.UNSIGNED32; - COUNT : RTEMS.UNSIGNED32; - MAJOR : RTEMS.DEVICE_MAJOR_NUMBER; - MINOR : RTEMS.DEVICE_MINOR_NUMBER; - IO_RESULT : RTEMS.UNSIGNED32; - ERROR : RTEMS.UNSIGNED32; - STATUS : RTEMS.STATUS_CODES; - begin - - NAME := RTEMS.BUILD_NAME( 'N', 'A', 'M', 'E' ); - - BUFFER_POINTER := BUFFER'ADDRESS; - --- INITIALIZE_EXECUTIVE - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.INITIALIZE_EXECUTIVE( - RTEMS.CONFIGURATION, - CPU_TABLE'ACCESS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "INITIALIZE_EXECUTIVE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- SHUTDOWN_EXECUTIVE - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.SHUTDOWN_EXECUTIVE( ERROR ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "SHUTDOWN_EXECUTIVE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- TASK_CREATE - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.TASK_CREATE( - NAME, - IN_PRIORITY, - 2048, - RTEMS.DEFAULT_MODES, - RTEMS.DEFAULT_ATTRIBUTES, - ID, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_CREATE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- TASK_IDENT - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.TASK_IDENT( - NAME, - RTEMS.SEARCH_ALL_NODES, - ID, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_IDENT", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- TASK_START - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.TASK_START( ID, TMTEST.TASK_1'ACCESS, 0, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_START", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- TASK_RESTART - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.TASK_RESTART( ID, 0, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_RESTART", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- TASK_DELETE - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.TASK_DELETE( ID, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_DELETE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- TASK_SUSPEND - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.TASK_SUSPEND( ID, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_SUSPEND", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- TASK_RESUME - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.TASK_RESUME( ID, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_RESUME", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- TASK_SET_PRIORITY - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.TASK_SET_PRIORITY( - ID, - IN_PRIORITY, - OUT_PRIORITY, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_SET_PRIORITY", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- TASK_MODE - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.TASK_MODE( - IN_MODE, - MASK, - OUT_MODE, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_MODE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- TASK_GET_NOTE - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.TASK_GET_NOTE( ID, 1, NOTE, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_GET_NOTE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- TASK_SET_NOTE - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.TASK_SET_NOTE( ID, 1, NOTE, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_SET_NOTE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- TASK_WAKE_WHEN - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.TASK_WAKE_WHEN( TIME, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_WAKE_WHEN", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- TASK_WAKE_AFTER - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.TASK_WAKE_AFTER( TIMEOUT, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TASK_WAKE_AFTER", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- INTERRUPT_CATCH - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.INTERRUPT_CATCH( - TMTEST.ISR_HANDLER'ADDRESS, - RTEMS.VECTOR_NUMBER'FIRST, - ADDRESS_1, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "INTERRUPT_CATCH", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- CLOCK_GET - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.CLOCK_GET( RTEMS.CLOCK_GET_TOD, TIME'ADDRESS, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "CLOCK_GET", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- CLOCK_SET - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.CLOCK_SET( TIME, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "CLOCK_SET", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- CLOCK_TICK - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.CLOCK_TICK( STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "CLOCK_TICK", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - -TEST_SUPPORT.PAUSE; - --- TIMER_CREATE - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.TIMER_CREATE( NAME, ID, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TIMER_CREATE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- TIMER_DELETE - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.TIMER_DELETE( ID, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TIMER_DELETE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- TIMER_IDENT - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.TIMER_IDENT( - NAME, - ID, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TIMER_IDENT", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- TIMER_FIRE_AFTER - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.TIMER_FIRE_AFTER( - ID, - TIMEOUT, - TMTEST.TIMER_HANDLER'ACCESS, - RTEMS.NULL_ADDRESS, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TIMER_FIRE_AFTER", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- TIMER_FIRE_WHEN - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.TIMER_FIRE_WHEN( - ID, - TIME, - TMTEST.TIMER_HANDLER'ACCESS, - RTEMS.NULL_ADDRESS, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TIMER_FIRE_WHEN", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- TIMER_RESET - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.TIMER_RESET( ID, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TIMER_RESET", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- TIMER_CANCEL - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.TIMER_CANCEL( ID, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "TIMER_CANCEL", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- SEMAPHORE_CREATE - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.SEMAPHORE_CREATE( - NAME, - 128, - RTEMS.DEFAULT_ATTRIBUTES, - RTEMS.NO_PRIORITY, - ID, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "SEMAPHORE_CREATE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- SEMAPHORE_DELETE - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.SEMAPHORE_DELETE( ID, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "SEMAPHORE_DELETE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- SEMAPHORE_IDENT - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.SEMAPHORE_IDENT( - NAME, - RTEMS.SEARCH_ALL_NODES, - ID, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "SEMAPHORE_IDENT", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- SEMAPHORE_OBTAIN - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.SEMAPHORE_OBTAIN( - ID, - RTEMS.DEFAULT_OPTIONS, - TIMEOUT, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "SEMAPHORE_OBTAIN", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- SEMAPHORE_RELEASE - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.SEMAPHORE_RELEASE( ID, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "SEMAPHORE_RELEASE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- MESSAGE_QUEUE_CREATE - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.MESSAGE_QUEUE_CREATE( - NAME, - 128, - 16, - RTEMS.DEFAULT_ATTRIBUTES, - ID, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "MESSAGE_QUEUE_CREATE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- MESSAGE_QUEUE_IDENT - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.MESSAGE_QUEUE_IDENT( - NAME, - RTEMS.SEARCH_ALL_NODES, - ID, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "MESSAGE_QUEUE_IDENT", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- MESSAGE_QUEUE_DELETE - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.MESSAGE_QUEUE_DELETE( ID, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "MESSAGE_QUEUE_DELETE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- MESSAGE_QUEUE_SEND - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.MESSAGE_QUEUE_SEND( ID, BUFFER_POINTER, 16, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "MESSAGE_QUEUE_SEND", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- MESSAGE_QUEUE_URGENT - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.MESSAGE_QUEUE_URGENT( ID, BUFFER_POINTER, 16, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "MESSAGE_QUEUE_URGENT", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- MESSAGE_QUEUE_BROADCAST - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.MESSAGE_QUEUE_BROADCAST( - ID, - BUFFER_POINTER, - 16, - COUNT, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "MESSAGE_QUEUE_BROADCAST", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- MESSAGE_QUEUE_RECEIVE - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.MESSAGE_QUEUE_RECEIVE( - ID, - BUFFER_POINTER, - RTEMS.DEFAULT_OPTIONS, - TIMEOUT, - MESSAGE_SIZE, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "MESSAGE_QUEUE_RECEIVE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- MESSAGE_QUEUE_FLUSH - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.MESSAGE_QUEUE_FLUSH( ID, COUNT, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "MESSAGE_QUEUE_FLUSH", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - -TEST_SUPPORT.PAUSE; - --- EVENT_SEND - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.EVENT_SEND( ID, EVENTS, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "EVENT_SEND", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- EVENT_RECEIVE - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.EVENT_RECEIVE( - RTEMS.EVENT_16, - EVENTS, - RTEMS.DEFAULT_OPTIONS, - TIMEOUT, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "EVENT_RECEIVE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- SIGNAL_CATCH - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.SIGNAL_CATCH( - TMTEST.ASR_HANDLER'ACCESS, - RTEMS.DEFAULT_MODES, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "SIGNAL_CATCH", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- SIGNAL_SEND - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.SIGNAL_SEND( ID, SIGNALS, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "SIGNAL_SEND", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- PARTITION_CREATE - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.PARTITION_CREATE( - NAME, - TMTEST.MEMORY_AREA'ADDRESS, - 2048, - 128, - RTEMS.DEFAULT_ATTRIBUTES, - ID, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "PARTITION_CREATE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- PARTITION_IDENT - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.PARTITION_IDENT( - NAME, - RTEMS.SEARCH_ALL_NODES, - ID, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "PARTITION_IDENT", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- PARTITION_DELETE - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.PARTITION_DELETE( ID, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "PARTITION_DELETE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- PARTITION_GET_BUFFER - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.PARTITION_GET_BUFFER( ID, ADDRESS_1, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "PARTITION_GET_BUFFER", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- PARTITION_RETURN_BUFFER - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.PARTITION_RETURN_BUFFER( ID, ADDRESS_1, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "PARTITION_RETURN_BUFFER", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- REGION_CREATE - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.REGION_CREATE( - NAME, - TMTEST.MEMORY_AREA'ADDRESS, - 2048, - 128, - RTEMS.DEFAULT_ATTRIBUTES, - ID, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "REGION_CREATE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- REGION_IDENT - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.REGION_IDENT( - NAME, - ID, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "REGION_IDENT", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- REGION_DELETE - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.REGION_DELETE( ID, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "REGION_DELETE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- REGION_GET_SEGMENT - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.REGION_GET_SEGMENT( - ID, - 243, - RTEMS.DEFAULT_OPTIONS, - TIMEOUT, - ADDRESS_1, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "REGION_GET_SEGMENT", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- REGION_RETURN_SEGMENT - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.REGION_RETURN_SEGMENT( ID, ADDRESS_1, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "REGION_RETURN_SEGMENT", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- PORT_CREATE - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.PORT_CREATE( - NAME, - TMTEST.INTERNAL_PORT_AREA'ADDRESS, - TMTEST.EXTERNAL_PORT_AREA'ADDRESS, - TMTEST.INTERNAL_PORT_AREA'LENGTH, - ID, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "PORT_CREATE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- PORT_IDENT - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.PORT_IDENT( NAME, ID, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "PORT_IDENT", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- PORT_DELETE - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.PORT_DELETE( ID, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "PORT_DELETE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- PORT_EXTERNAL_TO_INTERNAL - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.PORT_EXTERNAL_TO_INTERNAL( - ID, - TMTEST.EXTERNAL_PORT_AREA( 7 )'ADDRESS, - ADDRESS_1, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "PORT_EXTERNAL_TO_INTERNAL", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- PORT_INTERNAL_TO_EXTERNAL - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.PORT_INTERNAL_TO_EXTERNAL( - ID, - TMTEST.INTERNAL_PORT_AREA( 7 )'ADDRESS, - ADDRESS_1, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "PORT_INTERNAL_TO_EXTERNAL", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - -TEST_SUPPORT.PAUSE; - --- IO_INITIALIZE - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.IO_INITIALIZE( - MAJOR, - MINOR, - ADDRESS_1, - IO_RESULT, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "IO_INITIALIZE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- IO_OPEN - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.IO_OPEN( - MAJOR, - MINOR, - ADDRESS_1, - IO_RESULT, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "IO_OPEN", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- IO_CLOSE - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.IO_CLOSE( - MAJOR, - MINOR, - ADDRESS_1, - IO_RESULT, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "IO_CLOSE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- IO_READ - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.IO_READ( - MAJOR, - MINOR, - ADDRESS_1, - IO_RESULT, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "IO_READ", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- IO_WRITE - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.IO_WRITE( - MAJOR, - MINOR, - ADDRESS_1, - IO_RESULT, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "IO_WRITE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- IO_CONTROL - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.IO_CONTROL( - MAJOR, - MINOR, - ADDRESS_1, - IO_RESULT, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "IO_CONTROL", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- FATAL_ERROR_OCCURRED - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.FATAL_ERROR_OCCURRED( ERROR ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "FATAL_ERROR_OCCURRED", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- RATE_MONOTONIC_CREATE - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.RATE_MONOTONIC_CREATE( NAME, ID, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "RATE_MONOTONIC_CREATE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- RATE_MONOTONIC_IDENT - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.RATE_MONOTONIC_IDENT( - NAME, - ID, - STATUS - ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "RATE_MONOTONIC_IDENT", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- RATE_MONOTONIC_DELETE - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.RATE_MONOTONIC_DELETE( ID, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "RATE_MONOTONIC_DELETE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- RATE_MONOTONIC_CANCEL - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.RATE_MONOTONIC_CANCEL( ID, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "RATE_MONOTONIC_CANCEL", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- RATE_MONOTONIC_PERIOD - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.RATE_MONOTONIC_PERIOD( ID, TIMEOUT, STATUS ); - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "RATE_MONOTONIC_PERIOD", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - --- MULTIPROCESSING_ANNOUNCE - - TIMER_DRIVER.INITIALIZE; - for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT - loop - DUMMY_RTEMS.MULTIPROCESSING_ANNOUNCE; - end loop; - TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER; - - TIME_TEST_SUPPORT.PUT_TIME( - "MULTIPROCESSING_ANNOUNCE", - TMTEST.END_TIME, - TIME_TEST_SUPPORT.OPERATION_COUNT, - OVERHEAD, - 0 - ); - - RTEMS.SHUTDOWN_EXECUTIVE( 0 ); - - end TASK_1; - -end TMTEST; diff --git a/c/src/ada-tests/tmtests/tmoverhd/tmtest.ads b/c/src/ada-tests/tmtests/tmoverhd/tmtest.ads deleted file mode 100644 index 52b4da559d..0000000000 --- a/c/src/ada-tests/tmtests/tmoverhd/tmtest.ads +++ /dev/null @@ -1,155 +0,0 @@ --- --- TMTEST / SPECIFICATION --- --- DESCRIPTION: --- --- This package is the specification for Calling Overhead Test of the RTEMS --- Timing Test Suite. --- --- DEPENDENCIES: --- --- --- --- COPYRIGHT (c) 1989-1997. --- On-Line Applications Research Corporation (OAR). --- Copyright assigned to U.S. Government, 1994. --- --- The license and distribution terms for this file may in --- the file LICENSE in this distribution or at --- http://www.OARcorp.com/rtems/license.html. --- --- $Id$ --- - -with RTEMS; -with SYSTEM; -with TIMER_DRIVER; -with System.Storage_Elements; - -package TMTEST is - --- --- Buffer Record similar to that used by RTEMS 3.2.1. Using this --- avoids changes to the test. --- - - type BUFFER is - record - FIELD1 : RTEMS.UNSIGNED32; -- TEMPORARY UNTIL VARIABLE LENGTH - FIELD2 : RTEMS.UNSIGNED32; - FIELD3 : RTEMS.UNSIGNED32; - FIELD4 : RTEMS.UNSIGNED32; - end record; - --- --- These arrays contain the IDs and NAMEs of all RTEMS tasks created --- by this test. --- - - TASK_ID : array ( RTEMS.UNSIGNED32 range 1 .. 3 ) of RTEMS.ID; - TASK_NAME : array ( RTEMS.UNSIGNED32 range 1 .. 3 ) of RTEMS.NAME; - --- --- The following variable is set to the execution time returned --- by the timer. --- - - END_TIME : RTEMS.UNSIGNED32; - --- --- The following area defines a memory area to be used as the --- internal address space of the port. --- - - INTERNAL_PORT_AREA_ADDRESS : constant System.Address := - System.Storage_Elements.To_Address(16#00001000#); - - INTERNAL_PORT_AREA : array ( RTEMS.UNSIGNED32 range 0 .. 255 ) - of RTEMS.UNSIGNED8; - for INTERNAL_PORT_AREA use at INTERNAL_PORT_AREA_ADDRESS; - --- --- The following area defines a memory area to be used as the --- external address space of the port. --- - - EXTERNAL_PORT_AREA_ADDRESS : constant System.Address := - System.Storage_Elements.To_Address(16#00002000#); - - EXTERNAL_PORT_AREA : array ( RTEMS.UNSIGNED32 range 0 .. 255 ) - of RTEMS.UNSIGNED8; - for EXTERNAL_PORT_AREA use at EXTERNAL_PORT_AREA_ADDRESS; - - --- --- The following area defines a memory area to be used as the --- memory space for a partition and later for a region. --- - - MEMORY_AREA : array ( RTEMS.UNSIGNED32 range 0 .. 255 ) of RTEMS.UNSIGNED8; - for MEMORY_AREA'ALIGNMENT use RTEMS.STRUCTURE_ALIGNMENT; - --- --- INIT --- --- DESCRIPTION: --- --- This RTEMS task initializes the application. --- - - procedure INIT ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - --- --- TIMER_HANDLER --- --- DESCRIPTION: --- --- This subprogram is a timer service routine. --- - - procedure TIMER_HANDLER ( - IGNORED_ID : in RTEMS.ID; - IGNORED_ADDRESS : in RTEMS.ADDRESS - ); - --- --- ISR_HANDLER --- --- DESCRIPTION: --- --- This subprogram is an interrupt service routine. --- - - procedure ISR_HANDLER ( - VECTOR : in RTEMS.VECTOR_NUMBER - ); - --- --- ASR_HANDLER --- --- DESCRIPTION: --- --- This subprogram is an asynchronous signal routine. --- - - procedure ASR_HANDLER ( - SIGNALS : in RTEMS.SIGNAL_SET - ); - --- --- TASK_1 --- --- DESCRIPTION: --- --- This RTEMS task is responsible for measuring and --- reporting the calling overhead for all RTEMS --- directives. --- - - procedure TASK_1 ( - ARGUMENT : in RTEMS.TASK_ARGUMENT - ); - -end TMTEST; |