source: rtems/c/src/ada-tests/tmtests/tm10/tmtest.ads @ bf9ae83

4.104.114.84.95
Last change on this file since bf9ae83 was bf9ae83, checked in by Joel Sherrill <joel.sherrill@…>, on Jun 2, 1997 at 8:32:11 PM

modified copyright notice to be the same as RTEMS 4.0.0.

changed the CVS ID string to be a "development" version.

  • Property mode set to 100644
File size: 3.3 KB
Line 
1--
2--  TMTEST / SPECIFICATION
3--
4--  DESCRIPTION:
5--
6--  This package is the specification for Test 10 of the RTEMS
7--  Timing Test Suite.
8--
9--  DEPENDENCIES:
10--
11-- 
12--
13--  COPYRIGHT (c) 1989-1997.
14--  On-Line Applications Research Corporation (OAR).
15--  Copyright assigned to U.S. Government, 1994.
16--
17--  The license and distribution terms for this file may in
18--  the file LICENSE in this distribution or at
19--  http://www.OARcorp.com/rtems/license.html.
20--
21--  $Id$
22--
23
24with TIMER_DRIVER;
25with RTEMS;
26
27package TMTEST is
28
29--
30--  The following is the ID of the message queue used for timing operations.
31--
32
33   QUEUE_ID  : RTEMS.ID;
34
35--
36--  The following variable is set to the execution time returned
37--  by the timer.
38--
39
40   END_TIME  : RTEMS.UNSIGNED32;
41
42--
43--  INIT
44--
45--  DESCRIPTION:
46--
47--  This RTEMS task initializes the application.
48--
49
50   procedure INIT (
51      ARGUMENT : in     RTEMS.TASK_ARGUMENT
52   );
53
54--
55--  TEST_INIT
56--
57--  DESCRIPTION:
58--
59--  This subprogram performs test initialization.  After initialization
60--  has been completed, the NO_WAIT case for MESSAGE_QUEUE_RECEIVE
61--  is timed and reported.
62--
63
64   procedure TEST_INIT;
65
66--
67--  HIGH_TASK
68--
69--  DESCRIPTION:
70--
71--  This RTEMS task is the highest priority task in the system. 
72--  It starts the timer and performs a blocking MESSAGE_QUEUE_RECEIVE.
73--
74
75   procedure HIGH_TASK (
76      ARGUMENT : in     RTEMS.TASK_ARGUMENT
77   );
78
79--
80--  MIDDLE_TASKS
81--
82--  DESCRIPTION:
83--
84--  These RTEMS tasks perform a blocking MESSAGE_QUEUE_RECEIVE.
85--
86
87   procedure MIDDLE_TASKS (
88      ARGUMENT : in     RTEMS.TASK_ARGUMENT
89   );
90
91--
92--  LOW_TASK
93--
94--  DESCRIPTION:
95--
96--  This RTEMS task stops the timer and reports the execution time
97--  of a blocking MESSAGE_QUEUE_RECEIVE.
98--
99
100   procedure LOW_TASK (
101      ARGUMENT : in     RTEMS.TASK_ARGUMENT
102   );
103
104--
105--  This is the Initialization Tasks Table for this test.
106--
107
108   INITIALIZATION_TASKS : aliased RTEMS.INITIALIZATION_TASKS_TABLE( 1 .. 1 ) := 
109   (1=>
110     (
111       RTEMS.BUILD_NAME( 'U', 'I', '1', ' ' ),        -- task name
112       2048,                                          -- stack size
113       1,                                             -- priority
114       RTEMS.DEFAULT_ATTRIBUTES,                      -- attributes
115       TMTEST.INIT'ACCESS,                            -- entry point
116       RTEMS.NO_PREEMPT,                              -- initial mode
117       0                                              -- argument list
118     )
119   );
120
121--
122--  This is the Configuration Table for this test.
123--
124
125   CONFIGURATION : aliased RTEMS.CONFIGURATION_TABLE := (
126      RTEMS.NULL_ADDRESS,        -- will be replaced by BSP
127      256 * 1024,                -- executive RAM size
128      110,                       -- maximum # tasks
129      0,                         -- maximum # timers
130      0,                         -- maximum # semaphores
131      1,                         -- maximum # message queues
132      100,                       -- maximum # messages
133      0,                         -- maximum # partitions
134      0,                         -- maximum # regions
135      0,                         -- maximum # dp memory areas
136      0,                         -- maximum # periods
137      0,                         -- maximum # user extensions
138      RTEMS.MILLISECONDS_TO_MICROSECONDS(10), -- # us in a tick
139      0                          -- # ticks in a timeslice
140  );
141
142end TMTEST;
Note: See TracBrowser for help on using the repository browser.