forked from Imagelibrary/rtems
105 lines
1.9 KiB
Ada
105 lines
1.9 KiB
Ada
--
|
|
-- 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;
|