source: rtems/c/src/ada-tests/tmtests/tmoverhd/tmtest.adb @ cbb09503

4.104.114.84.95
Last change on this file since cbb09503 was cbb09503, checked in by Joel Sherrill <joel.sherrill@…>, on 08/27/02 at 14:05:45

2002-08-27 Joel Sherrill <joel@…>

  • tmtests/tm20/tmtest.adb, tmtests/tmoverhd/tmtest.adb: Fixed call to RTEMS IO Manager services.
  • Property mode set to 100644
File size: 37.0 KB
Line 
1--
2--  TMTEST / BODY
3--
4--  DESCRIPTION:
5--
6--  This package is the implementation of Calling Overhead Test 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 DUMMY_RTEMS;
25with INTERFACES; use INTERFACES;
26with RTEMS;
27with TEST_SUPPORT;
28with TEXT_IO;
29with TIME_TEST_SUPPORT;
30with UNSIGNED32_IO;
31
32package body TMTEST is
33
34--PAGE
35--
36--  INIT
37--
38
39   procedure INIT (
40      ARGUMENT : in     RTEMS.TASK_ARGUMENT
41   ) is
42      STATUS : RTEMS.STATUS_CODES;
43   begin
44
45      TEXT_IO.NEW_LINE( 2 );
46      TEXT_IO.PUT_LINE( "*** TIME TEST OVERHEAD ***" );
47
48      TIMER_DRIVER.SET_FIND_AVERAGE_OVERHEAD( TRUE );
49
50      TMTEST.TASK_NAME( 1 ) := RTEMS.BUILD_NAME(  'T', 'A', '1', ' ' );
51
52      RTEMS.TASK_CREATE(
53         TMTEST.TASK_NAME( 1 ),
54         254,
55         2048,
56         RTEMS.DEFAULT_MODES,
57         RTEMS.DEFAULT_ATTRIBUTES,
58         TMTEST.TASK_ID( 1 ),
59         STATUS
60      );
61      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF TA1" );
62
63      RTEMS.TASK_START(
64         TMTEST.TASK_ID( 1 ),
65         TMTEST.TASK_1'ACCESS,
66         0,
67         STATUS
68      );
69      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF TA1" );
70
71      RTEMS.TASK_DELETE( RTEMS.SELF, STATUS );
72      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" );
73
74   end INIT;
75
76--PAGE
77--
78--  TIMER_HANDLER
79--
80
81   procedure TIMER_HANDLER (
82      IGNORED_ID      : in     RTEMS.ID;
83      IGNORED_ADDRESS : in     RTEMS.ADDRESS
84   ) is
85   begin
86
87      NULL;
88
89   end TIMER_HANDLER;
90
91--PAGE
92--
93--  ISR_HANDLER
94--
95
96   procedure ISR_HANDLER (
97      VECTOR : in     RTEMS.VECTOR_NUMBER
98   ) is
99   begin
100
101      NULL;
102
103   end ISR_HANDLER;
104
105--PAGE
106--
107--  ASR_HANDLER
108--
109
110   procedure ASR_HANDLER (
111      SIGNALS : in     RTEMS.SIGNAL_SET
112   ) is
113   begin
114
115      NULL;
116
117   end ASR_HANDLER;
118
119--PAGE
120--
121--  TASK_1
122--
123
124   CPU_TABLE      : aliased RTEMS.CPU_TABLE;
125
126   procedure TASK_1 (
127      ARGUMENT : in     RTEMS.TASK_ARGUMENT
128   ) is
129      NAME           : RTEMS.NAME;
130      INDEX          : RTEMS.UNSIGNED32;
131      OVERHEAD       : RTEMS.UNSIGNED32;
132      ID             : RTEMS.ID;
133      IN_PRIORITY    : RTEMS.TASK_PRIORITY;
134      OUT_PRIORITY   : RTEMS.TASK_PRIORITY;
135      IN_MODE        : RTEMS.MODE;
136      MASK           : RTEMS.MODE;
137      OUT_MODE       : RTEMS.MODE;
138      NOTE           : RTEMS.UNSIGNED32;
139      TIME           : RTEMS.TIME_OF_DAY;
140      TIMEOUT        : RTEMS.INTERVAL;
141      SIGNALS        : RTEMS.SIGNAL_SET;
142      ADDRESS_1      : RTEMS.ADDRESS;
143      EVENTS         : RTEMS.SIGNAL_SET;
144      BUFFER         : TMTEST.BUFFER;
145      BUFFER_POINTER : RTEMS.ADDRESS;
146      MESSAGE_SIZE   : RTEMS.UNSIGNED32;
147      COUNT          : RTEMS.UNSIGNED32;
148      MAJOR          : RTEMS.DEVICE_MAJOR_NUMBER;
149      MINOR          : RTEMS.DEVICE_MINOR_NUMBER;
150      ERROR          : RTEMS.UNSIGNED32;
151      STATUS         : RTEMS.STATUS_CODES;
152   begin
153
154      NAME := RTEMS.BUILD_NAME(  'N', 'A', 'M', 'E' );
155
156      BUFFER_POINTER := BUFFER'ADDRESS;
157     
158-- INITIALIZE_EXECUTIVE
159
160      TIMER_DRIVER.INITIALIZE;
161         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
162         loop
163            DUMMY_RTEMS.INITIALIZE_EXECUTIVE(
164               RTEMS.CONFIGURATION,
165               CPU_TABLE'ACCESS
166            );
167         end loop;
168      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
169
170      TIME_TEST_SUPPORT.PUT_TIME(
171         "INITIALIZE_EXECUTIVE",
172         TMTEST.END_TIME,
173         TIME_TEST_SUPPORT.OPERATION_COUNT,
174         OVERHEAD,
175         0
176      );
177
178-- SHUTDOWN_EXECUTIVE
179
180      TIMER_DRIVER.INITIALIZE;
181         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
182         loop
183            DUMMY_RTEMS.SHUTDOWN_EXECUTIVE( ERROR );
184         end loop;
185      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
186
187      TIME_TEST_SUPPORT.PUT_TIME(
188         "SHUTDOWN_EXECUTIVE",
189         TMTEST.END_TIME,
190         TIME_TEST_SUPPORT.OPERATION_COUNT,
191         OVERHEAD,
192         0
193      );
194
195-- TASK_CREATE
196
197      TIMER_DRIVER.INITIALIZE;
198         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
199         loop
200            DUMMY_RTEMS.TASK_CREATE(
201               NAME,
202               IN_PRIORITY,
203               2048,
204               RTEMS.DEFAULT_MODES,
205               RTEMS.DEFAULT_ATTRIBUTES,
206               ID,
207               STATUS
208            );
209         end loop;
210      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
211
212      TIME_TEST_SUPPORT.PUT_TIME(
213         "TASK_CREATE",
214         TMTEST.END_TIME,
215         TIME_TEST_SUPPORT.OPERATION_COUNT,
216         OVERHEAD,
217         0
218      );
219
220-- TASK_IDENT
221
222      TIMER_DRIVER.INITIALIZE;
223         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
224         loop
225            DUMMY_RTEMS.TASK_IDENT(
226               NAME,
227               RTEMS.SEARCH_ALL_NODES,
228               ID,
229               STATUS
230            );
231         end loop;
232      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
233
234      TIME_TEST_SUPPORT.PUT_TIME(
235         "TASK_IDENT",
236         TMTEST.END_TIME,
237         TIME_TEST_SUPPORT.OPERATION_COUNT,
238         OVERHEAD,
239         0
240      );
241
242-- TASK_START
243
244      TIMER_DRIVER.INITIALIZE;
245         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
246         loop
247            DUMMY_RTEMS.TASK_START( ID, TMTEST.TASK_1'ACCESS, 0, STATUS );
248         end loop;
249      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
250
251      TIME_TEST_SUPPORT.PUT_TIME(
252         "TASK_START",
253         TMTEST.END_TIME,
254         TIME_TEST_SUPPORT.OPERATION_COUNT,
255         OVERHEAD,
256         0
257      );
258
259-- TASK_RESTART
260
261      TIMER_DRIVER.INITIALIZE;
262         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
263         loop
264            DUMMY_RTEMS.TASK_RESTART( ID, 0, STATUS );
265         end loop;
266      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
267
268      TIME_TEST_SUPPORT.PUT_TIME(
269         "TASK_RESTART",
270         TMTEST.END_TIME,
271         TIME_TEST_SUPPORT.OPERATION_COUNT,
272         OVERHEAD,
273         0
274      );
275
276-- TASK_DELETE
277
278      TIMER_DRIVER.INITIALIZE;
279         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
280         loop
281            DUMMY_RTEMS.TASK_DELETE( ID, STATUS );
282         end loop;
283      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
284
285      TIME_TEST_SUPPORT.PUT_TIME(
286         "TASK_DELETE",
287         TMTEST.END_TIME,
288         TIME_TEST_SUPPORT.OPERATION_COUNT,
289         OVERHEAD,
290         0
291      );
292
293-- TASK_SUSPEND
294
295      TIMER_DRIVER.INITIALIZE;
296         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
297         loop
298            DUMMY_RTEMS.TASK_SUSPEND( ID, STATUS );
299         end loop;
300      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
301
302      TIME_TEST_SUPPORT.PUT_TIME(
303         "TASK_SUSPEND",
304         TMTEST.END_TIME,
305         TIME_TEST_SUPPORT.OPERATION_COUNT,
306         OVERHEAD,
307         0
308      );
309
310-- TASK_RESUME
311
312      TIMER_DRIVER.INITIALIZE;
313         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
314         loop
315            DUMMY_RTEMS.TASK_RESUME( ID, STATUS );
316         end loop;
317      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
318
319      TIME_TEST_SUPPORT.PUT_TIME(
320         "TASK_RESUME",
321         TMTEST.END_TIME,
322         TIME_TEST_SUPPORT.OPERATION_COUNT,
323         OVERHEAD,
324         0
325      );
326
327-- TASK_SET_PRIORITY
328
329      TIMER_DRIVER.INITIALIZE;
330         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
331         loop
332            DUMMY_RTEMS.TASK_SET_PRIORITY(
333               ID,
334               IN_PRIORITY,
335               OUT_PRIORITY,
336               STATUS
337            );
338         end loop;
339      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
340
341      TIME_TEST_SUPPORT.PUT_TIME(
342         "TASK_SET_PRIORITY",
343         TMTEST.END_TIME,
344         TIME_TEST_SUPPORT.OPERATION_COUNT,
345         OVERHEAD,
346         0
347      );
348
349-- TASK_MODE
350
351      TIMER_DRIVER.INITIALIZE;
352         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
353         loop
354            DUMMY_RTEMS.TASK_MODE(
355               IN_MODE,
356               MASK,
357               OUT_MODE,
358               STATUS
359            );
360         end loop;
361      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
362
363      TIME_TEST_SUPPORT.PUT_TIME(
364         "TASK_MODE",
365         TMTEST.END_TIME,
366         TIME_TEST_SUPPORT.OPERATION_COUNT,
367         OVERHEAD,
368         0
369      );
370
371-- TASK_GET_NOTE
372
373      TIMER_DRIVER.INITIALIZE;
374         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
375         loop
376            DUMMY_RTEMS.TASK_GET_NOTE( ID, 1, NOTE, STATUS );
377         end loop;
378      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
379
380      TIME_TEST_SUPPORT.PUT_TIME(
381         "TASK_GET_NOTE",
382         TMTEST.END_TIME,
383         TIME_TEST_SUPPORT.OPERATION_COUNT,
384         OVERHEAD,
385         0
386      );
387
388-- TASK_SET_NOTE
389
390      TIMER_DRIVER.INITIALIZE;
391         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
392         loop
393            DUMMY_RTEMS.TASK_SET_NOTE( ID, 1, NOTE, STATUS );
394         end loop;
395      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
396
397      TIME_TEST_SUPPORT.PUT_TIME(
398         "TASK_SET_NOTE",
399         TMTEST.END_TIME,
400         TIME_TEST_SUPPORT.OPERATION_COUNT,
401         OVERHEAD,
402         0
403      );
404
405-- TASK_WAKE_WHEN
406
407      TIMER_DRIVER.INITIALIZE;
408         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
409         loop
410            DUMMY_RTEMS.TASK_WAKE_WHEN( TIME, STATUS );
411         end loop;
412      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
413
414      TIME_TEST_SUPPORT.PUT_TIME(
415         "TASK_WAKE_WHEN",
416         TMTEST.END_TIME,
417         TIME_TEST_SUPPORT.OPERATION_COUNT,
418         OVERHEAD,
419         0
420      );
421
422-- TASK_WAKE_AFTER
423
424      TIMER_DRIVER.INITIALIZE;
425         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
426         loop
427            DUMMY_RTEMS.TASK_WAKE_AFTER( TIMEOUT, STATUS );
428         end loop;
429      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
430
431      TIME_TEST_SUPPORT.PUT_TIME(
432         "TASK_WAKE_AFTER",
433         TMTEST.END_TIME,
434         TIME_TEST_SUPPORT.OPERATION_COUNT,
435         OVERHEAD,
436         0
437      );
438
439-- INTERRUPT_CATCH
440
441      TIMER_DRIVER.INITIALIZE;
442         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
443         loop
444            DUMMY_RTEMS.INTERRUPT_CATCH(
445               TMTEST.ISR_HANDLER'ADDRESS, 
446               RTEMS.VECTOR_NUMBER'FIRST,
447               ADDRESS_1,
448               STATUS
449            );
450         end loop;
451      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
452
453      TIME_TEST_SUPPORT.PUT_TIME(
454         "INTERRUPT_CATCH",
455         TMTEST.END_TIME,
456         TIME_TEST_SUPPORT.OPERATION_COUNT,
457         OVERHEAD,
458         0
459      );
460
461-- CLOCK_GET
462
463      TIMER_DRIVER.INITIALIZE;
464         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
465         loop
466            DUMMY_RTEMS.CLOCK_GET( RTEMS.CLOCK_GET_TOD, TIME'ADDRESS, STATUS );
467         end loop;
468      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
469
470      TIME_TEST_SUPPORT.PUT_TIME(
471         "CLOCK_GET",
472         TMTEST.END_TIME,
473         TIME_TEST_SUPPORT.OPERATION_COUNT,
474         OVERHEAD,
475         0
476      );
477
478-- CLOCK_SET
479
480      TIMER_DRIVER.INITIALIZE;
481         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
482         loop
483            DUMMY_RTEMS.CLOCK_SET( TIME, STATUS );
484         end loop;
485      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
486
487      TIME_TEST_SUPPORT.PUT_TIME(
488         "CLOCK_SET",
489         TMTEST.END_TIME,
490         TIME_TEST_SUPPORT.OPERATION_COUNT,
491         OVERHEAD,
492         0
493      );
494
495-- CLOCK_TICK
496
497      TIMER_DRIVER.INITIALIZE;
498         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
499         loop
500            DUMMY_RTEMS.CLOCK_TICK( STATUS );
501         end loop;
502      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
503
504      TIME_TEST_SUPPORT.PUT_TIME(
505         "CLOCK_TICK",
506         TMTEST.END_TIME,
507         TIME_TEST_SUPPORT.OPERATION_COUNT,
508         OVERHEAD,
509         0
510      );
511
512TEST_SUPPORT.PAUSE;
513
514-- TIMER_CREATE
515
516      TIMER_DRIVER.INITIALIZE;
517         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
518         loop
519            DUMMY_RTEMS.TIMER_CREATE( NAME, ID, STATUS );
520         end loop;
521      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
522
523      TIME_TEST_SUPPORT.PUT_TIME(
524         "TIMER_CREATE",
525         TMTEST.END_TIME,
526         TIME_TEST_SUPPORT.OPERATION_COUNT,
527         OVERHEAD,
528         0
529      );
530
531-- TIMER_DELETE
532
533      TIMER_DRIVER.INITIALIZE;
534         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
535         loop
536            DUMMY_RTEMS.TIMER_DELETE( ID, STATUS );
537         end loop;
538      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
539
540      TIME_TEST_SUPPORT.PUT_TIME(
541         "TIMER_DELETE",
542         TMTEST.END_TIME,
543         TIME_TEST_SUPPORT.OPERATION_COUNT,
544         OVERHEAD,
545         0
546      );
547
548-- TIMER_IDENT
549
550      TIMER_DRIVER.INITIALIZE;
551         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
552         loop
553            DUMMY_RTEMS.TIMER_IDENT(
554               NAME,
555               ID,
556               STATUS
557            );
558         end loop;
559      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
560
561      TIME_TEST_SUPPORT.PUT_TIME(
562         "TIMER_IDENT",
563         TMTEST.END_TIME,
564         TIME_TEST_SUPPORT.OPERATION_COUNT,
565         OVERHEAD,
566         0
567      );
568
569-- TIMER_FIRE_AFTER
570
571      TIMER_DRIVER.INITIALIZE;
572         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
573         loop
574            DUMMY_RTEMS.TIMER_FIRE_AFTER(
575               ID,
576               TIMEOUT,
577               TMTEST.TIMER_HANDLER'ACCESS,
578               RTEMS.NULL_ADDRESS,
579               STATUS
580            );
581         end loop;
582      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
583
584      TIME_TEST_SUPPORT.PUT_TIME(
585         "TIMER_FIRE_AFTER",
586         TMTEST.END_TIME,
587         TIME_TEST_SUPPORT.OPERATION_COUNT,
588         OVERHEAD,
589         0
590      );
591
592-- TIMER_FIRE_WHEN
593
594      TIMER_DRIVER.INITIALIZE;
595         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
596         loop
597            DUMMY_RTEMS.TIMER_FIRE_WHEN(
598               ID,
599               TIME,
600               TMTEST.TIMER_HANDLER'ACCESS,
601               RTEMS.NULL_ADDRESS,
602               STATUS
603            );
604         end loop;
605      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
606
607      TIME_TEST_SUPPORT.PUT_TIME(
608         "TIMER_FIRE_WHEN",
609         TMTEST.END_TIME,
610         TIME_TEST_SUPPORT.OPERATION_COUNT,
611         OVERHEAD,
612         0
613      );
614
615-- TIMER_RESET
616
617      TIMER_DRIVER.INITIALIZE;
618         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
619         loop
620            DUMMY_RTEMS.TIMER_RESET( ID, STATUS );
621         end loop;
622      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
623
624      TIME_TEST_SUPPORT.PUT_TIME(
625         "TIMER_RESET",
626         TMTEST.END_TIME,
627         TIME_TEST_SUPPORT.OPERATION_COUNT,
628         OVERHEAD,
629         0
630      );
631
632-- TIMER_CANCEL
633
634      TIMER_DRIVER.INITIALIZE;
635         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
636         loop
637            DUMMY_RTEMS.TIMER_CANCEL( ID, STATUS );
638         end loop;
639      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
640
641      TIME_TEST_SUPPORT.PUT_TIME(
642         "TIMER_CANCEL",
643         TMTEST.END_TIME,
644         TIME_TEST_SUPPORT.OPERATION_COUNT,
645         OVERHEAD,
646         0
647      );
648
649-- SEMAPHORE_CREATE
650
651      TIMER_DRIVER.INITIALIZE;
652         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
653         loop
654            DUMMY_RTEMS.SEMAPHORE_CREATE(
655               NAME,
656               128,
657               RTEMS.DEFAULT_ATTRIBUTES,
658               RTEMS.NO_PRIORITY,
659               ID,
660               STATUS
661            );
662         end loop;
663      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
664
665      TIME_TEST_SUPPORT.PUT_TIME(
666         "SEMAPHORE_CREATE",
667         TMTEST.END_TIME,
668         TIME_TEST_SUPPORT.OPERATION_COUNT,
669         OVERHEAD,
670         0
671      );
672
673-- SEMAPHORE_DELETE
674
675      TIMER_DRIVER.INITIALIZE;
676         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
677         loop
678            DUMMY_RTEMS.SEMAPHORE_DELETE( ID, STATUS );
679         end loop;
680      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
681
682      TIME_TEST_SUPPORT.PUT_TIME(
683         "SEMAPHORE_DELETE",
684         TMTEST.END_TIME,
685         TIME_TEST_SUPPORT.OPERATION_COUNT,
686         OVERHEAD,
687         0
688      );
689
690-- SEMAPHORE_IDENT
691
692      TIMER_DRIVER.INITIALIZE;
693         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
694         loop
695            DUMMY_RTEMS.SEMAPHORE_IDENT(
696               NAME,
697               RTEMS.SEARCH_ALL_NODES,
698               ID,
699               STATUS
700            );
701         end loop;
702      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
703
704      TIME_TEST_SUPPORT.PUT_TIME(
705         "SEMAPHORE_IDENT",
706         TMTEST.END_TIME,
707         TIME_TEST_SUPPORT.OPERATION_COUNT,
708         OVERHEAD,
709         0
710      );
711
712-- SEMAPHORE_OBTAIN
713
714      TIMER_DRIVER.INITIALIZE;
715         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
716         loop
717            DUMMY_RTEMS.SEMAPHORE_OBTAIN(
718               ID,
719               RTEMS.DEFAULT_OPTIONS,
720               TIMEOUT,
721               STATUS
722            );
723         end loop;
724      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
725
726      TIME_TEST_SUPPORT.PUT_TIME(
727         "SEMAPHORE_OBTAIN",
728         TMTEST.END_TIME,
729         TIME_TEST_SUPPORT.OPERATION_COUNT,
730         OVERHEAD,
731         0
732      );
733
734-- SEMAPHORE_RELEASE
735
736      TIMER_DRIVER.INITIALIZE;
737         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
738         loop
739            DUMMY_RTEMS.SEMAPHORE_RELEASE( ID, STATUS );
740         end loop;
741      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
742
743      TIME_TEST_SUPPORT.PUT_TIME(
744         "SEMAPHORE_RELEASE",
745         TMTEST.END_TIME,
746         TIME_TEST_SUPPORT.OPERATION_COUNT,
747         OVERHEAD,
748         0
749      );
750
751-- MESSAGE_QUEUE_CREATE
752
753      TIMER_DRIVER.INITIALIZE;
754         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
755         loop
756            DUMMY_RTEMS.MESSAGE_QUEUE_CREATE(
757               NAME,
758               128,
759               16,
760               RTEMS.DEFAULT_ATTRIBUTES,
761               ID,
762               STATUS
763            );
764         end loop;
765      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
766
767      TIME_TEST_SUPPORT.PUT_TIME(
768         "MESSAGE_QUEUE_CREATE",
769         TMTEST.END_TIME,
770         TIME_TEST_SUPPORT.OPERATION_COUNT,
771         OVERHEAD,
772         0
773      );
774
775-- MESSAGE_QUEUE_IDENT
776
777      TIMER_DRIVER.INITIALIZE;
778         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
779         loop
780            DUMMY_RTEMS.MESSAGE_QUEUE_IDENT(
781               NAME,
782               RTEMS.SEARCH_ALL_NODES,
783               ID,
784               STATUS
785            );
786         end loop;
787      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
788
789      TIME_TEST_SUPPORT.PUT_TIME(
790         "MESSAGE_QUEUE_IDENT",
791         TMTEST.END_TIME,
792         TIME_TEST_SUPPORT.OPERATION_COUNT,
793         OVERHEAD,
794         0
795      );
796
797-- MESSAGE_QUEUE_DELETE
798
799      TIMER_DRIVER.INITIALIZE;
800         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
801         loop
802            DUMMY_RTEMS.MESSAGE_QUEUE_DELETE( ID, STATUS );
803         end loop;
804      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
805
806      TIME_TEST_SUPPORT.PUT_TIME(
807         "MESSAGE_QUEUE_DELETE",
808         TMTEST.END_TIME,
809         TIME_TEST_SUPPORT.OPERATION_COUNT,
810         OVERHEAD,
811         0
812      );
813
814-- MESSAGE_QUEUE_SEND
815
816      TIMER_DRIVER.INITIALIZE;
817         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
818         loop
819            DUMMY_RTEMS.MESSAGE_QUEUE_SEND( ID, BUFFER_POINTER, 16, STATUS );
820         end loop;
821      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
822
823      TIME_TEST_SUPPORT.PUT_TIME(
824         "MESSAGE_QUEUE_SEND",
825         TMTEST.END_TIME,
826         TIME_TEST_SUPPORT.OPERATION_COUNT,
827         OVERHEAD,
828         0
829      );
830
831-- MESSAGE_QUEUE_URGENT
832
833      TIMER_DRIVER.INITIALIZE;
834         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
835         loop
836            DUMMY_RTEMS.MESSAGE_QUEUE_URGENT( ID, BUFFER_POINTER, 16, STATUS );
837         end loop;
838      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
839
840      TIME_TEST_SUPPORT.PUT_TIME(
841         "MESSAGE_QUEUE_URGENT",
842         TMTEST.END_TIME,
843         TIME_TEST_SUPPORT.OPERATION_COUNT,
844         OVERHEAD,
845         0
846      );
847
848-- MESSAGE_QUEUE_BROADCAST
849
850      TIMER_DRIVER.INITIALIZE;
851         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
852         loop
853            DUMMY_RTEMS.MESSAGE_QUEUE_BROADCAST(
854               ID,
855               BUFFER_POINTER,
856               16,
857               COUNT,
858               STATUS
859            );
860         end loop;
861      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
862
863      TIME_TEST_SUPPORT.PUT_TIME(
864         "MESSAGE_QUEUE_BROADCAST",
865         TMTEST.END_TIME,
866         TIME_TEST_SUPPORT.OPERATION_COUNT,
867         OVERHEAD,
868         0
869      );
870
871-- MESSAGE_QUEUE_RECEIVE
872
873      TIMER_DRIVER.INITIALIZE;
874         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
875         loop
876            DUMMY_RTEMS.MESSAGE_QUEUE_RECEIVE(
877               ID,
878               BUFFER_POINTER,
879               RTEMS.DEFAULT_OPTIONS,
880               TIMEOUT,
881               MESSAGE_SIZE,
882               STATUS
883            );
884         end loop;
885      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
886
887      TIME_TEST_SUPPORT.PUT_TIME(
888         "MESSAGE_QUEUE_RECEIVE",
889         TMTEST.END_TIME,
890         TIME_TEST_SUPPORT.OPERATION_COUNT,
891         OVERHEAD,
892         0
893      );
894
895-- MESSAGE_QUEUE_FLUSH
896
897      TIMER_DRIVER.INITIALIZE;
898         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
899         loop
900            DUMMY_RTEMS.MESSAGE_QUEUE_FLUSH( ID, COUNT, STATUS );
901         end loop;
902      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
903
904      TIME_TEST_SUPPORT.PUT_TIME(
905         "MESSAGE_QUEUE_FLUSH",
906         TMTEST.END_TIME,
907         TIME_TEST_SUPPORT.OPERATION_COUNT,
908         OVERHEAD,
909         0
910      );
911
912TEST_SUPPORT.PAUSE;
913
914-- EVENT_SEND
915
916      TIMER_DRIVER.INITIALIZE;
917         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
918         loop
919            DUMMY_RTEMS.EVENT_SEND( ID, EVENTS, STATUS );
920         end loop;
921      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
922
923      TIME_TEST_SUPPORT.PUT_TIME(
924         "EVENT_SEND",
925         TMTEST.END_TIME,
926         TIME_TEST_SUPPORT.OPERATION_COUNT,
927         OVERHEAD,
928         0
929      );
930
931-- EVENT_RECEIVE
932
933      TIMER_DRIVER.INITIALIZE;
934         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
935         loop
936            DUMMY_RTEMS.EVENT_RECEIVE(
937               RTEMS.EVENT_16,
938               EVENTS,
939               RTEMS.DEFAULT_OPTIONS,
940               TIMEOUT,
941               STATUS
942            );
943         end loop;
944      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
945
946      TIME_TEST_SUPPORT.PUT_TIME(
947         "EVENT_RECEIVE",
948         TMTEST.END_TIME,
949         TIME_TEST_SUPPORT.OPERATION_COUNT,
950         OVERHEAD,
951         0
952      );
953
954-- SIGNAL_CATCH
955
956      TIMER_DRIVER.INITIALIZE;
957         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
958         loop
959            DUMMY_RTEMS.SIGNAL_CATCH(
960               TMTEST.ASR_HANDLER'ACCESS,
961               RTEMS.DEFAULT_MODES,
962               STATUS
963            );
964         end loop;
965      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
966
967      TIME_TEST_SUPPORT.PUT_TIME(
968         "SIGNAL_CATCH",
969         TMTEST.END_TIME,
970         TIME_TEST_SUPPORT.OPERATION_COUNT,
971         OVERHEAD,
972         0
973      );
974
975-- SIGNAL_SEND
976
977      TIMER_DRIVER.INITIALIZE;
978         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
979         loop
980            DUMMY_RTEMS.SIGNAL_SEND( ID, SIGNALS, STATUS );
981         end loop;
982      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
983
984      TIME_TEST_SUPPORT.PUT_TIME(
985         "SIGNAL_SEND",
986         TMTEST.END_TIME,
987         TIME_TEST_SUPPORT.OPERATION_COUNT,
988         OVERHEAD,
989         0
990      );
991
992-- PARTITION_CREATE
993
994      TIMER_DRIVER.INITIALIZE;
995         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
996         loop
997            DUMMY_RTEMS.PARTITION_CREATE(
998               NAME,
999               TMTEST.MEMORY_AREA'ADDRESS,
1000               2048,
1001               128,
1002               RTEMS.DEFAULT_ATTRIBUTES,
1003               ID,
1004               STATUS
1005            );
1006         end loop;
1007      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1008
1009      TIME_TEST_SUPPORT.PUT_TIME(
1010         "PARTITION_CREATE",
1011         TMTEST.END_TIME,
1012         TIME_TEST_SUPPORT.OPERATION_COUNT,
1013         OVERHEAD,
1014         0
1015      );
1016
1017-- PARTITION_IDENT
1018
1019      TIMER_DRIVER.INITIALIZE;
1020         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1021         loop
1022            DUMMY_RTEMS.PARTITION_IDENT(
1023               NAME,
1024               RTEMS.SEARCH_ALL_NODES,
1025               ID,
1026               STATUS
1027            );
1028         end loop;
1029      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1030
1031      TIME_TEST_SUPPORT.PUT_TIME(
1032         "PARTITION_IDENT",
1033         TMTEST.END_TIME,
1034         TIME_TEST_SUPPORT.OPERATION_COUNT,
1035         OVERHEAD,
1036         0
1037      );
1038
1039-- PARTITION_DELETE
1040
1041      TIMER_DRIVER.INITIALIZE;
1042         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1043         loop
1044            DUMMY_RTEMS.PARTITION_DELETE( ID, STATUS );
1045         end loop;
1046      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1047
1048      TIME_TEST_SUPPORT.PUT_TIME(
1049         "PARTITION_DELETE",
1050         TMTEST.END_TIME,
1051         TIME_TEST_SUPPORT.OPERATION_COUNT,
1052         OVERHEAD,
1053         0
1054      );
1055
1056-- PARTITION_GET_BUFFER
1057
1058      TIMER_DRIVER.INITIALIZE;
1059         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1060         loop
1061            DUMMY_RTEMS.PARTITION_GET_BUFFER( ID, ADDRESS_1, STATUS );
1062         end loop;
1063      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1064
1065      TIME_TEST_SUPPORT.PUT_TIME(
1066         "PARTITION_GET_BUFFER",
1067         TMTEST.END_TIME,
1068         TIME_TEST_SUPPORT.OPERATION_COUNT,
1069         OVERHEAD,
1070         0
1071      );
1072
1073-- PARTITION_RETURN_BUFFER
1074
1075      TIMER_DRIVER.INITIALIZE;
1076         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1077         loop
1078            DUMMY_RTEMS.PARTITION_RETURN_BUFFER( ID, ADDRESS_1, STATUS );
1079         end loop;
1080      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1081
1082      TIME_TEST_SUPPORT.PUT_TIME(
1083         "PARTITION_RETURN_BUFFER",
1084         TMTEST.END_TIME,
1085         TIME_TEST_SUPPORT.OPERATION_COUNT,
1086         OVERHEAD,
1087         0
1088      );
1089
1090-- REGION_CREATE
1091
1092      TIMER_DRIVER.INITIALIZE;
1093         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1094         loop
1095            DUMMY_RTEMS.REGION_CREATE(
1096               NAME,
1097               TMTEST.MEMORY_AREA'ADDRESS,
1098               2048,
1099               128,
1100               RTEMS.DEFAULT_ATTRIBUTES,
1101               ID,
1102               STATUS
1103            );
1104         end loop;
1105      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1106
1107      TIME_TEST_SUPPORT.PUT_TIME(
1108         "REGION_CREATE",
1109         TMTEST.END_TIME,
1110         TIME_TEST_SUPPORT.OPERATION_COUNT,
1111         OVERHEAD,
1112         0
1113      );
1114
1115-- REGION_IDENT
1116
1117      TIMER_DRIVER.INITIALIZE;
1118         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1119         loop
1120            DUMMY_RTEMS.REGION_IDENT(
1121               NAME,
1122               ID,
1123               STATUS
1124            );
1125         end loop;
1126      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1127
1128      TIME_TEST_SUPPORT.PUT_TIME(
1129         "REGION_IDENT",
1130         TMTEST.END_TIME,
1131         TIME_TEST_SUPPORT.OPERATION_COUNT,
1132         OVERHEAD,
1133         0
1134      );
1135
1136-- REGION_DELETE
1137
1138      TIMER_DRIVER.INITIALIZE;
1139         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1140         loop
1141            DUMMY_RTEMS.REGION_DELETE( ID, STATUS );
1142         end loop;
1143      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1144
1145      TIME_TEST_SUPPORT.PUT_TIME(
1146         "REGION_DELETE",
1147         TMTEST.END_TIME,
1148         TIME_TEST_SUPPORT.OPERATION_COUNT,
1149         OVERHEAD,
1150         0
1151      );
1152
1153-- REGION_GET_SEGMENT
1154
1155      TIMER_DRIVER.INITIALIZE;
1156         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1157         loop
1158            DUMMY_RTEMS.REGION_GET_SEGMENT(
1159               ID,
1160               243,
1161               RTEMS.DEFAULT_OPTIONS,
1162               TIMEOUT,
1163               ADDRESS_1,
1164               STATUS
1165            );
1166         end loop;
1167      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1168
1169      TIME_TEST_SUPPORT.PUT_TIME(
1170         "REGION_GET_SEGMENT",
1171         TMTEST.END_TIME,
1172         TIME_TEST_SUPPORT.OPERATION_COUNT,
1173         OVERHEAD,
1174         0
1175      );
1176
1177-- REGION_RETURN_SEGMENT
1178
1179      TIMER_DRIVER.INITIALIZE;
1180         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1181         loop
1182            DUMMY_RTEMS.REGION_RETURN_SEGMENT( ID, ADDRESS_1, STATUS );
1183         end loop;
1184      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1185
1186      TIME_TEST_SUPPORT.PUT_TIME(
1187         "REGION_RETURN_SEGMENT",
1188         TMTEST.END_TIME,
1189         TIME_TEST_SUPPORT.OPERATION_COUNT,
1190         OVERHEAD,
1191         0
1192      );
1193
1194-- PORT_CREATE
1195
1196      TIMER_DRIVER.INITIALIZE;
1197         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1198         loop
1199            DUMMY_RTEMS.PORT_CREATE(
1200               NAME,
1201               TMTEST.INTERNAL_PORT_AREA'ADDRESS,
1202               TMTEST.EXTERNAL_PORT_AREA'ADDRESS,
1203               TMTEST.INTERNAL_PORT_AREA'LENGTH,
1204               ID,
1205               STATUS
1206            );
1207         end loop;
1208      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1209
1210      TIME_TEST_SUPPORT.PUT_TIME(
1211         "PORT_CREATE",
1212         TMTEST.END_TIME,
1213         TIME_TEST_SUPPORT.OPERATION_COUNT,
1214         OVERHEAD,
1215         0
1216      );
1217
1218-- PORT_IDENT
1219
1220      TIMER_DRIVER.INITIALIZE;
1221         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1222         loop
1223            DUMMY_RTEMS.PORT_IDENT( NAME, ID, STATUS );
1224         end loop;
1225      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1226
1227      TIME_TEST_SUPPORT.PUT_TIME(
1228         "PORT_IDENT",
1229         TMTEST.END_TIME,
1230         TIME_TEST_SUPPORT.OPERATION_COUNT,
1231         OVERHEAD,
1232         0
1233      );
1234
1235-- PORT_DELETE
1236
1237      TIMER_DRIVER.INITIALIZE;
1238         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1239         loop
1240            DUMMY_RTEMS.PORT_DELETE( ID, STATUS );
1241         end loop;
1242      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1243
1244      TIME_TEST_SUPPORT.PUT_TIME(
1245         "PORT_DELETE",
1246         TMTEST.END_TIME,
1247         TIME_TEST_SUPPORT.OPERATION_COUNT,
1248         OVERHEAD,
1249         0
1250      );
1251
1252-- PORT_EXTERNAL_TO_INTERNAL
1253
1254      TIMER_DRIVER.INITIALIZE;
1255         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1256         loop
1257            DUMMY_RTEMS.PORT_EXTERNAL_TO_INTERNAL(
1258               ID,
1259               TMTEST.EXTERNAL_PORT_AREA( 7 )'ADDRESS,
1260               ADDRESS_1,
1261               STATUS
1262            );
1263         end loop;
1264      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1265
1266      TIME_TEST_SUPPORT.PUT_TIME(
1267         "PORT_EXTERNAL_TO_INTERNAL",
1268         TMTEST.END_TIME,
1269         TIME_TEST_SUPPORT.OPERATION_COUNT,
1270         OVERHEAD,
1271         0
1272      );
1273
1274-- PORT_INTERNAL_TO_EXTERNAL
1275
1276      TIMER_DRIVER.INITIALIZE;
1277         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1278         loop
1279            DUMMY_RTEMS.PORT_INTERNAL_TO_EXTERNAL(
1280               ID,
1281               TMTEST.INTERNAL_PORT_AREA( 7 )'ADDRESS,
1282               ADDRESS_1,
1283               STATUS
1284            );
1285         end loop;
1286      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1287
1288      TIME_TEST_SUPPORT.PUT_TIME(
1289         "PORT_INTERNAL_TO_EXTERNAL",
1290         TMTEST.END_TIME,
1291         TIME_TEST_SUPPORT.OPERATION_COUNT,
1292         OVERHEAD,
1293         0
1294      );
1295
1296TEST_SUPPORT.PAUSE;
1297
1298-- IO_INITIALIZE
1299
1300      TIMER_DRIVER.INITIALIZE;
1301         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1302         loop
1303            DUMMY_RTEMS.IO_INITIALIZE(
1304               MAJOR,
1305               MINOR,
1306               ADDRESS_1,
1307               STATUS
1308            );
1309         end loop;
1310      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1311
1312      TIME_TEST_SUPPORT.PUT_TIME(
1313         "IO_INITIALIZE",
1314         TMTEST.END_TIME,
1315         TIME_TEST_SUPPORT.OPERATION_COUNT,
1316         OVERHEAD,
1317         0
1318      );
1319
1320-- IO_OPEN
1321
1322      TIMER_DRIVER.INITIALIZE;
1323         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1324         loop
1325            DUMMY_RTEMS.IO_OPEN(
1326               MAJOR,
1327               MINOR,
1328               ADDRESS_1,
1329               STATUS
1330            );
1331         end loop;
1332      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1333
1334      TIME_TEST_SUPPORT.PUT_TIME(
1335         "IO_OPEN",
1336         TMTEST.END_TIME,
1337         TIME_TEST_SUPPORT.OPERATION_COUNT,
1338         OVERHEAD,
1339         0
1340      );
1341
1342-- IO_CLOSE
1343
1344      TIMER_DRIVER.INITIALIZE;
1345         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1346         loop
1347            DUMMY_RTEMS.IO_CLOSE(
1348               MAJOR,
1349               MINOR,
1350               ADDRESS_1,
1351               STATUS
1352            );
1353         end loop;
1354      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1355
1356      TIME_TEST_SUPPORT.PUT_TIME(
1357         "IO_CLOSE",
1358         TMTEST.END_TIME,
1359         TIME_TEST_SUPPORT.OPERATION_COUNT,
1360         OVERHEAD,
1361         0
1362      );
1363
1364-- IO_READ
1365
1366      TIMER_DRIVER.INITIALIZE;
1367         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1368         loop
1369            DUMMY_RTEMS.IO_READ(
1370               MAJOR,
1371               MINOR,
1372               ADDRESS_1,
1373               STATUS
1374            );
1375         end loop;
1376      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1377
1378      TIME_TEST_SUPPORT.PUT_TIME(
1379         "IO_READ",
1380         TMTEST.END_TIME,
1381         TIME_TEST_SUPPORT.OPERATION_COUNT,
1382         OVERHEAD,
1383         0
1384      );
1385
1386-- IO_WRITE
1387
1388      TIMER_DRIVER.INITIALIZE;
1389         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1390         loop
1391            DUMMY_RTEMS.IO_WRITE(
1392               MAJOR,
1393               MINOR,
1394               ADDRESS_1,
1395               STATUS
1396            );
1397         end loop;
1398      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1399
1400      TIME_TEST_SUPPORT.PUT_TIME(
1401         "IO_WRITE",
1402         TMTEST.END_TIME,
1403         TIME_TEST_SUPPORT.OPERATION_COUNT,
1404         OVERHEAD,
1405         0
1406      );
1407
1408-- IO_CONTROL
1409
1410      TIMER_DRIVER.INITIALIZE;
1411         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1412         loop
1413            DUMMY_RTEMS.IO_CONTROL(
1414               MAJOR,
1415               MINOR,
1416               ADDRESS_1,
1417               STATUS
1418            );
1419         end loop;
1420      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1421
1422      TIME_TEST_SUPPORT.PUT_TIME(
1423         "IO_CONTROL",
1424         TMTEST.END_TIME,
1425         TIME_TEST_SUPPORT.OPERATION_COUNT,
1426         OVERHEAD,
1427         0
1428      );
1429
1430-- FATAL_ERROR_OCCURRED
1431
1432      TIMER_DRIVER.INITIALIZE;
1433         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1434         loop
1435            DUMMY_RTEMS.FATAL_ERROR_OCCURRED( ERROR );
1436         end loop;
1437      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1438
1439      TIME_TEST_SUPPORT.PUT_TIME(
1440         "FATAL_ERROR_OCCURRED",
1441         TMTEST.END_TIME,
1442         TIME_TEST_SUPPORT.OPERATION_COUNT,
1443         OVERHEAD,
1444         0
1445      );
1446
1447-- RATE_MONOTONIC_CREATE
1448
1449      TIMER_DRIVER.INITIALIZE;
1450         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1451         loop
1452            DUMMY_RTEMS.RATE_MONOTONIC_CREATE( NAME, ID, STATUS );
1453         end loop;
1454      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1455
1456      TIME_TEST_SUPPORT.PUT_TIME(
1457         "RATE_MONOTONIC_CREATE",
1458         TMTEST.END_TIME,
1459         TIME_TEST_SUPPORT.OPERATION_COUNT,
1460         OVERHEAD,
1461         0
1462      );
1463
1464-- RATE_MONOTONIC_IDENT
1465
1466      TIMER_DRIVER.INITIALIZE;
1467         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1468         loop
1469            DUMMY_RTEMS.RATE_MONOTONIC_IDENT(
1470               NAME,
1471               ID,
1472               STATUS
1473            );
1474         end loop;
1475      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1476
1477      TIME_TEST_SUPPORT.PUT_TIME(
1478         "RATE_MONOTONIC_IDENT",
1479         TMTEST.END_TIME,
1480         TIME_TEST_SUPPORT.OPERATION_COUNT,
1481         OVERHEAD,
1482         0
1483      );
1484
1485-- RATE_MONOTONIC_DELETE
1486
1487      TIMER_DRIVER.INITIALIZE;
1488         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1489         loop
1490            DUMMY_RTEMS.RATE_MONOTONIC_DELETE( ID, STATUS );
1491         end loop;
1492      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1493
1494      TIME_TEST_SUPPORT.PUT_TIME(
1495         "RATE_MONOTONIC_DELETE",
1496         TMTEST.END_TIME,
1497         TIME_TEST_SUPPORT.OPERATION_COUNT,
1498         OVERHEAD,
1499         0
1500      );
1501
1502-- RATE_MONOTONIC_CANCEL
1503
1504      TIMER_DRIVER.INITIALIZE;
1505         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1506         loop
1507            DUMMY_RTEMS.RATE_MONOTONIC_CANCEL( ID, STATUS );
1508         end loop;
1509      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1510
1511      TIME_TEST_SUPPORT.PUT_TIME(
1512         "RATE_MONOTONIC_CANCEL",
1513         TMTEST.END_TIME,
1514         TIME_TEST_SUPPORT.OPERATION_COUNT,
1515         OVERHEAD,
1516         0
1517      );
1518
1519-- RATE_MONOTONIC_PERIOD
1520
1521      TIMER_DRIVER.INITIALIZE;
1522         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1523         loop
1524            DUMMY_RTEMS.RATE_MONOTONIC_PERIOD( ID, TIMEOUT, STATUS );
1525         end loop;
1526      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1527
1528      TIME_TEST_SUPPORT.PUT_TIME(
1529         "RATE_MONOTONIC_PERIOD",
1530         TMTEST.END_TIME,
1531         TIME_TEST_SUPPORT.OPERATION_COUNT,
1532         OVERHEAD,
1533         0
1534      );
1535
1536-- MULTIPROCESSING_ANNOUNCE
1537
1538      TIMER_DRIVER.INITIALIZE;
1539         for INDEX in 1 .. TIME_TEST_SUPPORT.OPERATION_COUNT
1540         loop
1541            DUMMY_RTEMS.MULTIPROCESSING_ANNOUNCE;
1542         end loop;
1543      TMTEST.END_TIME := TIMER_DRIVER.READ_TIMER;
1544
1545      TIME_TEST_SUPPORT.PUT_TIME(
1546         "MULTIPROCESSING_ANNOUNCE",
1547         TMTEST.END_TIME,
1548         TIME_TEST_SUPPORT.OPERATION_COUNT,
1549         OVERHEAD,
1550         0
1551      );
1552
1553      RTEMS.SHUTDOWN_EXECUTIVE( 0 );
1554   
1555   end TASK_1;
1556
1557end TMTEST;
Note: See TracBrowser for help on using the repository browser.