2007-10-10 Glenn Humphrey <glenn.humphrey@OARcorp.com>

* configure.ac, samples/base_sp/base_sp.scn, samples/base_sp/config.h,
	samples/base_sp/sptest.adb, samples/hello/config.h,
	samples/ticker/config.h, samples/ticker/ticker.scn,
	sptests/Makefile.am, sptests/sp01/sp01.scn, sptests/sp02/config.h,
	sptests/sp02/sp02.scn, sptests/sp03/config.h, sptests/sp03/sp03.scn,
	sptests/sp04/sp04.scn, sptests/sp04/sptest.adb,
	sptests/sp05/config.h, sptests/sp05/sp05.scn, sptests/sp06/config.h,
	sptests/sp07/config.h, sptests/sp07/sp07.scn,
	sptests/sp07/sptest.adb, sptests/sp07/sptest.ads,
	sptests/sp08/config.h, sptests/sp08/sp08.scn,
	sptests/sp09/Makefile.am, sptests/sp09/config.h,
	sptests/sp09/sp09.scn, sptests/sp09/sptest.adb,
	sptests/sp09/sptest.ads, sptests/sp11/config.h,
	sptests/sp11/sp11.scn, sptests/sp12/config.h, sptests/sp12/sp12.scn,
	sptests/sp13/config.h, sptests/sp13/sp13.scn,
	sptests/sp13/sptest.adb, sptests/sp14/config.h,
	sptests/sp14/sp14.scn, sptests/sp15/config.h, sptests/sp15/sp15.scn,
	sptests/sp16/config.h, sptests/sp16/sp16.scn,
	sptests/sp16/sptest.adb, sptests/sp17/config.h,
	sptests/sp19/config.h, sptests/sp19/sp19.scn, sptests/sp20/config.h,
	sptests/sp20/sp20.scn, sptests/sp22/config.h, sptests/sp22/sp22.scn,
	sptests/sp23/config.h, sptests/sp23/sp23.scn, sptests/sp24/config.h,
	sptests/sp24/sp24.scn, sptests/sp25/config.h, sptests/sp25/sp25.scn,
	support/init.c, support/test_support.adb, support/test_support.ads,
	tmtests/tm09/config.h, tmtests/tm20/tmtest.adb,
	tmtests/tmoverhd/dummy_rtems.adb, tmtests/tmoverhd/dummy_rtems.ads,
	tmtests/tmoverhd/tmtest.adb, tmtests/tmoverhd/tmtest.ads: Updated
	tests so that they would all compile and run without errors. Some
	tests that are no longer valid using the current binding were
	removed. Also updated the .scn files to reflect the current test
	output.
	* sptests/sp21/.cvsignore, sptests/sp21/Makefile.am,
	sptests/sp21/config.h, sptests/sp21/sp21.adb, sptests/sp21/sp21.scn,
	sptests/sp21/sptest.adb, sptests/sp21/sptest.ads,
	sptests/spsize/.cvsignore, sptests/spsize/Makefile.am,
	sptests/spsize/spsize.adb, sptests/spsize/sptest.adb,
	sptests/spsize/sptest.ads: Removed.
This commit is contained in:
Glenn Humphrey
2007-10-10 20:58:48 +00:00
parent d14963bf94
commit ba3e1a4faf
78 changed files with 720 additions and 1869 deletions

View File

@@ -1,3 +1,43 @@
2007-10-10 Glenn Humphrey <glenn.humphrey@OARcorp.com>
* configure.ac, samples/base_sp/base_sp.scn, samples/base_sp/config.h,
samples/base_sp/sptest.adb, samples/hello/config.h,
samples/ticker/config.h, samples/ticker/ticker.scn,
sptests/Makefile.am, sptests/sp01/sp01.scn, sptests/sp02/config.h,
sptests/sp02/sp02.scn, sptests/sp03/config.h, sptests/sp03/sp03.scn,
sptests/sp04/sp04.scn, sptests/sp04/sptest.adb,
sptests/sp05/config.h, sptests/sp05/sp05.scn, sptests/sp06/config.h,
sptests/sp07/config.h, sptests/sp07/sp07.scn,
sptests/sp07/sptest.adb, sptests/sp07/sptest.ads,
sptests/sp08/config.h, sptests/sp08/sp08.scn,
sptests/sp09/Makefile.am, sptests/sp09/config.h,
sptests/sp09/sp09.scn, sptests/sp09/sptest.adb,
sptests/sp09/sptest.ads, sptests/sp11/config.h,
sptests/sp11/sp11.scn, sptests/sp12/config.h, sptests/sp12/sp12.scn,
sptests/sp13/config.h, sptests/sp13/sp13.scn,
sptests/sp13/sptest.adb, sptests/sp14/config.h,
sptests/sp14/sp14.scn, sptests/sp15/config.h, sptests/sp15/sp15.scn,
sptests/sp16/config.h, sptests/sp16/sp16.scn,
sptests/sp16/sptest.adb, sptests/sp17/config.h,
sptests/sp19/config.h, sptests/sp19/sp19.scn, sptests/sp20/config.h,
sptests/sp20/sp20.scn, sptests/sp22/config.h, sptests/sp22/sp22.scn,
sptests/sp23/config.h, sptests/sp23/sp23.scn, sptests/sp24/config.h,
sptests/sp24/sp24.scn, sptests/sp25/config.h, sptests/sp25/sp25.scn,
support/init.c, support/test_support.adb, support/test_support.ads,
tmtests/tm09/config.h, tmtests/tm20/tmtest.adb,
tmtests/tmoverhd/dummy_rtems.adb, tmtests/tmoverhd/dummy_rtems.ads,
tmtests/tmoverhd/tmtest.adb, tmtests/tmoverhd/tmtest.ads: Updated
tests so that they would all compile and run without errors. Some
tests that are no longer valid using the current binding were
removed. Also updated the .scn files to reflect the current test
output.
* sptests/sp21/.cvsignore, sptests/sp21/Makefile.am,
sptests/sp21/config.h, sptests/sp21/sp21.adb, sptests/sp21/sp21.scn,
sptests/sp21/sptest.adb, sptests/sp21/sptest.ads,
sptests/spsize/.cvsignore, sptests/spsize/Makefile.am,
sptests/spsize/spsize.adb, sptests/spsize/sptest.adb,
sptests/spsize/sptest.ads: Removed.
2007-10-03 Joel Sherrill <joel.sherrill@oarcorp.com>
* mptests/mp01/node1/Makefile.am, mptests/mp01/node2/Makefile.am,

View File

@@ -73,12 +73,10 @@ sptests/sp16/Makefile
sptests/sp17/Makefile
sptests/sp19/Makefile
sptests/sp20/Makefile
sptests/sp21/Makefile
sptests/sp22/Makefile
sptests/sp23/Makefile
sptests/sp24/Makefile
sptests/sp25/Makefile
sptests/spsize/Makefile
])
AC_CONFIG_FILES([

View File

@@ -1,4 +1,4 @@
*** SAMPLE SINGLE PROCESSOR APPLICATION ***
Creating and starting an application task
Application task was invoked with argument (0) and has id of 0x10002
Application task was invoked with argument ( 0) and has id of 0x16#A010002#
*** END OF SAMPLE SINGLE PROCESSOR APPLICATION ***

View File

@@ -2,7 +2,7 @@
*
* This include file defines the Configuration Table for this test.
*
* COPYRIGHT (c) 1989-1997.
* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may in
@@ -27,6 +27,8 @@
#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20
#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10
#define CONFIGURE_MAXIMUM_TASKS 2
#include <rtems/confdefs.h>
/* end of include file */

View File

@@ -87,6 +87,7 @@ package body SPTEST is
UNSIGNED32_IO.PUT( ARGUMENT );
TEXT_IO.PUT( ") and has id of 0x" );
UNSIGNED32_IO.PUT( TID, BASE => 16 );
TEXT_IO.NEW_LINE;
TEXT_IO.PUT_LINE( "*** END OF SAMPLE SINGLE PROCESSOR APPLICATION ***" );

View File

@@ -2,7 +2,7 @@
*
* This include file defines the Configuration Table for this test.
*
* COPYRIGHT (c) 1989-1997.
* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may in
@@ -21,13 +21,13 @@
#define CONFIGURE_POSIX_INIT_THREAD_TABLE
#define CONFIGURE_MAXIMUM_TASKS 2
#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
#define CONFIGURE_MAXIMUM_TASKS 1
#include <rtems/confdefs.h>
/* end of include file */

View File

@@ -2,7 +2,7 @@
*
* This include file defines the Configuration Table for this test.
*
* COPYRIGHT (c) 1989-1997.
* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may in
@@ -27,6 +27,8 @@
#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20
#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10
#define CONFIGURE_MAXIMUM_TASKS 4
#include <rtems/confdefs.h>
/* end of include file */

View File

@@ -1,16 +1,16 @@
*** CLOCK TICK TEST ***
*** TEST 1 ***
TA1 - clock_get - 9: 0: 0 12/31/1988
TA2 - clock_get - 9: 0: 0 12/31/1988
TA3 - clock_get - 9: 0: 0 12/31/1988
TA1 - clock_get - 9: 0: 5 12/31/1988
TA2 - clock_get - 9: 0:10 12/31/1988
TA1 - clock_get - 9: 0:10 12/31/1988
TA1 - clock_get - 9: 0:15 12/31/1988
TA3 - clock_get - 9: 0:15 12/31/1988
TA1 - clock_get - 9: 0:15 12/31/1988
TA2 - clock_get - 9: 0:20 12/31/1988
TA1 - clock_get - 9: 0:20 12/31/1988
TA1 - clock_get - 9: 0:25 12/31/1988
TA2 - clock_get - 9: 0:30 12/31/1988
TA1 - clock_get - 9: 0:30 12/31/1988
TA3 - clock_get - 9: 0:30 12/31/1988
TA1 - clock_get - 9: 0:30 12/31/1988
TA2 - clock_get - 9: 0:30 12/31/1988
*** END OF CLOCK TICK TEST ***

View File

@@ -19,12 +19,10 @@ SUBDIRS += sp16
SUBDIRS += sp17
SUBDIRS += sp19
SUBDIRS += sp20
SUBDIRS += sp21
SUBDIRS += sp22
SUBDIRS += sp23
SUBDIRS += sp24
SUBDIRS += sp25
SUBDIRS += spsize
include $(top_srcdir)/../../../testsuites/automake/subdirs.am
include $(top_srcdir)/../../../testsuites/automake/local.am

View File

@@ -3,14 +3,14 @@ TA1 - clock_get - 9: 0: 0 12/31/1988
TA2 - clock_get - 9: 0: 0 12/31/1988
TA3 - clock_get - 9: 0: 0 12/31/1988
TA1 - clock_get - 9: 0: 5 12/31/1988
TA2 - clock_get - 9: 0:10 12/31/1988
TA1 - clock_get - 9: 0:10 12/31/1988
TA3 - clock_get - 9: 0:15 12/31/1988
TA2 - clock_get - 9: 0:10 12/31/1988
TA1 - clock_get - 9: 0:15 12/31/1988
TA2 - clock_get - 9: 0:20 12/31/1988
TA3 - clock_get - 9: 0:15 12/31/1988
TA1 - clock_get - 9: 0:20 12/31/1988
TA2 - clock_get - 9: 0:20 12/31/1988
TA1 - clock_get - 9: 0:25 12/31/1988
TA3 - clock_get - 9: 0:30 12/31/1988
TA1 - clock_get - 9: 0:30 12/31/1988
TA3 - clock_get - 9: 0:30 12/31/1988
TA2 - clock_get - 9: 0:30 12/31/1988
*** END OF TEST 1 ***

View File

@@ -2,7 +2,7 @@
*
* This include file defines the Configuration Table for this test.
*
* COPYRIGHT (c) 1989-1997.
* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may in
@@ -27,6 +27,8 @@
#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20
#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10
#define CONFIGURE_MAXIMUM_TASKS 4
#include <rtems/confdefs.h>
/* end of include file */

View File

@@ -5,8 +5,8 @@ INIT - suspending TA2 while middle task on a ready chain
TA1 - task_wake_after - sleep 1 second
TA2 - task_wake_after - sleep 1 minute
TA3 - task_wake_after - sleep 5 seconds
TA1 - task_ident - tid of TA2 (16#10007#)
TA1 - task_ident - tid of TA3 (16#10008#)
TA1 - task_ident - tid of TA2 (16#A010004#)
TA1 - task_ident - tid of TA3 (16#A010002#)
TA1 - task_set_priority - set TA3's priority to 2
TA1 - task_suspend - suspend TA2
TA1 - task_delete - delete TA2

View File

@@ -2,7 +2,7 @@
*
* This include file defines the Configuration Table for this test.
*
* COPYRIGHT (c) 1989-1997.
* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may in
@@ -27,6 +27,8 @@
#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20
#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10
#define CONFIGURE_MAXIMUM_TASKS 3
#include <rtems/confdefs.h>
/* end of include file */

View File

@@ -1,5 +1,5 @@
*** TEST 3 ***
TA1 sets clock: 9:15: 0 12/31/1988
TA1 sets clock: 9:15: 0 12/31/1988
TA1 going to sleep: 9:15: 0 12/31/1988
TA2 9:15: 1 12/31/1988
TA2 9:15: 2 12/31/1988
@@ -21,6 +21,6 @@ TA2 9:15:13 12/31/1988
TA2 9:15:14 12/31/1988
TA1 awakened: 9:15:15 12/31/1988
TA1 going to sleep: 9:15:15 12/31/1988
TA2 9:15:15 12/31/1988
TA2 9:15:16 12/31/1988
TA2 9:15:15 12/31/1988
TA2 9:15:16 12/31/1988
*** END OF TEST 3 ***

View File

@@ -1,16 +1,9 @@
*** TEST 4 ***
TA1 - 9:15: 0 12/31/1988
TA1 - task_suspend - on Task 2
TA1 - task_suspend - on Task 3
TA1 - killing time
TA1 - task_resume - on Task 2
TA1 - task_resume - on Task 3
TA2 - 9:15: 4 12/31/1988
TA3 - 9:15: 5 12/31/1988
TA1 - 9:15: 6 12/31/1988
TA2 - 9:15: 7 12/31/1988
TA3 - 9:15: 8 12/31/1988
TA1 - 9:15: 9 12/31/1988
TA1 - task_mode - change mode to NO PREEMPT
TA1 - 9:15:10 12/31/1988
TA1 - 9:15:11 12/31/1988
@@ -19,5 +12,14 @@ TA1 - 9:15:13 12/31/1988
TA1 - 9:15:14 12/31/1988
TA1 - 9:15:15 12/31/1988
TA1 - task_mode - change mode to PREEMPT
TA1 - 9:15: 0 12/31/1988
TA2 - 9:15: 4 12/31/1988
TA3 - 9:15: 5 12/31/1988
TA1 - 9:15: 6 12/31/1988
TA2 - 9:15: 7 12/31/1988
TA3 - 9:15: 8 12/31/1988
TA1 - 9:15: 9 12/31/1988
TA2 - 9:15:16 12/31/1988
TA3 - 9:15:17 12/31/1988
TA1 - 9:15:18 12/31/1988
*** END OF TEST 4 ***

View File

@@ -10,7 +10,7 @@
--
--
--
-- COPYRIGHT (c) 1989-1997.
-- COPYRIGHT (c) 1989-2007.
-- On-Line Applications Research Corporation (OAR).
--
-- The license and distribution terms for this file may in
@@ -27,6 +27,45 @@ with TEXT_IO;
package body SPTEST is
TestsFinished : Boolean := False;
pragma Volatile (TestsFinished);
type Task_Event is record
Task_Index : RTEMS.Unsigned32;
When_Switched : RTEMS.Time_Of_Day;
end record;
Task_Events : array (1 .. 15) of Task_Event;
Task_Events_Index : Natural := Task_Events'First;
procedure Log_Task_Event (
Task_Index : RTEMS.Unsigned32;
When_Switched : RTEMS.Time_Of_Day
) is
begin
if Task_Events_Index = Task_Events'Last then
RTEMS.Fatal_Error_Occurred ( 1 ); -- no other choice
else
Task_Events (Task_Events_Index).Task_Index := Task_Index;
Task_Events (Task_Events_Index).When_Switched := When_Switched;
Task_Events_Index := Task_Events_Index + 1;
end if;
end Log_Task_Event;
procedure Flush_Task_Event_Log is
begin
for I in Task_Events'First .. Task_Events_Index - 1 loop
TEST_SUPPORT.PUT_NAME(
SPTEST.TASK_NAME( Task_Events (I).Task_Index ), FALSE
);
TEST_SUPPORT.PRINT_TIME( "- ", Task_Events (I).When_Switched, "" );
TEXT_IO.NEW_LINE;
end loop;
end Flush_Task_Event_Log;
--PAGE
--
-- INIT
@@ -229,9 +268,12 @@ package body SPTEST is
);
TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_MODE" );
LOOP
while not TestsFinished loop
NULL;
END LOOP;
Flush_Task_Event_Log;
TEXT_IO.PUT_LINE( "*** END OF TEST 4 ***" );
RTEMS.SHUTDOWN_EXECUTIVE( 0 );
end if;
@@ -290,8 +332,7 @@ package body SPTEST is
begin
--INDEX := TEST_SUPPORT.TASK_NUMBER( HEIR.OBJECT.ID );
INDEX := TCB_To_ID( HEIR );
INDEX := TEST_SUPPORT.TASK_NUMBER( TCB_To_ID( HEIR ) );
case INDEX is
when 1 | 2 | 3 =>
@@ -300,13 +341,10 @@ package body SPTEST is
RTEMS.CLOCK_GET( RTEMS.CLOCK_GET_TOD, TIME'ADDRESS, STATUS );
TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "CLOCK_GET" );
TEST_SUPPORT.PUT_NAME( SPTEST.TASK_NAME( INDEX ), FALSE );
TEST_SUPPORT.PRINT_TIME( "- ", TIME, "" );
TEXT_IO.NEW_LINE;
Log_Task_Event ( INDEX, TIME );
if TIME.SECOND >= 16 then
TEXT_IO.PUT_LINE( "*** END OF TEST 4 ***" );
RTEMS.SHUTDOWN_EXECUTIVE( 0 );
TestsFinished := True;
end if;
when others =>

View File

@@ -2,7 +2,7 @@
*
* This include file defines the Configuration Table for this test.
*
* COPYRIGHT (c) 1989-1997.
* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may in
@@ -29,6 +29,8 @@
#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20
#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10
#define CONFIGURE_MAXIMUM_TASKS 4
#include <rtems/confdefs.h>
/* end of include file */

View File

@@ -3,7 +3,7 @@ TA1 - task_wake_after - sleep 5 seconds
TA2 - task_suspend - suspend self
TA3 - task_suspend - suspend self
TA1 - task_suspend - suspend TA3
TA1 - task_resume - resume TA2
TA1 - task_resume - resume TA2
TA1 - task_wake_after - sleep 5 seconds
TA2 - task_wake_after - sleep 1 second
TA2 - task_wake_after - sleep 1 second
@@ -19,7 +19,7 @@ TA3 - task_wake_after - sleep 1 second
TA3 - task_wake_after - sleep 1 second
TA3 - task_wake_after - sleep 1 second
TA1 - task_suspend - suspend TA3
TA1 - task_resume - resume TA2
TA1 - task_resume - resume TA2
TA1 - task_wake_after - sleep 5 seconds
TA2 - task_wake_after - sleep 1 second
TA2 - task_wake_after - sleep 1 second
@@ -45,4 +45,3 @@ TA2 - task_wake_after - sleep 1 second
TA1 - task_suspend - suspend TA2
TA1 - task_resume - resume TA3
*** END OF TEST 5 ***

View File

@@ -2,7 +2,7 @@
*
* This include file defines the Configuration Table for this test.
*
* COPYRIGHT (c) 1989-1997.
* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may in
@@ -29,6 +29,8 @@
#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20
#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10
#define CONFIGURE_MAXIMUM_TASKS 4
#include <rtems/confdefs.h>
/* end of include file */

View File

@@ -2,7 +2,7 @@
*
* This include file defines the Configuration Table for this test.
*
* COPYRIGHT (c) 1989-1997.
* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may in
@@ -30,6 +30,8 @@
#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20
#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10
#define CONFIGURE_MAXIMUM_TASKS 5
#include <rtems/confdefs.h>
/* end of include file */

View File

@@ -1,16 +1,16 @@
*** TEST 7 ***
TASKS_CREATE - TA1 - created.
TASKS_CREATE - TA2 - created.
TASKS_CREATE - TA3 - created.
TASKS_CREATE - TA4 - created.
TASKS_START - TA1 - started.
TASKS_START - TA2 - started.
TASKS_START - TA3 - started.
TASKS_START - TA4 - started.
TASKS_RESTART - TA3 - restarted.
TASKS_CREATE - TA1 - created.
TASKS_CREATE - TA2 - created.
TASKS_CREATE - TA3 - created.
TASKS_CREATE - TA4 - created.
TASKS_START - TA1 - started.
TASKS_START - TA2 - started.
TASKS_START - TA3 - started.
TASKS_START - TA4 - started.
TASKS_RESTART - TA3 - restarted.
INIT - task_set_note - set TA1's NOTEPAD_8 to TA1's initial priority: 4
INIT - task_set_note - set TA2's NOTEPAD_8 to TA2's initial priority: 4
<pause>
<pause>
TA1 - task_set_priority - get initial priority of self: 4
TA1 - task_get_note - get NOTEPAD_8 - current priority: 4
TA1 - task_set_note - set TA2's NOTEPAD_8: 3
@@ -24,9 +24,9 @@ TA1 - task_set_priority - set TA2's priority: 1
TA2 - task_get_note - get NOTEPAD_8 - current priority: 1
TA2 - task_suspend - suspend TA1
TA2 - task_set_priority - set priority of TA1 ( blocked )
TASKS_DELETE - TA2 deleting TA1
TASKS_DELETE - TA2 deleting TA3
TASKS_DELETE - TA2 deleting TA2
TASKS_DELETE - TA2 deleting TA1
TASKS_DELETE - TA2 deleting TA3
TASKS_DELETE - TA2 deleting TA2
TA4 - exitting task
TASK_EXITTED - user extension invoked correctly
*** END OF TEST 7 ***

View File

@@ -10,7 +10,7 @@
--
--
--
-- COPYRIGHT (c) 1989-1997.
-- COPYRIGHT (c) 1989-2007.
-- On-Line Applications Research Corporation (OAR).
--
-- The license and distribution terms for this file may in
@@ -28,6 +28,89 @@ with UNSIGNED32_IO;
package body SPTEST is
type Task_Event_Type is (
Created,
Deleted,
Restarted,
Started
);
type Task_Event is record
The_Event : Task_Event_Type;
Task1 : RTEMS.Unsigned32;
Task2 : RTEMS.Unsigned32;
end record;
Task_Events : array (1 .. 10) of Task_Event;
Task_Events_Index : Natural := Task_Events'First;
procedure Log_Task_Event (
The_Event : in Task_Event_Type;
Task1 : in RTEMS.Unsigned32;
Task2 : in RTEMS.Unsigned32
) is
begin
if Task_Events_Index = Task_Events'Last then
RTEMS.Fatal_Error_Occurred ( 1 ); -- no other choice
else
Task_Events (Task_Events_Index).The_Event := The_Event;
Task_Events (Task_Events_Index).Task1 := Task1;
Task_Events (Task_Events_Index).Task2 := Task2;
Task_Events_Index := Task_Events_Index + 1;
end if;
end Log_Task_Event;
procedure Flush_Task_Event_Log is
begin
for I in Task_Events'First .. Task_Events_Index - 1 loop
case Task_Events (I).The_Event is
when Created =>
TEXT_IO.PUT( "TASKS_CREATE - " );
TEST_SUPPORT.PUT_NAME(
SPTEST.TASK_NAME( Task_Events (I).Task1 ),
FALSE
);
TEXT_IO.PUT_LINE( " - created." );
when Deleted =>
TEXT_IO.PUT( "TASKS_DELETE - " );
TEST_SUPPORT.PUT_NAME(
SPTEST.TASK_NAME( Task_Events (I).Task1 ),
FALSE
);
TEXT_IO.PUT( " deleting " );
TEST_SUPPORT.PUT_NAME(
SPTEST.TASK_NAME( Task_Events (I).Task2 ),
TRUE
);
when Restarted =>
TEXT_IO.PUT( "TASKS_RESTART - " );
TEST_SUPPORT.PUT_NAME(
SPTEST.TASK_NAME( Task_Events (I).Task1 ),
FALSE
);
TEXT_IO.PUT_LINE( " - restarted." );
when Started =>
TEXT_IO.PUT( "TASKS_START - " );
TEST_SUPPORT.PUT_NAME(
SPTEST.TASK_NAME( Task_Events (I).Task1 ),
FALSE
);
TEXT_IO.PUT_LINE( " - started." );
end case;
end loop;
-- Reset the events list
Task_Events_Index := Task_Events'First;
end Flush_Task_Event_Log;
--PAGE
--
-- TCB_To_ID
@@ -146,6 +229,8 @@ package body SPTEST is
RTEMS.TASK_RESTART( SPTEST.TASK_ID( 3 ), 0, STATUS );
TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_RESTART OF TA3" );
Flush_Task_Event_Log;
RTEMS.TASK_SET_NOTE( SPTEST.TASK_ID( 1 ), 8, 4, STATUS );
TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_SET_NOTE OF TA1" );
TEXT_IO.PUT( "INIT - task_set_note - set TA1's NOTEPAD_8" );
@@ -363,6 +448,8 @@ package body SPTEST is
) is
begin
Flush_Task_Event_Log;
TEXT_IO.PUT_LINE( "TA4 - exitting task" );
end TASK_4;
@@ -391,23 +478,22 @@ package body SPTEST is
-- TASK_CREATE_EXTENSION
--
procedure TASK_CREATE_EXTENSION (
function TASK_CREATE_EXTENSION (
UNUSED : in RTEMS.TCB_POINTER;
CREATED_TASK : in RTEMS.TCB_POINTER
) is
) return RTEMS.Boolean is
begin
if TEST_SUPPORT.TASK_NUMBER( TCB_To_ID( CREATED_TASK ) ) > 0 then
TEXT_IO.PUT( "TASKS_CREATE - " );
TEST_SUPPORT.PUT_NAME(
SPTEST.TASK_NAME(
TEST_SUPPORT.TASK_NUMBER( TCB_To_ID( CREATED_TASK ) )
),
FALSE
Log_Task_Event (
Created,
TEST_SUPPORT.TASK_NUMBER( TCB_To_ID( CREATED_TASK ) ),
0
);
TEXT_IO.PUT_LINE( "- created." );
end if;
return RTEMS.True;
end TASK_CREATE_EXTENSION;
--PAGE
@@ -421,23 +507,12 @@ package body SPTEST is
) is
begin
if TEST_SUPPORT.TASK_NUMBER( TCB_To_ID( RUNNING_TASK ) ) > 0 then
TEXT_IO.PUT( "TASKS_DELETE - " );
TEST_SUPPORT.PUT_NAME(
SPTEST.TASK_NAME(
TEST_SUPPORT.TASK_NUMBER( TCB_To_ID( RUNNING_TASK ) )
),
FALSE
);
end if;
if TEST_SUPPORT.TASK_NUMBER( TCB_To_ID( DELETED_TASK ) ) > 0 then
TEXT_IO.PUT( "deleting " );
TEST_SUPPORT.PUT_NAME(
SPTEST.TASK_NAME(
TEST_SUPPORT.TASK_NUMBER( TCB_To_ID( DELETED_TASK ) )
),
TRUE
if TEST_SUPPORT.TASK_NUMBER( TCB_To_ID( RUNNING_TASK ) ) > 0 and
TEST_SUPPORT.TASK_NUMBER( TCB_To_ID( DELETED_TASK ) ) > 0 then
Log_Task_Event (
Deleted,
TEST_SUPPORT.TASK_NUMBER( TCB_To_ID( RUNNING_TASK ) ),
TEST_SUPPORT.TASK_NUMBER( TCB_To_ID( DELETED_TASK ) )
);
end if;
@@ -455,14 +530,11 @@ package body SPTEST is
begin
if TEST_SUPPORT.TASK_NUMBER( TCB_To_ID( RESTARTED_TASK ) ) > 0 then
TEXT_IO.PUT( "TASKS_RESTART - " );
TEST_SUPPORT.PUT_NAME(
SPTEST.TASK_NAME(
TEST_SUPPORT.TASK_NUMBER( TCB_To_ID( RESTARTED_TASK ) )
),
FALSE
Log_Task_Event (
Restarted,
TEST_SUPPORT.TASK_NUMBER( TCB_To_ID( RESTARTED_TASK ) ),
0
);
TEXT_IO.PUT_LINE( " - restarted." );
end if;
end TASK_RESTART_EXTENSION;
@@ -479,14 +551,11 @@ package body SPTEST is
begin
if TEST_SUPPORT.TASK_NUMBER( TCB_To_ID( STARTED_TASK ) ) > 0 then
TEXT_IO.PUT( "TASKS_START - " );
TEST_SUPPORT.PUT_NAME(
SPTEST.TASK_NAME(
TEST_SUPPORT.TASK_NUMBER( TCB_To_ID( STARTED_TASK ) )
),
FALSE
Log_Task_Event (
Started,
TEST_SUPPORT.TASK_NUMBER( TCB_To_ID( STARTED_TASK ) ),
0
);
TEXT_IO.PUT_LINE( " - started." );
end if;
end TASK_START_EXTENSION;

View File

@@ -10,7 +10,7 @@
--
--
--
-- COPYRIGHT (c) 1989-1997.
-- COPYRIGHT (c) 1989-2007.
-- On-Line Applications Research Corporation (OAR).
--
-- The license and distribution terms for this file may in
@@ -108,10 +108,10 @@ package SPTEST is
-- This subprogram is the TASK_CREATE extension for this test.
--
procedure TASK_CREATE_EXTENSION (
function TASK_CREATE_EXTENSION (
UNUSED : in RTEMS.TCB_POINTER;
CREATED_TASK : in RTEMS.TCB_POINTER
);
) return RTEMS.Boolean;
--
-- TASK_DELETE_EXTENSION

View File

@@ -2,7 +2,7 @@
*
* This include file defines the Configuration Table for this test.
*
* COPYRIGHT (c) 1989-1997.
* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may in
@@ -29,6 +29,8 @@
#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20
#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10
#define CONFIGURE_MAXIMUM_TASKS 2
#include <rtems/confdefs.h>
/* end of include file */

View File

@@ -1,20 +1,20 @@
*** TEST 8 ***
TA1 - task_mode - ASR - previous mode: 16#0#
TA1 - task_mode - NO_ASR - previous mode: 16#0#
TA1 - task_mode - NO_ASR - previous mode: 16#400#
TA1 - task_mode - ASR - previous mode: 16#400#
TA1 - task_mode - NO_TIMESLICE - previous mode: 16#0#
TA1 - task_mode - TIMESLICE - previous mode: 16#0#
TA1 - task_mode - TIMESLICE - previous mode: 16#200#
TA1 - task_mode - NO_TIMESLICE - previous mode: 16#200#
TA1 - task_mode - PREEMPT - previous mode: 16#0#
TA1 - task_mode - NO_PREEMPT - previous mode: 16#0#
TA1 - task_mode - NO_PREEMPT - previous mode: 16#100#
TA1 - task_mode - PREEMPT - previous mode: 16#100#
TA1 - task_mode - INTERRUPT_LEVEL( 3 ) - previous mode: 16#0#
TA1 - task_mode - INTERRUPT_LEVEL( 5 ) - previous mode: 16#3#
TA1 - task_mode - set all modes - previous mode: 16#5#
TA1 - task_mode - set all modes - previous mode: 16#703#
TA1 - task_mode - clear all modes - previous mode: 16#703#
TA1 - task_mode - get current mode - previous mode: 16#0#
TA1 - task_mode - ASR - previous mode: 16#0#
TA1 - task_mode - NO_ASR - previous mode: 16#0#
TA1 - task_mode - NO_ASR - previous mode: 16#400#
TA1 - task_mode - ASR - previous mode: 16#400#
TA1 - task_mode - NO_TIMESLICE - previous mode: 16#0#
TA1 - task_mode - TIMESLICE - previous mode: 16#0#
TA1 - task_mode - TIMESLICE - previous mode: 16#200#
TA1 - task_mode - NO_TIMESLICE - previous mode: 16#200#
TA1 - task_mode - PREEMPT - previous mode: 16#0#
TA1 - task_mode - NO_PREEMPT - previous mode: 16#0#
TA1 - task_mode - NO_PREEMPT - previous mode: 16#100#
TA1 - task_mode - PREEMPT - previous mode: 16#100#
TA1 - task_mode - INTERRUPT_LEVEL( 3 ) - previous mode: 16#0#
TA1 - task_mode - INTERRUPT_LEVEL( 5 ) - previous mode: 16#1#
TA1 - task_mode - set all modes - previous mode: 16#1#
TA1 - task_mode - set all modes - previous mode: 16#701#
TA1 - task_mode - clear all modes - previous mode: 16#701#
TA1 - task_mode - get current mode - previous mode: 16#0#
*** END OF TEST 8 ***

View File

@@ -5,6 +5,10 @@ include $(top_srcdir)/../../../testsuites/automake/compile.am
include $(top_srcdir)/ada.am
# Prevents Ada from raising a constraint so that the error
# handling can be verified in the binding.
AM_ADAFLAGS += -gnatp
noinst_PROGRAMS = sp09
sp09_SOURCES = sp09.adb config.h sptest.adb sptest.ads

View File

@@ -2,7 +2,7 @@
*
* This include file defines the Configuration Table for this test.
*
* COPYRIGHT (c) 1989-1997.
* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may in
@@ -20,6 +20,7 @@
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
#define CONFIGURE_MAXIMUM_TASKS 10
#define CONFIGURE_MAXIMUM_TIMERS 1
#define CONFIGURE_MAXIMUM_SEMAPHORES 2
#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 1

View File

@@ -1,9 +1,8 @@
*** TEST 9 ***
INIT - task_create - INVALID_SIZE -- NOT CHECKED
INIT - task_create - INVALID_PRIORITY
INIT - task_restart - INCORRECT_STATE
TA1 - task_delete - INVALID_ID
TA1 - task_get_note - INVALID_NUMBER -- constraint error
TA1 - task_get_note - INVALID_NUMBER
TA1 - task_get_note - INVALID_ID
TA1 - task_ident - current task SUCCESSFUL
TA1 - task_ident - global INVALID_NAME
@@ -12,14 +11,14 @@ TA1 - task_ident - INVALID_NODE
TA1 - task_restart - INVALID_ID
TA1 - task_resume - INVALID_ID
TA1 - task_resume - INCORRECT_STATE
TA1 - task_set_priority - INVALID_PRIORITY -- constraint error
TA1 - task_set_priority - INVALID_PRIORITY
TA1 - task_set_priority - INVALID_ID
TA1 - task_set_note - INVALID_NUMBER -- constraint error
TA1 - task_set_note - INVALID_NUMBER
TA1 - task_set_note - INVALID_ID
TA1 - task_start - INVALID_ID
TA1 - task_start - INCORRECT_STATE
TA1 - task_suspend - INVALID_ID
<pause - screen 2>
<pause - screen 2>
TA1 - clock_get - NOT_DEFINED
TA1 - task_wake_when - NOT_DEFINED
TA1 - timer_fire_when - NOT_DEFINED
@@ -37,7 +36,7 @@ TA1 - task_wake_when - 8:30:48 2/ 5/1961 - INVALID_CLOCK
TA1 - task_wake_when - 25:30:48 2/ 5/1988 - INVALID_CLOCK
TA1 - current time - 8:30:48 2/ 5/1988
TA1 - task_wake_when - 8:30:48 1/ 5/1988 - INVALID_CLOCK
<pause - screen 3>
<pause - screen 3>
TA1 - task_create - INVALID_NAME
TA1 - task_create - stack size - UNSATISFIED
TA1 - task_create - TA2 created - SUCCESSFUL
@@ -54,7 +53,7 @@ TA1 - task_create - 9 created - SUCCESSFUL
TA1 - task_create - 10 created - SUCCESSFUL
TA1 - task_create - 11 - TOO_MANY
TA1 - task_create - MP_NOT_CONFIGURED
<pause - screen 4>
<pause - screen 4>
TA1 - event_receive - UNSATISFIED ( all conditions )
TA1 - event_receive - UNSATISFIED ( any conditions )
TA1 - event_receive - timeout in 3 seconds
@@ -62,7 +61,7 @@ TA1 - event_receive - woke with TIMEOUT
TA1 - event_send - INVALID_ID
TA1 - task_wake_after - sleep 1 second - SUCCESSFUL
TA1 - clock_set - 8:30:45 2/ 5/1988 - SUCCESSFUL
<pause - screen 5>
<pause - screen 5>
TA1 - semaphore_create - INVALID_NAME
TA1 - semaphore_create - 1 - SUCCESSFUL
TA1 - semaphore_create - 2 - SUCCESSFUL
@@ -75,7 +74,7 @@ TA1 - semaphore_delete - unknown INVALID_ID
TA1 - semaphore_delete - local INVALID_ID
TA1 - semaphore_ident - global INVALID_NAME
TA1 - semaphore_ident - local INVALID_NAME
<pause - screen 6>
<pause - screen 6>
TA1 - semaphore_obtain - INVALID_ID
TA1 - semaphore_obtain - got sem 1 - SUCCESSFUL
TA1 - semaphore_obtain - UNSATISFIED
@@ -93,7 +92,7 @@ TA1 - task_wake_after - yield processor - SUCCESSFUL
TA2 - semaphore_obtain - woke up with OBJECT_WAS_DELETED
TA2 - task_delete - delete self - SUCCESSFUL
TA1 - task_delete TA2 - already deleted INVALID_ID
<pause - screen 7>
<pause - screen 7>
TA1 - message_queue_broadcast - INVALID_ID
TA1 - message_queue_create - Q 1 - INVALID_NAME
TA1 - message_queue_create - Q 1 - MP_NOT_CONFIGURED
@@ -111,7 +110,7 @@ TA1 - message_queue_send - INVALID_ID
TA1 - message_queue_send - BUFFER 1 TO Q 1 - SUCCESSFUL
TA1 - message_queue_send - BUFFER 2 TO Q 1 - SUCCESSFUL
TA1 - message_queue_send - BUFFER 3 TO Q 1 - TOO_MANY
<pause - screen 8>
<pause - screen 8>
TA1 - message_queue_delete - Q 1 - SUCCESSFUL
TA1 - message_queue_create - Q 1 - 2 DEEP - SUCCESSFUL
TA1 - message_queue_send - BUFFER 1 TO Q 1 - SUCCESSFUL
@@ -132,11 +131,7 @@ TA1 - message_queue_delete - delete Q 1 - SUCCESSFUL
TA1 - task_wake_after - yield processor - SUCCESSFUL
TA3 - message_queue_receive - woke up with OBJECT_WAS_DELETED
TA3 - task_delete - delete self - SUCCESSFUL
<pause - screen 9>
TA1 - interrupt_catch - INVALID_NUMBER -- constraint error
TA1 - interrupt_catch - INVALID_ADDRESS
TA1 - signal_send - INVALID_ID
TA1 - signal_send - NOT_DEFINED
<pause - screen 9>
TA1 - port_create - INVALID_NAME
TA1 - port_create - INVALID_ADDRESS
TA1 - port_create - TOO_MANY
@@ -144,7 +139,7 @@ TA1 - port_delete - INVALID_ID
TA1 - port_ident - INVALID_NAME
TA1 - port_internal_to_external - INVALID_ID
TA1 - port_external_to_internal - INVALID_ID
<pause - screen 10>
<pause - screen 10>
TA1 - rate_monotonic_create - INVALID_NAME
TA1 - rate_monotonic_create - SUCCESSFUL
TA1 - rate_monotonic_create - TOO_MANY
@@ -166,7 +161,7 @@ TA4 - task_delete - delete self - SUCCESSFUL
TA1 - rate_monotonic_delete - unknown INVALID_ID
TA1 - rate_monotonic_delete - local INVALID_ID
TA1 - rate_monotonic_delete - SUCCESSFUL
<pause - screen 11>
<pause - screen 11>
TA1 - partition_create - INVALID_NAME
TA1 - partition_create - length - INVALID_SIZE
TA1 - partition_create - buffer size - INVALID_SIZE
@@ -187,7 +182,7 @@ TA1 - partition_get_buffer - UNSATISFIED
TA1 - partition_delete - RESOURCE_IN_USE
TA1 - partition_return_buffer - INVALID_ADDRESS - out of range
TA1 - partition_return_buffer - INVALID_ADDRESS - not on boundary
<pause - screen 12>
<pause - screen 12>
TA1 - region_create - INVALID_NAME
TA1 - region_create - INVALID_ADDRESS
TA1 - region_create - INVALID_SIZE
@@ -206,32 +201,26 @@ TA1 - region_delete - RESOURCE_IN_USE
TA1 - region_return_segment - INVALID_ID
TA1 - region_return_segment - INVALID_ADDRESS
TA1 - debug_disable - DEBUG_REGION
TA1 - region_return_segment - INVALID_ADDRESS
TA1 - region_return_segment - INVALID_ADDRESS
TA1 - region_return_segment - INVALID_ADDRESS - SKIPPED
TA1 - region_return_segment - INVALID_ADDRESS - SKIPPED
TA1 - debug_enable - DEBUG_REGION
TA1 - region_extend - INVALID_ID
TA1 - region_extend - within heap - INVALID_ADDRESS
TA1 - region_extend - non-contiguous lower - NOT_IMPLEMENTED
TA1 - region_extend - contiguous lower - NOT_IMPLEMENTED
TA1 - region_extend - non-contiguous higher - NOT_IMPLEMENTED
<pause - screen 13>
TA1 - io_close - INVALID_NUMBER
TA1 - io_control - INVALID_NUMBER
TA1 - io_initialize - INVALID_NUMBER
TA1 - io_open - INVALID_NUMBER
TA1 - io_read - INVALID_NUMBER
TA1 - io_write - INVALID_NUMBER
<pause - screen 13>
TA1 - clock_set - 23:59:59 12/31/2000 - SUCCESSFUL
TA1 - clock_get - 0: 0: 0 1/ 1/2001 - SUCCESSFUL
TA1 - clock_set - 23:59:59 12/31/1999 - SUCCESSFUL
TA1 - clock_get - 0: 0: 0 1/ 1/2000 - SUCCESSFUL
TA1 - clock_set - 23:59:59 12/31/2100 - SUCCESSFUL
TA1 - clock_get - 0: 0: 0 1/ 1/2101 - SUCCESSFUL
TA1 - clock_get - 17:31:44 11/25/1964 - SUCCESSFUL
TA1 - clock_set - 23:59:59 12/31/2099 - SUCCESSFUL
TA1 - clock_get - 0: 0: 0 1/ 1/2100 - SUCCESSFUL
TA1 - clock_get - 17:31:44 11/25/1963 - SUCCESSFUL
TA1 - clock_set - 23:59:59 12/31/1991 - SUCCESSFUL
TA1 - clock_get - 0: 0: 0 1/ 1/1992 - SUCCESSFUL
<pause - screen 14>
<pause - screen 14>
TA1 - timer_create - INVALID_NAME
TA1 - timer_create - 1 - SUCCESSFUL
TA1 - timer_create - 2 - TOO_MANY
@@ -244,7 +233,7 @@ TA1 - timer_reset - NOT_DEFINED
TA1 - timer_fire_after - INVALID_ID
TA1 - timer_fire_when - INVALID_ID
TA1 - timer_fire_after - INVALID_NUMBER
TA1 - timer_fire_when - 8:30:45 2/ 5/1987 - INVALID_CLOCK
TA1 - clock_get - 0: 0: 0 1/ 1/1992
TA1 - timer_fire_when - 8:30:45 2/ 5/1990 - before INVALID_CLOCK
TA1 - timer_fire_when - 8:30:45 2/ 5/1987 - INVALID_CLOCK
TA1 - clock_get - 0: 0: 0 1/ 1/1992
TA1 - timer_fire_when - 8:30:45 2/ 5/1990 - before INVALID_CLOCK
*** END OF TEST 9 ***

View File

@@ -10,7 +10,7 @@
--
--
--
-- COPYRIGHT (c) 1989-1997.
-- COPYRIGHT (c) 1989-2007.
-- On-Line Applications Research Corporation (OAR).
--
-- The license and distribution terms for this file may in
@@ -69,22 +69,6 @@ package body SPTEST is
SPTEST.PERIOD_NAME( 1 ) := RTEMS.BUILD_NAME( 'T', 'M', '1', ' ' );
-- RTEMS.TASK_CREATE(
-- SPTEST.TASK_NAME( 1 ),
-- 4,
-- 10,
-- RTEMS.DEFAULT_MODES,
-- RTEMS.DEFAULT_ATTRIBUTES,
-- SPTEST.TASK_ID( 1 ),
-- STATUS
-- );
-- TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
-- STATUS,
-- RTEMS.INVALID_SIZE,
-- "TASK_CREATE WITH ILLEGAL STACK SIZE"
-- );
TEXT_IO.PUT_LINE( "INIT - task_create - INVALID_SIZE -- NOT CHECKED" );
RTEMS.TASK_CREATE(
SPTEST.TASK_NAME( 1 ),
0,
@@ -152,20 +136,6 @@ package body SPTEST is
end DELAYED_SUBPROGRAM;
--PAGE
--
-- SERVICE_ROUTINE
--
procedure SERVICE_ROUTINE (
IGNORED : in RTEMS.VECTOR_NUMBER
) is
begin
NULL;
end SERVICE_ROUTINE;
--PAGE
--
-- SCREEN_1
@@ -187,20 +157,24 @@ package body SPTEST is
);
TEXT_IO.PUT_LINE( "TA1 - task_delete - INVALID_ID" );
-- RTEMS.TASK_GET_NOTE( RTEMS.SELF,
-- RTEMS.NOTEPAD_INDEX'LAST + 10,
-- NOTEPAD_VALUE,
-- STATUS
-- );
-- TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
-- STATUS,
-- RTEMS.INVALID_NUMBER,
-- "TASK_GET_NOTE WITH ILLEGAL NOTEPAD"
-- );
-- TEXT_IO.PUT_LINE( "TA1 - task_get_note - INVALID_NUMBER" );
TEXT_IO.PUT_LINE(
"TA1 - task_get_note - INVALID_NUMBER -- constraint error"
);
begin
RTEMS.TASK_GET_NOTE( RTEMS.SELF,
RTEMS.NOTEPAD_INDEX'LAST + 10,
NOTEPAD_VALUE,
STATUS
);
TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
STATUS,
RTEMS.INVALID_NUMBER,
"TASK_GET_NOTE WITH ILLEGAL NOTEPAD"
);
TEXT_IO.PUT_LINE( "TA1 - task_get_note - INVALID_NUMBER" );
exception
when others =>
TEXT_IO.PUT_LINE(
"TA1 - task_get_note - INVALID_NUMBER -- constraint error"
);
end;
RTEMS.TASK_GET_NOTE(
100,
@@ -252,11 +226,19 @@ package body SPTEST is
TEXT_IO.PUT_LINE( "TA1 - task_ident - local INVALID_NAME" );
RTEMS.TASK_IDENT( 100, 2, SPTEST.JUNK_ID, STATUS );
TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
STATUS,
RTEMS.INVALID_NODE,
"TASK_IDENT WITH ILLEGAL NODE"
);
if TEST_SUPPORT.Is_Configured_Multiprocessing then
TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
STATUS,
RTEMS.INVALID_NODE,
"TASK_IDENT WITH ILLEGAL NODE"
);
else
TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
STATUS,
RTEMS.INVALID_NAME,
"TASK_IDENT WITH ILLEGAL NODE"
);
end if;
TEXT_IO.PUT_LINE( "TA1 - task_ident - INVALID_NODE" );
RTEMS.TASK_RESTART( 100, 0, STATUS );
@@ -283,18 +265,22 @@ package body SPTEST is
);
TEXT_IO.PUT_LINE( "TA1 - task_resume - INCORRECT_STATE" );
-- RTEMS.TASK_SET_PRIORITY( RTEMS.SELF, 512, PREVIOUS_PRIORITY, STATUS );
-- TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
-- STATUS,
-- RTEMS.INVALID_PRIORITY,
-- "TASK_SET_PRIORITY WITH ILLEGAL PRIORITY"
-- );
-- TEXT_IO.PUT_LINE(
-- "TA1 - task_set_priority - INVALID_PRIORITY"
-- );
TEXT_IO.PUT_LINE(
"TA1 - task_set_priority - INVALID_PRIORITY -- constraint error"
);
begin
RTEMS.TASK_SET_PRIORITY( RTEMS.SELF, 512, PREVIOUS_PRIORITY, STATUS );
TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
STATUS,
RTEMS.INVALID_PRIORITY,
"TASK_SET_PRIORITY WITH ILLEGAL PRIORITY"
);
TEXT_IO.PUT_LINE(
"TA1 - task_set_priority - INVALID_PRIORITY"
);
exception
when others =>
TEXT_IO.PUT_LINE(
"TA1 - task_set_priority - INVALID_PRIORITY -- constraint error"
);
end;
RTEMS.TASK_SET_PRIORITY( 100, 8, PREVIOUS_PRIORITY, STATUS );
TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
@@ -304,20 +290,24 @@ package body SPTEST is
);
TEXT_IO.PUT_LINE( "TA1 - task_set_priority - INVALID_ID" );
-- RTEMS.TASK_SET_NOTE( RTEMS.SELF,
-- RTEMS.NOTEPAD_INDEX'LAST + 10,
-- NOTEPAD_VALUE,
-- STATUS
-- );
-- TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
-- STATUS,
-- RTEMS.INVALID_NUMBER,
-- "TASK_SET_NOTE WITH ILLEGAL NOTEPAD"
-- );
-- TEXT_IO.PUT_LINE( "TA1 - task_set_note - INVALID_NUMBER" );
TEXT_IO.PUT_LINE(
"TA1 - task_set_note - INVALID_NUMBER -- constraint error"
);
begin
RTEMS.TASK_SET_NOTE( RTEMS.SELF,
RTEMS.NOTEPAD_INDEX'LAST + 10,
NOTEPAD_VALUE,
STATUS
);
TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
STATUS,
RTEMS.INVALID_NUMBER,
"TASK_SET_NOTE WITH ILLEGAL NOTEPAD"
);
TEXT_IO.PUT_LINE( "TA1 - task_set_note - INVALID_NUMBER" );
exception
when others =>
TEXT_IO.PUT_LINE(
"TA1 - task_set_note - INVALID_NUMBER -- constraint error"
);
end;
RTEMS.TASK_SET_NOTE(
100,
@@ -583,7 +573,7 @@ package body SPTEST is
RTEMS.TASK_CREATE(
TASK_NAME,
1,
RTEMS.CONFIGURATION.WORK_SPACE_SIZE,
TEST_SUPPORT.WORK_SPACE_SIZE,
RTEMS.DEFAULT_MODES,
RTEMS.DEFAULT_ATTRIBUTES,
SPTEST.JUNK_ID,
@@ -762,20 +752,22 @@ package body SPTEST is
);
TEXT_IO.PUT_LINE( "TA1 - task_create - 11 - TOO_MANY" );
RTEMS.TASK_CREATE(
TASK_NAME,
4,
2048,
RTEMS.DEFAULT_MODES,
RTEMS.GLOBAL,
SPTEST.JUNK_ID,
STATUS
);
TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
STATUS,
RTEMS.MP_NOT_CONFIGURED,
"TASK_CREATE OF GLOBAL TASK IN SINGLE CPU SYSTEM"
);
if TEST_SUPPORT.Is_Configured_Multiprocessing then
RTEMS.TASK_CREATE(
TASK_NAME,
4,
2048,
RTEMS.DEFAULT_MODES,
RTEMS.GLOBAL,
SPTEST.JUNK_ID,
STATUS
);
TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
STATUS,
RTEMS.MP_NOT_CONFIGURED,
"TASK_CREATE OF GLOBAL TASK IN SINGLE CPU SYSTEM"
);
end if;
TEXT_IO.PUT_LINE( "TA1 - task_create - MP_NOT_CONFIGURED" );
end SCREEN_3;
@@ -911,7 +903,7 @@ package body SPTEST is
RTEMS.SEMAPHORE_CREATE(
SPTEST.SEMAPHORE_NAME( 2 ),
1,
RTEMS.BINARY_SEMAPHORE,
(RTEMS.BINARY_SEMAPHORE or RTEMS.PRIORITY or RTEMS.INHERIT_PRIORITY),
RTEMS.NO_PRIORITY,
SPTEST.SEMAPHORE_ID( 2 ),
STATUS
@@ -987,19 +979,21 @@ package body SPTEST is
);
TEXT_IO.PUT_LINE("TA1 - semaphore_create - INVALID_NUMBER");
RTEMS.SEMAPHORE_CREATE(
SPTEST.SEMAPHORE_NAME( 3 ),
1,
RTEMS.GLOBAL,
RTEMS.NO_PRIORITY,
SPTEST.JUNK_ID,
STATUS
);
TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
STATUS,
RTEMS.MP_NOT_CONFIGURED,
"SEMAPHORE_CREATE OF MP_NOT_CONFIGURED"
);
if TEST_SUPPORT.Is_Configured_Multiprocessing then
RTEMS.SEMAPHORE_CREATE(
SPTEST.SEMAPHORE_NAME( 3 ),
1,
RTEMS.GLOBAL,
RTEMS.NO_PRIORITY,
SPTEST.JUNK_ID,
STATUS
);
TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
STATUS,
RTEMS.MP_NOT_CONFIGURED,
"SEMAPHORE_CREATE OF MP_NOT_CONFIGURED"
);
end if;
TEXT_IO.PUT_LINE("TA1 - semaphore_create - MP_NOT_CONFIGURED");
RTEMS.SEMAPHORE_DELETE( 100, STATUS );
@@ -1239,19 +1233,21 @@ package body SPTEST is
"TA1 - message_queue_create - Q 1 - INVALID_NAME"
);
RTEMS.MESSAGE_QUEUE_CREATE(
SPTEST.QUEUE_NAME( 1 ),
1,
16,
RTEMS.GLOBAL,
SPTEST.JUNK_ID,
STATUS
);
TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
STATUS,
RTEMS.MP_NOT_CONFIGURED,
"MESSAGE_QUEUE_CREATE OF MP NOT CONFIGURED"
);
if TEST_SUPPORT.Is_Configured_Multiprocessing then
RTEMS.MESSAGE_QUEUE_CREATE(
SPTEST.QUEUE_NAME( 1 ),
1,
16,
RTEMS.GLOBAL,
SPTEST.JUNK_ID,
STATUS
);
TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
STATUS,
RTEMS.MP_NOT_CONFIGURED,
"MESSAGE_QUEUE_CREATE OF MP NOT CONFIGURED"
);
end if;
TEXT_IO.PUT_LINE(
"TA1 - message_queue_create - Q 1 - MP_NOT_CONFIGURED");
@@ -1643,56 +1639,10 @@ package body SPTEST is
procedure SCREEN_9
is
CONVERTED : RTEMS.ADDRESS;
STATUS : RTEMS.STATUS_CODES;
OLD_SERVICE_ROUTINE : RTEMS.ADDRESS;
CONVERTED : RTEMS.ADDRESS;
STATUS : RTEMS.STATUS_CODES;
begin
-- RTEMS.INTERRUPT_CATCH(
-- SPTEST.SERVICE_ROUTINE'ACCESS,
-- 500,
-- OLD_SERVICE_ROUTINE,
-- STATUS
-- );
-- TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
-- STATUS,
-- RTEMS.INVALID_NUMBER,
-- "INTERRUPT_CATCH WITH INVALID VECTOR"
-- );
-- TEXT_IO.PUT_LINE( "TA1 - interrupt_catch - INVALID_NUMBER" );
TEXT_IO.PUT_LINE(
"TA1 - interrupt_catch - INVALID_NUMBER -- constraint error"
);
RTEMS.INTERRUPT_CATCH(
RTEMS.NULL_ADDRESS,
3,
OLD_SERVICE_ROUTINE,
STATUS
);
TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
STATUS,
RTEMS.INVALID_ADDRESS,
"INTERRUPT_CATCH WITH INVALID HANDLER"
);
TEXT_IO.PUT_LINE( "TA1 - interrupt_catch - INVALID_ADDRESS" );
RTEMS.SIGNAL_SEND( 100, RTEMS.SIGNAL_1, STATUS );
TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
STATUS,
RTEMS.INVALID_ID,
"SIGNAL_SEND WITH ILLEGAL ID"
);
TEXT_IO.PUT_LINE( "TA1 - signal_send - INVALID_ID" );
RTEMS.SIGNAL_SEND( RTEMS.SELF, RTEMS.SIGNAL_16, STATUS );
TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
STATUS,
RTEMS.NOT_DEFINED,
"SIGNAL_SEND WITH NO HANDLER"
);
TEXT_IO.PUT_LINE( "TA1 - signal_send - NOT_DEFINED" );
RTEMS.PORT_CREATE(
0,
SPTEST.INTERNAL_PORT_AREA'ADDRESS,
@@ -2077,20 +2027,22 @@ package body SPTEST is
"TA1 - partition_create - length < buffer size - INVALID_SIZE"
);
RTEMS.PARTITION_CREATE(
SPTEST.PARTITION_NAME( 1 ),
SPTEST.PARTITION_GOOD_AREA'ADDRESS,
128,
64,
RTEMS.GLOBAL,
SPTEST.JUNK_ID,
STATUS
);
TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
STATUS,
RTEMS.MP_NOT_CONFIGURED,
"PARTITION_CREATE OF GLOBAL"
);
if TEST_SUPPORT.Is_Configured_Multiprocessing then
RTEMS.PARTITION_CREATE(
SPTEST.PARTITION_NAME( 1 ),
SPTEST.PARTITION_GOOD_AREA'ADDRESS,
128,
64,
RTEMS.GLOBAL,
SPTEST.JUNK_ID,
STATUS
);
TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
STATUS,
RTEMS.MP_NOT_CONFIGURED,
"PARTITION_CREATE OF GLOBAL"
);
end if;
TEXT_IO.PUT_LINE("TA1 - partition_create - MP_NOT_CONFIGURED");
RTEMS.PARTITION_CREATE(
@@ -2323,7 +2275,7 @@ package body SPTEST is
RTEMS.REGION_CREATE(
SPTEST.REGION_NAME( 1 ),
SPTEST.REGION_GOOD_AREA'ADDRESS,
16#40#,
34,
34,
RTEMS.DEFAULT_ATTRIBUTES,
SPTEST.JUNK_ID,
@@ -2653,89 +2605,6 @@ package body SPTEST is
TIME : RTEMS.TIME_OF_DAY;
STATUS : RTEMS.STATUS_CODES;
begin
RTEMS.IO_CLOSE(
RTEMS.DEVICE_MAJOR_NUMBER'LAST,
0,
RTEMS.NULL_ADDRESS,
STATUS
);
TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
STATUS,
RTEMS.INVALID_NUMBER,
"IO_CLOSE WITH BAD MAJOR NUMBER"
);
TEXT_IO.PUT_LINE("TA1 - io_close - INVALID_NUMBER");
RTEMS.IO_CONTROL(
RTEMS.DEVICE_MAJOR_NUMBER'LAST,
0,
RTEMS.NULL_ADDRESS,
STATUS
);
TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
STATUS,
RTEMS.INVALID_NUMBER,
"IO_CONTROL WITH BAD MAJOR NUMBER"
);
TEXT_IO.PUT_LINE(
"TA1 - io_control - INVALID_NUMBER"
);
RTEMS.IO_INITIALIZE(
RTEMS.DEVICE_MAJOR_NUMBER'LAST,
0,
RTEMS.NULL_ADDRESS,
STATUS
);
TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
STATUS,
RTEMS.INVALID_NUMBER,
"IO_INITIALIZE WITH BAD MAJOR NUMBER"
);
TEXT_IO.PUT_LINE(
"TA1 - io_initialize - INVALID_NUMBER"
);
RTEMS.IO_OPEN(
RTEMS.DEVICE_MAJOR_NUMBER'LAST,
0,
RTEMS.NULL_ADDRESS,
STATUS
);
TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
STATUS,
RTEMS.INVALID_NUMBER,
"IO_OPEN WITH BAD MAJOR NUMBER"
);
TEXT_IO.PUT_LINE( "TA1 - io_open - INVALID_NUMBER" );
RTEMS.IO_READ(
RTEMS.DEVICE_MAJOR_NUMBER'LAST,
0,
RTEMS.NULL_ADDRESS,
STATUS
);
TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
STATUS,
RTEMS.INVALID_NUMBER,
"IO_READ WITH BAD MAJOR NUMBER"
);
TEXT_IO.PUT_LINE( "TA1 - io_read - INVALID_NUMBER" );
RTEMS.IO_WRITE(
RTEMS.DEVICE_MAJOR_NUMBER'LAST,
0,
RTEMS.NULL_ADDRESS,
STATUS
);
TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
STATUS,
RTEMS.INVALID_NUMBER,
"IO_WRITE WITH BAD MAJOR NUMBER"
);
TEXT_IO.PUT_LINE( "TA1 - io_write - INVALID_NUMBER" );
TIME := ( 2000, 12, 31, 23, 59, 59, 0 );
RTEMS.CLOCK_SET( TIME, STATUS );
TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "CLOCK_SET SUCCESSFUL" );

View File

@@ -255,19 +255,6 @@ package SPTEST is
ARGUMENT : in RTEMS.TASK_ARGUMENT
);
--
-- SERVICE_ROUTINE
--
-- DESCRIPTION:
--
-- This subprogram serves as a dummy ISR which is installed at an
-- illegal vector number.
--
procedure SERVICE_ROUTINE (
IGNORED : in RTEMS.VECTOR_NUMBER
);
--
-- SCREEN_1
--

View File

@@ -2,7 +2,7 @@
*
* This include file defines the Configuration Table for this test.
*
* COPYRIGHT (c) 1989-1997.
* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may in
@@ -20,6 +20,7 @@
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
#define CONFIGURE_MAXIMUM_TASKS 3
#define CONFIGURE_MAXIMUM_TIMERS 6
#define CONFIGURE_TICKS_PER_TIMESLICE 100

View File

@@ -16,11 +16,11 @@ TA2 - event_receive - waiting forever on EVENT_10
TA1 - EVENT_14 received - eventout => 16#4000#
TA1 - event_send - send EVENT_19 to TA2
TA1 - clock_get - 8:15: 0 2/12/1988
<pause>
<pause>
TA1 - event_send - send EVENT_18 to self after 5 seconds
TA1 - event_receive - waiting forever on EVENT_18
TA2 - EVENT_10 received - eventout => 16#400#
TA2 - clock_get - 8:15: 5 02/12/1988
TA2 - EVENT_10 received - eventout => 16#400#
TA1 - clock_get - 8:15: 5 2/12/1988
TA2 - event_receive - PENDING_EVENTS
TA2 - eventout => 16#80000#
TA2 - event_receive - EVENT_19 - NO_WAIT
@@ -30,11 +30,11 @@ TA1 - EVENT_18 received - eventout => 16#40000#
TA1 - clock_get - 8:15: 5 2/12/1988
TA1 - event_send - send EVENT_3 to self
TA1 - event_receive - EVENT_3 or EVENT_22 - NO_WAIT and EVENT_ANY
TA1 - EVENT_3 received - eventout => 16#8#
TA1 - EVENT_3 received - eventout => 16#8#
TA1 - event_send - send EVENT_4 to self
TA1 - event_receive - waiting forever on EVENT_4 or EVENT_5 - EVENT_ANY
TA1 - EVENT_4 received - eventout => 16#10#
<pause>
TA1 - EVENT_4 received - eventout => 16#10#
<pause>
TA1 - event_send - send EVENT_18 to self after 5 seconds
TA1 - timer_cancel - cancelling timer for event EVENT_18
TA1 - event_send - send EVENT_8 to self after 60 seconds
@@ -43,11 +43,11 @@ TA1 - event_send - send EVENT_10 to self after 60 seconds
TA1 - timer_cancel - cancelling timer for event EVENT_8
TA1 - clock_set - 8:15: 0 2/12/1988
TA1 - event_send - send EVENT_1 every second
TA1 - EVENT_1 received - eventout => 16#2# - at 8:15: 1 2/12/1988
TA1 - EVENT_1 received - eventout => 16#2# - at 8:15: 2 2/12/1988
TA1 - EVENT_1 received - eventout => 16#2# - at 8:15: 3 2/12/1988
TA1 - EVENT_1 received - eventout => 16#2# - at 8:15: 1 2/12/1988
TA1 - EVENT_1 received - eventout => 16#2# - at 8:15: 2 2/12/1988
TA1 - EVENT_1 received - eventout => 16#2# - at 8:15: 3 2/12/1988
TA1 - timer_cancel - cancelling timer for event EVENT_1
<pause>
<pause>
TA1 - event_send - send EVENT_11 to self in 1 day
TA1 - event_send - send EVENT_11 to self in 1 day
TA1 - event_send - send EVENT_11 to self in 2 days
@@ -56,17 +56,17 @@ TA1 - timer_cancel - cancelling EVENT_11 to self in 2 days
TA1 - event_send - resending EVENT_11 to self in 2 days
TA1 - clock_set - 8:15: 3 2/15/1988
TA1 - event_receive - waiting forever on EVENT_11
TA1 - EVENT_11 received - eventout => 16#800#
<pause>
TA1 - EVENT_11 received - eventout => 16#800#
<pause>
TA1 - event_send/event_receive combination
TA1 - clock_set - 8:15: 0 2/12/1988
TA1 - event_receive all outstanding events
TA1 - event_send - send EVENT_10 to self in 1 day
TA1 - event_send - send EVENT_11 to self in 2 days
TA1 - clock_set - 7:15: 0 2/12/1988
TA1 - clock_set - 7:15: 0 2/12/1988
TA1 - set time backwards
TA1 - no events received
TA1 - clock_set - 7:15: 0 2/14/1988
TA1 - clock_set - 7:15: 0 2/14/1988
TA1 - set time forwards (leave a timer)
TA1 - EVENT_10 received
TA1 - event_send - send EVENT_11 to self in 100 ticks

View File

@@ -2,7 +2,7 @@
*
* This include file defines the Configuration Table for this test.
*
* COPYRIGHT (c) 1989-1997.
* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may in
@@ -20,6 +20,7 @@
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
#define CONFIGURE_MAXIMUM_TASKS 8
#define CONFIGURE_MAXIMUM_SEMAPHORES 10
#define CONFIGURE_TICKS_PER_TIMESLICE 100

View File

@@ -11,7 +11,7 @@ PRI4 - semaphore_obtain - wait forever on SM2
PRI3 - semaphore_obtain - wait forever on SM2
PRI2 - semaphore_obtain - wait forever on SM2
PRI1 - semaphore_obtain - wait forever on SM2
<pause>
<pause>
INIT - Binary Semaphore and Priority Inheritance Test
INIT - semaphore_create - allocated binary semaphore
INIT - semaphore_release - allocated binary semaphore
@@ -20,7 +20,7 @@ PRI5 - semaphore_obtain - wait forever on SM2
PRI5 - task_suspend - until all priority tasks blocked
PDRV - priority of PRI5 is 67
PRI4 - semaphore_obtain - wait forever on SM2
PDRV - change priority of PRI5 from 67 to 68
PDRV - change priority of PRI5 from 67 to 68
PDRV - priority of PRI5 is 67
PRI3 - semaphore_obtain - wait forever on SM2
PDRV - priority of PRI5 is 67
@@ -34,8 +34,8 @@ PRI5 - semaphore_obtain - nested
PRI5 - semaphore_release - nested
PRI5 - semaphore_release - restore priority
PRI5 - priority of PRI5 is 68
<pause>
TA1 - semaphore_ident - smid => 16#10001#
<pause>
TA1 - semaphore_ident - smid => 16#1A010009#
TA1 - semaphore_obtain - wait forever on SM2
TA1 - got SM2
TA1 - semaphore_obtain - wait forever on SM3
@@ -45,7 +45,7 @@ TA1 - got SM1
TA1 - task_wake_after - sleep 5 seconds
TA2 - semaphore_obtain - wait forever on SM1
TA3 - semaphore_obtain - wait forever on SM2
<pause>
<pause>
TA1 - semaphore_release - release SM1
TA1 - semaphore_obtain - waiting for SM1 with 10 second timeout
TA2 - got SM1
@@ -61,7 +61,7 @@ TA1 - task_wake_after - sleep 5 seconds
TA3 - got SM2
TA3 - semaphore_release - release SM2
TA3 - semaphore_obtain - wait forever on SM3
<pause>
<pause>
TA1 - task_delete - delete TA3
TA1 - task_wake_after - sleep 5 seconds
TA4 - semaphore_obtain - wait forever on SM1

View File

@@ -2,7 +2,7 @@
*
* This include file defines the Configuration Table for this test.
*
* COPYRIGHT (c) 1989-1997.
* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may in
@@ -20,6 +20,7 @@
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
#define CONFIGURE_MAXIMUM_TASKS 4
#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 10
#define CONFIGURE_TICKS_PER_TIMESLICE 100

View File

@@ -1,54 +1,54 @@
*** TEST 13 ***
TA1 - message_queue_ident - qid => 16#10001#
TA1 - message_queue_ident - qid => 16#22010001#
TA1 - message_queue_send - BUFFER 1 TO Q 1
TA1 - message_queue_send - BUFFER 2 TO Q 1
TA1 - task_wake_after - sleep 5 seconds
TA2 - message_queue_receive - receive from queue 1 - NO_WAIT
TA2 - buffer received: BUFFER 1 TO Q 1
TA2 - buffer received: BUFFER 1 TO Q 1
TA2 - message_queue_receive - receive from queue 1 - WAIT FOREVER
TA2 - buffer received: BUFFER 2 TO Q 1
TA2 - buffer received: BUFFER 2 TO Q 1
TA2 - message_queue_receive - receive from queue 1 - WAIT FOREVER
TA3 - message_queue_receive - receive from queue 2 - WAIT FOREVER
TA1 - message_queue_send - BUFFER 3 TO Q 1
TA1 - task_wake_after - sleep 5 seconds
TA2 - buffer received: BUFFER 3 TO Q 1
TA2 - buffer received: BUFFER 3 TO Q 1
TA2 - task_set_priority - make self highest priority task
TA2 - message_queue_receive - receive from queue 2 - WAIT FOREVER
<pause>
<pause>
TA1 - message_queue_send - BUFFER 1 TO Q 2
TA2 - buffer received: BUFFER 1 TO Q 2
TA2 - buffer received: BUFFER 1 TO Q 2
TA2 - message_queue_send - BUFFER 2 TO Q 2
TA2 - message_queue_receive - receive from queue 1 - 10 second timeout
TA1 - message_queue_receive - receive from queue 1 - 10 second timeout
TA3 - buffer received: BUFFER 2 TO Q 2
TA3 - buffer received: BUFFER 2 TO Q 2
TA3 - message_queue_broadcast - BUFFER 3 TO Q 1
TA2 - buffer received: BUFFER 3 TO Q 1
TA2 - buffer received: BUFFER 3 TO Q 1
TA2 - message_queue_receive - receive from queue 3 - WAIT FOREVER
TA3 - number of tasks awakened = 2
TA3 - number of tasks awakened = 2
TA3 - message_queue_receive - receive from queue 3 - WAIT FOREVER
TA1 - buffer received: BUFFER 3 TO Q 1
TA1 - buffer received: BUFFER 3 TO Q 1
TA1 - task_delete - delete TA2
TA1 - message_queue_send - BUFFER 1 TO Q 3
TA1 - task_wake_after - sleep 5 seconds
TA3 - buffer received: BUFFER 1 TO Q 3
TA3 - buffer received: BUFFER 1 TO Q 3
TA3 - task_delete - delete self
<pause>
<pause>
TA1 - message_queue_send - BUFFER 2 TO Q 3
TA1 - message_queue_send - BUFFER 3 TO Q 3
TA1 - message_queue_send - BUFFER 4 TO Q 3
TA1 - message_queue_urgent - BUFFER 5 TO Q 3
TA1 - message_queue_receive - receive from queue 3 - WAIT FOREVER
TA1 - buffer received: BUFFER 5 TO Q 3
TA1 - buffer received: BUFFER 5 TO Q 3
TA1 - message_queue_receive - receive from queue 3 - WAIT FOREVER
TA1 - buffer received: BUFFER 2 TO Q 3
TA1 - buffer received: BUFFER 2 TO Q 3
TA1 - message_queue_receive - receive from queue 3 - WAIT FOREVER
TA1 - buffer received: BUFFER 3 TO Q 3
TA1 - buffer received: BUFFER 3 TO Q 3
TA1 - message_queue_receive - receive from queue 3 - WAIT FOREVER
TA1 - buffer received: BUFFER 4 TO Q 3
TA1 - buffer received: BUFFER 4 TO Q 3
TA1 - message_queue_urgent - BUFFER 3 TO Q 2
TA1 - message_queue_receive - receive from queue 2 - WAIT FOREVER
TA1 - buffer received: BUFFER 3 TO Q 2
<pause>
TA1 - buffer received: BUFFER 3 TO Q 2
<pause>
TA1 - message_queue_delete - delete queue 1
TA1 - message_queue_urgent - BUFFER 3 TO Q 2
TA1 - message_queue_delete - delete queue 2
@@ -63,4 +63,4 @@ TA1 - message_queue_send - until all message buffers consumed
TA1 - message_queue_send - all message buffers consumed
TA1 - message_queue_flush - Q 3
TA1 - 100 messages were flushed from Q 3
*** END OF TEST 13 ***
*** END OF TEST 13 ***

View File

@@ -10,7 +10,7 @@
--
--
--
-- COPYRIGHT (c) 1989-1997.
-- COPYRIGHT (c) 1989-2007.
-- On-Line Applications Research Corporation (OAR).
--
-- The license and distribution terms for this file may in
@@ -504,10 +504,6 @@ TEST_SUPPORT.PAUSE;
UNSIGNED32_IO.PUT( COUNT, WIDTH => 3, BASE => 10 );
TEXT_IO.PUT_LINE( " messages were flushed from Q 3" );
TEXT_IO.PUT( "TA1 - ERROR - " );
UNSIGNED32_IO.PUT( COUNT, WIDTH => 3, BASE => 10 );
TEXT_IO.PUT_LINE( " messages flushed" );
TEXT_IO.PUT_LINE( "*** END OF TEST 13 ***" );
RTEMS.SHUTDOWN_EXECUTIVE( 0 );

View File

@@ -2,7 +2,7 @@
*
* This include file defines the Configuration Table for this test.
*
* COPYRIGHT (c) 1989-1997.
* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may in
@@ -20,6 +20,7 @@
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
#define CONFIGURE_MAXIMUM_TASKS 3
#define CONFIGURE_MAXIMUM_TIMERS 1
#define CONFIGURE_TICKS_PER_TIMESLICE 100

View File

@@ -4,21 +4,21 @@ TA1 - signal_send - SIGNAL_16 to self
ASR - ENTRY - signal => 16#10000#
ASR - EXIT - signal => 16#10000#
TA1 - signal_send - SIGNAL_0 to self
ASR - ENTRY - signal => 16#1#
ASR - ENTRY - signal => 16#1#
ASR - task_wake_after - yield processor
TA2 - signal_send - SIGNAL_17 to TA1
TA2 - task_wake_after - yield processor
ASR - ENTRY - signal => 16#20000#
ASR - EXIT - signal => 16#20000#
ASR - EXIT - signal => 16#1#
ASR - EXIT - signal => 16#1#
TA1 - signal_catch - NO_ASR
<pause>
<pause>
TA1 - signal_send - SIGNAL_1 to self
ASR - ENTRY - signal => 16#2#
ASR - ENTRY - signal => 16#2#
ASR - task_wake_after - yield processor
TA2 - signal_send - SIGNAL_18 and SIGNAL_19 to TA1
TA2 - task_wake_after - yield processor
ASR - EXIT - signal => 16#2#
ASR - EXIT - signal => 16#2#
ASR - ENTRY - signal => 16#C0000#
ASR - EXIT - signal => 16#C0000#
TA1 - task_mode - disable ASRs
@@ -26,8 +26,8 @@ TA1 - sending signal to SELF from timer
TA1 - waiting for signal to arrive
TA1 - timer routine got the correct arguments
TA1 - task_mode - enable ASRs
ASR - ENTRY - signal => 16#8#
ASR - EXIT - signal => 16#8#
ASR - ENTRY - signal => 16#8#
ASR - EXIT - signal => 16#8#
TA1 - signal_catch - ASR ADDRESS of NULL
TA1 - task_delete - delete self
*** END OF TEST 14 ***

View File

@@ -2,7 +2,7 @@
*
* This include file defines the Configuration Table for this test.
*
* COPYRIGHT (c) 1989-1997.
* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may in
@@ -20,6 +20,7 @@
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
#define CONFIGURE_MAXIMUM_TASKS 2
#define CONFIGURE_MAXIMUM_PARTITIONS 2
#define CONFIGURE_TICKS_PER_TIMESLICE 100

View File

@@ -1,16 +1,16 @@
*** TEST 15 ***
INIT - partition_create - partition 1
INIT - partition_create - partition 2
TA1 - partition_ident - partition 1 id = 16#10001#
TA1 - partition_ident - partition 2 id = 16#10002#
TA1 - partition_get_buffer - get buffer 1 from partition 1 - 16#0#
TA1 - partition_get_buffer - get buffer 2 from partition 1 - 16#200#
TA1 - partition_get_buffer - get buffer 1 from partition 2 - 16#0#
TA1 - partition_get_buffer - get buffer 2 from partition 2 - 16#80#
TA1 - partition_return_buffer - return buffer 1 to partition 1 - 16#0#
TA1 - partition_return_buffer - return buffer 2 to partition 1 - 16#200#
TA1 - partition_return_buffer - return buffer 1 to partition 2 - 16#0#
TA1 - partition_return_buffer - return buffer 2 to partition 2 - 16#80#
TA1 - partition_ident - partition 1 id = 16#2A010001#
TA1 - partition_ident - partition 2 id = 16#2A010002#
TA1 - partition_get_buffer - get buffer 1 from partition 1 - 16#0#
TA1 - partition_get_buffer - get buffer 2 from partition 1 - 16#200#
TA1 - partition_get_buffer - get buffer 1 from partition 2 - 16#0#
TA1 - partition_get_buffer - get buffer 2 from partition 2 - 16#80#
TA1 - partition_return_buffer - return buffer 1 to partition 1 - 16#0#
TA1 - partition_return_buffer - return buffer 2 to partition 1 - 16#200#
TA1 - partition_return_buffer - return buffer 1 to partition 2 - 16#0#
TA1 - partition_return_buffer - return buffer 2 to partition 2 - 16#80#
TA1 - partition_delete - delete partition 1
TA1 - partition_delete - delete partition 2
*** END OF TEST 15 ***

View File

@@ -2,7 +2,7 @@
*
* This include file defines the Configuration Table for this test.
*
* COPYRIGHT (c) 1989-1997.
* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may in
@@ -20,6 +20,7 @@
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
#define CONFIGURE_MAXIMUM_TASKS 4
#define CONFIGURE_MAXIMUM_REGIONS 4
#define CONFIGURE_TICKS_PER_TIMESLICE 100

View File

@@ -1,48 +1,48 @@
*** TEST 16 ***
TA1 - region_ident - rnid => 16#10001#
TA1 - region_ident - rnid => 16#32010001#
TA1 - region_get_segment - wait on 100 byte segment from region 2
TA1 - got segment from region 2 - 16#F78#
TA1 - got segment from region 2 - 16#30#
TA1 - region_get_segment - wait on 3K segment from region 3
TA1 - got segment from region 3 - 16#3F8#
TA1 - got segment from region 3 - 16#30#
TA1 - region_get_segment - get 3080 byte segment from region 1 - NO_WAIT
TA1 - got segment from region 1 - 16#378#
TA1 - got segment from region 1 - 16#20#
TA1 - task_wake_after - yield processor
TA2 - region_get_segment - wait on 2K segment from region 1
TA3 - region_get_segment - wait on 3968 byte segment from region 2
<pause>
TA1 - region_return_segment - return segment to region 1 - 16#378#
TA3 - region_get_segment - wait on 3950 byte segment from region 2
<pause>
TA1 - region_return_segment - return segment to region 1 - 16#20#
TA1 - region_get_segment - wait 10 seconds for 3K segment from region 1
TA2 - got segment from region 1 - 16#7F8#
TA2 - region_return_segment - return segment to region 1 - 16#7F8#
TA2 - got segment from region 1 - 16#20#
TA2 - region_return_segment - return segment to region 1 - 16#20#
TA2 - task_set_priority - make self highest priority task
TA2 - region_get_segment - wait on 3968 byte segment from region 2
TA1 - got segment from region 1 - 16#3F8#
TA1 - region_return_segment - return segment to region 2 - 16#F78#
TA2 - got segment from region 2 - 16#8#
TA2 - region_return_segment - return segment to region 2 - 16#8#
TA2 - region_get_segment - wait on 3950 byte segment from region 2
TA1 - got segment from region 1 - 16#20#
TA1 - region_return_segment - return segment to region 2 - 16#30#
TA2 - got segment from region 2 - 16#30#
TA2 - region_return_segment - return segment to region 2 - 16#30#
TA2 - task_delete - delete self
TA1 - task_wake_after - yield processor
TA3 - got segment from region 2 - 16#8#
TA3 - got segment from region 2 - 16#30#
TA3 - region_get_segment - wait on 2K segment from region 3
TA1 - task_delete - delete TA3
<pause>
<pause>
TA1 - task_wake_after - yield processor
TA4 - region_get_segment - wait on 1.5K segment from region 1
TA5 - region_get_segment - wait on 1.5K segment from region 1
TA1 - region_return_segment - return segment to region 1 - 16#3F8#
TA1 - region_return_segment - return segment to region 1 - 16#20#
TA1 - task_wake_after - yield processor
TA4 - got and returned 16#9F8#
TA5 - got and returned 16#3F0#
TA4 - got and returned 16#20#
TA5 - got and returned 16#6A0#
TA1 - region_get_segment - wait 10 seconds for 3K segment from region 1
TA1 - got segment from region 1 - 16#3F8#
TA1 - got segment from region 1 - 16#20#
TA1 - task_wake_after - sleep 1 second
TA4 - region_get_segment - wait on 3K segment from region 1
TA5 - region_get_segment - wait on 3K segment from region 1
TA4 - region_get_segment - wait on 3K segment from region 1
TA1 - task_delete - delete TA4
TA1 - region_return_segment - return segment to region 1 - 16#3F8#
TA1 - region_return_segment - return segment to region 1 - 16#20#
TA1 - task_wake_after - yield processor
TA5 - got segment from region 1 - 16#3F8#
TA5 - region_return_segment - return segment to region 1 - 16#3F8#
TA5 - got segment from region 1 - 16#20#
TA5 - region_return_segment - return segment to region 1 - 16#20#
TA5 - task_delete - delete self
TA1 - region_delete - delete region 1
*** END OF TEST 16 ***

View File

@@ -10,7 +10,7 @@
--
--
--
-- COPYRIGHT (c) 1989-1997.
-- COPYRIGHT (c) 1989-2007.
-- On-Line Applications Research Corporation (OAR).
--
-- The license and distribution terms for this file may in
@@ -483,12 +483,12 @@ TEST_SUPPORT.PAUSE;
TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_SET_PRIORITY" );
TEXT_IO.PUT(
"TA2 - region_get_segment - wait on 3968 byte segment "
"TA2 - region_get_segment - wait on 3950 byte segment "
);
TEXT_IO.PUT_LINE( "from region 2" );
RTEMS.REGION_GET_SEGMENT(
SPTEST.REGION_ID( 2 ),
3968,
3950,
RTEMS.DEFAULT_OPTIONS,
RTEMS.NO_TIMEOUT,
SEGMENT_ADDRESS_2,
@@ -530,11 +530,11 @@ TEST_SUPPORT.PAUSE;
STATUS : RTEMS.STATUS_CODES;
begin
TEXT_IO.PUT( "TA3 - region_get_segment - wait on 3968 byte segment " );
TEXT_IO.PUT( "TA3 - region_get_segment - wait on 3950 byte segment " );
TEXT_IO.PUT_LINE( "from region 2" );
RTEMS.REGION_GET_SEGMENT(
SPTEST.REGION_ID( 2 ),
3968,
3950,
RTEMS.DEFAULT_OPTIONS,
RTEMS.NO_TIMEOUT,
SEGMENT_ADDRESS_1,

View File

@@ -2,7 +2,7 @@
*
* This include file defines the Configuration Table for this test.
*
* COPYRIGHT (c) 1989-1997.
* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may in
@@ -20,6 +20,7 @@
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
#define CONFIGURE_MAXIMUM_TASKS 3
#define CONFIGURE_MICROSECONDS_PER_TICK RTEMS_MILLISECONDS_TO_MICROSECONDS(25)
#define CONFIGURE_TICKS_PER_TIMESLICE 1000

View File

@@ -2,7 +2,7 @@
*
* This include file defines the Configuration Table for this test.
*
* COPYRIGHT (c) 1989-1997.
* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may in
@@ -27,6 +27,8 @@
#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 20
#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 10
#define CONFIGURE_MAXIMUM_TASKS 7
#include <rtems/confdefs.h>
/* end of include file */

View File

@@ -48,9 +48,8 @@ TA4 - clock_get - 9: 0:14 12/31/1988
TA5 - clock_get - 9: 0:14 12/31/1988
TA1 - clock_get - 9: 0:15 12/31/1988
TA3 - clock_get - 9: 0:15 12/31/1988
TA5 - clock_get - 9: 0:15 12/31/1988
TA4 - clock_get - 9: 0:15 12/31/1988
TA5 - clock_get - 9: 0:15 12/31/1988
TA4 - task_delete - self
TA5 - task_delete - TA3
*** END OF TEST 19 ***

View File

@@ -2,7 +2,7 @@
*
* This include file defines the Configuration Table for this test.
*
* COPYRIGHT (c) 1989-1997.
* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may in
@@ -20,6 +20,7 @@
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
#define CONFIGURE_MAXIMUM_TASKS 7
#define CONFIGURE_MAXIMUM_PERIODS 10
#define CONFIGURE_POSIX_INIT_THREAD_TABLE

View File

@@ -1,19 +1,19 @@
*** TEST 20 ***
TA1 - rate_monotonic_create id = 16#10001#
TA1 - rate_monotonic_ident id = 16#10001#
TA1 - (16#10001#) period 2
TA2 - rate_monotonic_create id = 16#10002#
TA2 - rate_monotonic_ident id = 16#10002#
TA2 - (16#10002#) period 2
TA3 - rate_monotonic_create id = 16#10003#
TA3 - rate_monotonic_ident id = 16#10003#
TA3 - (16#10003#) period 2
TA4 - rate_monotonic_create id = 16#10004#
TA4 - rate_monotonic_ident id = 16#10004#
TA4 - (16#10004#) period 2
TA5 - rate_monotonic_create id = 16#10005#
TA5 - rate_monotonic_ident id = 16#10005#
TA5 - (16#10005#) period 100
TA1 - rate_monotonic_create id = 16#42010001#
TA1 - rate_monotonic_ident id = 16#42010001#
TA1 - (16#42010001#) period 2
TA2 - rate_monotonic_create id = 16#42010002#
TA2 - rate_monotonic_ident id = 16#42010002#
TA2 - (16#42010002#) period 2
TA3 - rate_monotonic_create id = 16#42010003#
TA3 - rate_monotonic_ident id = 16#42010003#
TA3 - (16#42010003#) period 2
TA4 - rate_monotonic_create id = 16#42010004#
TA4 - rate_monotonic_ident id = 16#42010004#
TA4 - (16#42010004#) period 2
TA5 - rate_monotonic_create id = 16#42010005#
TA5 - rate_monotonic_ident id = 16#42010005#
TA5 - (16#42010005#) period 100
TA5 - PERIODS CHECK OK (1)
TA5 - PERIODS CHECK OK (2)
TA5 - PERIODS CHECK OK (3)

View File

@@ -1,2 +0,0 @@
Makefile
Makefile.in

View File

@@ -1,19 +0,0 @@
## $Id$
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(top_srcdir)/../../../testsuites/automake/compile.am
include $(top_srcdir)/ada.am
noinst_PROGRAMS = sp21
sp21_SOURCES = sp21.adb config.h sptest.adb sptest.ads
sp21_SOURCES += ../../support/init.c
sp21$(EXEEXT): sp21.adb init.$(OBJEXT)
$(GNATCOMPILE) -margs -a $< -o $@
scndir = $(rtems_ada_testsdir)
dist_scn_DATA = sp21.scn
include $(top_srcdir)/../../../testsuites/automake/local.am

View File

@@ -1,33 +0,0 @@
/* config.h
*
* This include file defines the Configuration Table for this test.
*
* COPYRIGHT (c) 1989-1997.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may in
* the file LICENSE in this distribution or at
* http://www.rtems.com/license/LICENSE.
*
* $Id$
*/
/* configuration information */
#define CONFIGURE_SPTEST
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
#define CONFIGURE_APPLICATION_NEEDS_STUB_DRIVER
#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 <rtems/confdefs.h>
/* end of include file */

View File

@@ -1,56 +0,0 @@
--
-- MAIN / BODY
--
-- DESCRIPTION:
--
-- This is the entry point for Test SP21 of the Single Processor Test Suite.
--
-- DEPENDENCIES:
--
--
--
-- COPYRIGHT (c) 1989-1997.
-- On-Line Applications Research Corporation (OAR).
--
-- The license and distribution terms for this file may in
-- the file LICENSE in this distribution or at
-- http://www.rtems.com/license/LICENSE.
--
-- $Id$
--
with RTEMS;
with SPTEST;
with TEST_SUPPORT;
procedure SP21 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,
SPTEST.INIT'ACCESS,
0,
STATUS
);
TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" );
loop
delay 120.0;
end loop;
end SP21;

View File

@@ -1,19 +0,0 @@
*** TEST 21 ***
----- TESTING THE NULL DRIVER CHECKS -----
TA1 - io_initialize - NULL DRIVER SUCCESSFUL
TA1 - io_open - NULL DRIVER SUCCESSFUL
TA1 - io_close - NULL DRIVER SUCCESSFUL
TA1 - io_read - NULL DRIVER SUCCESSFUL
TA1 - io_write - NULL DRIVER SUCCESSFUL
TA1 - io_control - NULL DRIVER SUCCESSFUL
----- TESTING THE I/O MANAGER DIRECTIVES -----
TA1 - io_initialize - STUB DRIVER SUCCESSFUL
TA1 - io_open - STUB DRIVER SUCCESSFUL
TA1 - io_close - STUB DRIVER SUCCESSFUL
TA1 - io_read - STUB DRIVER SUCCESSFUL
TA1 - io_write - STUB DRIVER SUCCESSFUL
TA1 - io_control - STUB DRIVER SUCCESSFUL
----- RETURNING INVALID MAJOR NUMBER -----
TA1 - io_initialize - INVALID_NUMBER
TA1 - io_open - INVALID_NUMBER
*** END OF TEST 21 ***

View File

@@ -1,254 +0,0 @@
--
-- SPTEST / BODY
--
-- DESCRIPTION:
--
-- This package is the implementation of Test 21 of the RTEMS
-- Single Processor Test Suite.
--
-- DEPENDENCIES:
--
--
--
-- COPYRIGHT (c) 1989-1997.
-- On-Line Applications Research Corporation (OAR).
--
-- The license and distribution terms for this file may in
-- the file LICENSE in this distribution or at
-- http://www.rtems.com/license/LICENSE.
--
-- $Id$
--
with INTERFACES; use INTERFACES;
with RTEMS;
with TEST_SUPPORT;
with TEXT_IO;
package body SPTEST 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( "*** TEST 21 ***" );
SPTEST.TASK_NAME( 1 ) := RTEMS.BUILD_NAME( 'T', 'A', '1', ' ' );
RTEMS.TASK_CREATE(
SPTEST.TASK_NAME( 1 ),
1,
2048,
RTEMS.DEFAULT_MODES,
RTEMS.DEFAULT_ATTRIBUTES,
SPTEST.TASK_ID( 1 ),
STATUS
);
TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF TA1" );
RTEMS.TASK_START(
SPTEST.TASK_ID( 1 ),
SPTEST.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
STATUS : RTEMS.STATUS_CODES;
begin
TEXT_IO.PUT_LINE( "----- TESTING THE NULL DRIVER CHECKS -----" );
RTEMS.IO_INITIALIZE(
SPTEST.NO_DRIVER_MAJOR,
0,
RTEMS.NULL_ADDRESS,
STATUS
);
TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_INITIALIZE" );
TEXT_IO.PUT_LINE(
"TA1 - io_initialize - NULL DRIVER SUCCESSFUL"
);
RTEMS.IO_OPEN(
SPTEST.NO_DRIVER_MAJOR,
0,
RTEMS.NULL_ADDRESS,
STATUS
);
TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_OPEN" );
TEXT_IO.PUT_LINE(
"TA1 - io_open - NULL DRIVER SUCCESSFUL"
);
RTEMS.IO_CLOSE(
SPTEST.NO_DRIVER_MAJOR,
0,
RTEMS.NULL_ADDRESS,
STATUS
);
TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_CLOSE" );
TEXT_IO.PUT_LINE(
"TA1 - io_close - NULL DRIVER SUCCESSFUL"
);
RTEMS.IO_READ(
SPTEST.NO_DRIVER_MAJOR,
0,
RTEMS.NULL_ADDRESS,
STATUS
);
TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_READ" );
TEXT_IO.PUT_LINE(
"TA1 - io_read - NULL DRIVER SUCCESSFUL"
);
RTEMS.IO_WRITE(
SPTEST.NO_DRIVER_MAJOR,
0,
RTEMS.NULL_ADDRESS,
STATUS
);
TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_WRITE" );
TEXT_IO.PUT_LINE(
"TA1 - io_write - NULL DRIVER SUCCESSFUL"
);
RTEMS.IO_CONTROL(
SPTEST.NO_DRIVER_MAJOR,
0,
RTEMS.NULL_ADDRESS,
STATUS
);
TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_CONTROL" );
TEXT_IO.PUT_LINE(
"TA1 - io_control - NULL DRIVER SUCCESSFUL"
);
TEXT_IO.PUT_LINE( "----- TESTING THE I/O MANAGER DIRECTIVES -----" );
RTEMS.IO_INITIALIZE(
SPTEST.STUB_DRIVER_MAJOR,
0,
RTEMS.NULL_ADDRESS,
STATUS
);
TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_INITIALIZE" );
TEXT_IO.PUT_LINE(
"TA1 - io_initialize - STUB DRIVER SUCCESSFUL"
);
RTEMS.IO_OPEN(
SPTEST.STUB_DRIVER_MAJOR,
0,
RTEMS.NULL_ADDRESS,
STATUS
);
TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_OPEN" );
TEXT_IO.PUT_LINE(
"TA1 - io_open - STUB DRIVER SUCCESSFUL"
);
RTEMS.IO_CLOSE(
SPTEST.STUB_DRIVER_MAJOR,
0,
RTEMS.NULL_ADDRESS,
STATUS
);
TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_CLOSE" );
TEXT_IO.PUT_LINE(
"TA1 - io_close - STUB DRIVER SUCCESSFUL"
);
RTEMS.IO_READ(
SPTEST.STUB_DRIVER_MAJOR,
0,
RTEMS.NULL_ADDRESS,
STATUS
);
TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_READ" );
TEXT_IO.PUT_LINE(
"TA1 - io_read - STUB DRIVER SUCCESSFUL"
);
RTEMS.IO_WRITE(
SPTEST.STUB_DRIVER_MAJOR,
0,
RTEMS.NULL_ADDRESS,
STATUS
);
TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_WRITE" );
TEXT_IO.PUT_LINE(
"TA1 - io_write - STUB DRIVER SUCCESSFUL"
);
RTEMS.IO_CONTROL(
SPTEST.STUB_DRIVER_MAJOR,
0,
RTEMS.NULL_ADDRESS,
STATUS
);
TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_CONTROL" );
TEXT_IO.PUT_LINE(
"TA1 - io_control - STUB DRIVER SUCCESSFUL"
);
TEXT_IO.PUT_LINE( "----- RETURNING INVALID MAJOR NUMBER -----" );
RTEMS.IO_INITIALIZE(
SPTEST.INVALID_DRIVER_MAJOR,
0,
RTEMS.NULL_ADDRESS,
STATUS
);
TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
STATUS,
RTEMS.INVALID_NUMBER,
"IO_INITIALIZE"
);
TEXT_IO.PUT_LINE(
"TA1 - io_initialize - INVALID_NUMBER"
);
RTEMS.IO_OPEN(
SPTEST.INVALID_DRIVER_MAJOR,
0,
RTEMS.NULL_ADDRESS,
STATUS
);
TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
STATUS,
RTEMS.INVALID_NUMBER,
"IO_OPEN"
);
TEXT_IO.PUT_LINE(
"TA1 - io_open - INVALID_NUMBER"
);
TEXT_IO.PUT_LINE( "*** END OF TEST 21 ***" );
RTEMS.SHUTDOWN_EXECUTIVE( 0 );
end TASK_1;
end SPTEST;

View File

@@ -1,68 +0,0 @@
--
-- SPTEST / SPECIFICATION
--
-- DESCRIPTION:
--
-- This package is the specification for Test 21 of the RTEMS
-- Single Processor Test Suite.
--
-- DEPENDENCIES:
--
--
--
-- COPYRIGHT (c) 1989-1997.
-- On-Line Applications Research Corporation (OAR).
--
-- The license and distribution terms for this file may in
-- the file LICENSE in this distribution or at
-- http://www.rtems.com/license/LICENSE.
--
-- $Id$
--
with RTEMS;
package SPTEST 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 constants define the device major numbers
-- utilized by this test.
--
NO_DRIVER_MAJOR : constant RTEMS.DEVICE_MAJOR_NUMBER := 3;
INVALID_DRIVER_MAJOR : constant RTEMS.DEVICE_MAJOR_NUMBER := 5;
STUB_DRIVER_MAJOR : constant RTEMS.DEVICE_MAJOR_NUMBER := 2;
--
-- INIT
--
-- DESCRIPTION:
--
-- This RTEMS task initializes the application.
--
procedure INIT (
ARGUMENT : in RTEMS.TASK_ARGUMENT
);
--
-- TASK_1
--
-- DESCRIPTION:
--
-- This RTEMS task tests the Input Output Manager.
--
procedure TASK_1 (
ARGUMENT : in RTEMS.TASK_ARGUMENT
);
end SPTEST;

View File

@@ -2,7 +2,7 @@
*
* This include file defines the Configuration Table for this test.
*
* COPYRIGHT (c) 1989-1997.
* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may in
@@ -20,7 +20,8 @@
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
#define CONFIGURE_MAXIMUM_TIMERS 2
#define CONFIGURE_MAXIMUM_TASKS 2
#define CONFIGURE_MAXIMUM_TIMERS 2
#define CONFIGURE_POSIX_INIT_THREAD_TABLE

View File

@@ -1,11 +1,11 @@
*** TEST 22 ***
INIT - timer_create - creating timer 1
INIT - timer 1 has id (16#10001#)
INIT - timer 1 has id (16#12010001#)
TA1 - timer_ident - identing timer 1
TA1 - timer 1 has id (16#10001#)
TA1 - timer 1 has id (16#12010001#)
TA1 - clock_get - 9: 0: 0 12/31/1988
TA1 - timer_after - timer 1 in 3 seconds
TA1 - task_suspend( SELF )
TA1 - task_suspend( SELF )
TA1 - clock_get - 9: 0: 3 12/31/1988
TA1 - timer_after - timer 1 in 3 seconds
TA1 - task_wake_after - 1 second
@@ -13,7 +13,7 @@ TA1 - clock_get - 9: 0: 4 12/31/1988
TA1 - timer_reset - timer 1
TA1 - task_suspend( SELF )
TA1 - clock_get - 9: 0: 7 12/31/1988
<pause>
<pause>
TA1 - timer_after - timer 1 in 3 seconds
TA1 - timer_cancel - timer 1
TA1 - clock_get - 9: 0: 7 12/31/1988

View File

@@ -2,7 +2,7 @@
*
* This include file defines the Configuration Table for this test.
*
* COPYRIGHT (c) 1989-1997.
* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may in
@@ -20,7 +20,8 @@
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
#define CONFIGURE_MAXIMUM_PORTS 1
#define CONFIGURE_MAXIMUM_TASKS 2
#define CONFIGURE_MAXIMUM_PORTS 1
#define CONFIGURE_POSIX_INIT_THREAD_TABLE

View File

@@ -1,6 +1,6 @@
*** TEST 23 ***
INIT - port_create - DP1 - internal = 16#1000# external = 16#2000#
TA1 - port_ident - 16#10001#
INIT - port_create - DP1 - internal = 16#1000# external = 16#2000#
TA1 - port_ident - 16#3A010001#
TA1 - port_external_to_internal - external: 16#200E# => internal: 16#100E#
TA1 - port_internal_to_external - internal: 16#100E# => external: 16#200E#
TA1 - port_external_to_internal - external: 16#300E# => internal: 16#300E#

View File

@@ -2,7 +2,7 @@
*
* This include file defines the Configuration Table for this test.
*
* COPYRIGHT (c) 1989-1997.
* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may in
@@ -20,6 +20,7 @@
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
#define CONFIGURE_MAXIMUM_TASKS 4
#define CONFIGURE_MAXIMUM_TIMERS 3
#define CONFIGURE_POSIX_INIT_THREAD_TABLE

View File

@@ -3,15 +3,14 @@ TA1 - clock_get - 9: 0: 0 12/31/1988
TA2 - clock_get - 9: 0: 0 12/31/1988
TA3 - clock_get - 9: 0: 0 12/31/1988
TA1 - clock_get - 9: 0: 5 12/31/1988
TA2 - clock_get - 9: 0:10 12/31/1988
TA1 - clock_get - 9: 0:10 12/31/1988
TA3 - clock_get - 9: 0:15 12/31/1988
TA2 - clock_get - 9: 0:10 12/31/1988
TA1 - clock_get - 9: 0:15 12/31/1988
TA2 - clock_get - 9: 0:20 12/31/1988
TA3 - clock_get - 9: 0:15 12/31/1988
TA1 - clock_get - 9: 0:20 12/31/1988
TA2 - clock_get - 9: 0:20 12/31/1988
TA1 - clock_get - 9: 0:25 12/31/1988
TA3 - clock_get - 9: 0:30 12/31/1988
TA1 - clock_get - 9: 0:30 12/31/1988
TA3 - clock_get - 9: 0:30 12/31/1988
TA2 - clock_get - 9: 0:30 12/31/1988
*** END OF TEST 24 ***

View File

@@ -2,7 +2,7 @@
*
* This include file defines the Configuration Table for this test.
*
* COPYRIGHT (c) 1989-1997.
* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may in
@@ -20,6 +20,7 @@
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
#define CONFIGURE_MAXIMUM_TASKS 2
#define CONFIGURE_MAXIMUM_REGIONS 1
#define CONFIGURE_POSIX_INIT_THREAD_TABLE

View File

@@ -1,29 +1,29 @@
*** TEST 25 ***
TA1 - region_ident - rnid => 16#10001#
TA1 - region_ident - rnid => 16#32010001#
TA1 - region_get_segment - wait on 64 byte segment from region 1
TA1 - got segment from region 1 - 16#F9B8#
TA1 - got segment from region 1 - 16#10#
TA1 - region_get_segment - wait on 128 byte segment from region 1
TA1 - got segment from region 1 - 16#F930#
TA1 - got segment from region 1 - 16#70#
TA1 - region_get_segment - wait on 256 byte segment from region 1
TA1 - got segment from region 1 - 16#F828#
TA1 - got segment from region 1 - 16#110#
TA1 - region_get_segment - wait on 512 byte segment from region 1
TA1 - got segment from region 1 - 16#F620#
TA1 - got segment from region 1 - 16#230#
TA1 - region_get_segment - wait on 1024 byte segment from region 1
TA1 - got segment from region 1 - 16#F218#
TA1 - got segment from region 1 - 16#450#
TA1 - region_get_segment - wait on 2048 byte segment from region 1
TA1 - got segment from region 1 - 16#EA10#
TA1 - got segment from region 1 - 16#870#
TA1 - region_get_segment - wait on 4096 byte segment from region 1
TA1 - got segment from region 1 - 16#DA08#
TA1 - got segment from region 1 - 16#1090#
TA1 - region_get_segment - wait on 8192 byte segment from region 1
TA1 - got segment from region 1 - 16#BA00#
<pause>
TA1 - region_return_segment - return segment to region 1 - 16#F828#
TA1 - region_return_segment - return segment to region 1 - 16#F620#
TA1 - region_return_segment - return segment to region 1 - 16#F9B8#
TA1 - region_return_segment - return segment to region 1 - 16#F930#
TA1 - region_return_segment - return segment to region 1 - 16#DA08#
TA1 - region_return_segment - return segment to region 1 - 16#EA10#
TA1 - region_return_segment - return segment to region 1 - 16#BA00#
TA1 - region_return_segment - return segment to region 1 - 16#F218#
TA1 - got segment from region 1 - 16#20B0#
<pause>
TA1 - region_return_segment - return segment to region 1 - 16#110#
TA1 - region_return_segment - return segment to region 1 - 16#230#
TA1 - region_return_segment - return segment to region 1 - 16#10#
TA1 - region_return_segment - return segment to region 1 - 16#70#
TA1 - region_return_segment - return segment to region 1 - 16#1090#
TA1 - region_return_segment - return segment to region 1 - 16#870#
TA1 - region_return_segment - return segment to region 1 - 16#20B0#
TA1 - region_return_segment - return segment to region 1 - 16#450#
TA1 - region_delete - walks heap if debug enabled
*** END OF TEST 25 ***

View File

@@ -1,2 +0,0 @@
Makefile
Makefile.in

View File

@@ -1,17 +0,0 @@
## $Id$
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(top_srcdir)/../../../testsuites/automake/compile.am
include $(top_srcdir)/ada.am
if EXPADA
noinst_PROGRAMS = spsize
endif
spsize_SOURCES = spsize.adb sptest.adb sptest.ads
spsize$(EXEEXT): spsize.adb
$(GNATCOMPILE) -margs -a $< -o $@
include $(top_srcdir)/../../../testsuites/automake/local.am

View File

@@ -1,56 +0,0 @@
--
-- MAIN / BODY
--
-- DESCRIPTION:
--
-- This is the entry point for Test SPsize of the Single Processor Test Suite.
--
-- DEPENDENCIES:
--
--
--
-- COPYRIGHT (c) 1989-1997.
-- On-Line Applications Research Corporation (OAR).
--
-- The license and distribution terms for this file may in
-- the file LICENSE in this distribution or at
-- http://www.rtems.com/license/LICENSE.
--
-- $Id$
--
with RTEMS;
with SPTEST;
with TEST_SUPPORT;
procedure SPsize 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,
SPTEST.INIT'ACCESS,
0,
STATUS
);
TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF INIT" );
loop
delay 120.0;
end loop;
end SPsize;

View File

@@ -1,198 +0,0 @@
--
-- SPTEST / BODY
--
-- DESCRIPTION:
--
-- This package is the implementation of Test 1 of the RTEMS
-- Single Processor Test Suite.
--
-- DEPENDENCIES:
--
--
--
-- COPYRIGHT (c) 1989-1997.
-- On-Line Applications Research Corporation (OAR).
--
-- The license and distribution terms for this file may in
-- the file LICENSE in this distribution or at
-- http://www.rtems.com/license/LICENSE.
--
-- $Id$
--
with INTERFACES; use INTERFACES;
with RTEMS;
with RTEMS_TEST_SUPPORT;
with TEST_SUPPORT;
with TEXT_IO;
with UNSIGNED32_IO;
package body SPTEST 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( "*** TEST SIZE ***" );
SPTEST.PUT_SIZE(
"Tasks",
TRUE,
"maximum_tasks",
RTEMS_TEST_SUPPORT.PER_TASK
);
SPTEST.PUT_SIZE(
"Timers",
TRUE,
"maximum_timers",
RTEMS_TEST_SUPPORT.PER_TIMER
);
SPTEST.PUT_SIZE(
"Semaphores",
TRUE,
"maximum_semaphores",
RTEMS_TEST_SUPPORT.PER_SEMAPHORE
);
SPTEST.PUT_SIZE(
"Message Queues",
TRUE,
"maximum_message_queues",
RTEMS_TEST_SUPPORT.PER_MESSAGE_QUEUE
);
SPTEST.PUT_SIZE(
"Messages",
TRUE,
"maximum_messages",
RTEMS_TEST_SUPPORT.PER_MESSAGE
);
SPTEST.PUT_SIZE(
"Regions",
TRUE,
"maximum_regions",
RTEMS_TEST_SUPPORT.PER_REGION
);
SPTEST.PUT_SIZE(
"Partitions",
TRUE,
"maximum_paritions",
RTEMS_TEST_SUPPORT.PER_PARTITION
);
SPTEST.PUT_SIZE(
"Ports",
TRUE,
"maximum_ports",
RTEMS_TEST_SUPPORT.PER_PORT
);
SPTEST.PUT_SIZE(
"Periods",
TRUE,
"maximum_periods",
RTEMS_TEST_SUPPORT.PER_PERIOD
);
SPTEST.PUT_SIZE(
"Extensions",
TRUE,
"maximum_extensions",
RTEMS_TEST_SUPPORT.PER_EXTENSION
);
SPTEST.PUT_SIZE(
"Device Drivers",
TRUE,
"number_of_device_drivers",
RTEMS_TEST_SUPPORT.PER_DRIVER
);
SPTEST.PUT_SIZE(
"System Requirements",
FALSE,
REQUIREMENT => RTEMS_TEST_SUPPORT.SYSTEM_REQUIREMENTS
);
SPTEST.PUT_SIZE(
"Floating Point Tasks",
TRUE,
"FP attributes",
RTEMS_TEST_SUPPORT.PER_FP_TASK
);
TEXT_IO.PUT_LINE( "User's Tasks' Stacks - " );
TEXT_IO.NEW_LINE;
TEXT_IO.PUT_LINE( "Interrupt Stacks - " );
TEXT_IO.NEW_LINE;
SPTEST.PUT_SIZE(
"Global object tables",
TRUE,
"maximum_nodes",
RTEMS_TEST_SUPPORT.PER_NODE
);
SPTEST.PUT_SIZE(
"Global objects",
TRUE,
"maximum_global_objects",
RTEMS_TEST_SUPPORT.PER_GLOBAL_OBJECT
);
SPTEST.PUT_SIZE(
"Proxies",
TRUE,
"maximum_proxies",
RTEMS_TEST_SUPPORT.PER_PROXY
);
TEXT_IO.PUT_LINE( "*** END OF TEST SIZE ***" );
RTEMS.SHUTDOWN_EXECUTIVE( 0 );
end INIT;
--PAGE
--
-- PUT_SIZE
--
procedure PUT_SIZE (
DESCRIPTION : in STRING;
HAS_FIELD_NAME : in BOOLEAN;
FIELD_NAME : in STRING := "";
REQUIREMENT : in RTEMS.UNSIGNED32 := 0
) is
SPACES : constant STRING := " ";
begin
-- 21 is length of longest description (task's stacks)
TEXT_IO.PUT( DESCRIPTION );
TEXT_IO.PUT( SPACES( 1 .. 21 - DESCRIPTION'LENGTH ) );
TEXT_IO.PUT( " - " );
if HAS_FIELD_NAME = TRUE then
TEXT_IO.PUT( FIELD_NAME );
TEXT_IO.PUT( " * " );
end if;
UNSIGNED32_IO.PUT( REQUIREMENT );
TEXT_IO.NEW_LINE;
end PUT_SIZE;
end SPTEST;

View File

@@ -1,55 +0,0 @@
--
-- SPTEST / SPECIFICATION
--
-- DESCRIPTION:
--
-- This package is the specification for Test 1 of the RTEMS
-- Single Processor Test Suite.
--
-- DEPENDENCIES:
--
--
--
-- COPYRIGHT (c) 1989-1997.
-- On-Line Applications Research Corporation (OAR).
--
-- The license and distribution terms for this file may in
-- the file LICENSE in this distribution or at
-- http://www.rtems.com/license/LICENSE.
--
-- $Id$
--
with RTEMS;
package SPTEST is
--
-- INIT
--
-- DESCRIPTION:
--
-- This RTEMS task initializes the application.
--
procedure INIT (
ARGUMENT : in RTEMS.TASK_ARGUMENT
);
--
-- PUT_SIZE
--
-- DESCRIPTION:
--
-- This procedure outputs the size information about the specified
-- object in a standard format.
--
procedure PUT_SIZE (
DESCRIPTION : in STRING;
HAS_FIELD_NAME : in BOOLEAN;
FIELD_NAME : in STRING := "";
REQUIREMENT : in RTEMS.UNSIGNED32 := 0
);
end SPTEST;

View File

@@ -21,7 +21,7 @@ void *POSIX_Init(
}
/*
* Only for sp04
* Only for sp04 and sp07
*/
rtems_id tcb_to_id(
@@ -54,6 +54,20 @@ uint32_t ticks_per_second(void)
return TOD_TICKS_PER_SECOND;
}
uint32_t work_space_size(void)
{
return CONFIGURE_EXECUTIVE_RAM_SIZE;
}
uint32_t is_configured_multiprocessing(void)
{
#if defined(RTEMS_MULTIPROCESSING)
return 1;
#else
return 0;
#endif
}
uint32_t get_node(void)
{
/* XXX HACK -- use public API */

View File

@@ -10,7 +10,7 @@
--
--
--
-- COPYRIGHT (c) 1989-1997.
-- COPYRIGHT (c) 1989-2007.
-- On-Line Applications Research Corporation (OAR).
--
-- The license and distribution terms for this file may in
@@ -249,6 +249,36 @@ package body Test_Support is
return Ticks_Per_Second_Base;
end Ticks_Per_Second;
--
-- Return the size of the RTEMS Workspace
--
function Work_Space_Size
return RTEMS.Unsigned32 is
function Work_Space_Size_Base return RTEMS.Unsigned32;
pragma Import (C, Work_Space_Size_Base, "work_space_size");
begin
return Work_Space_Size_Base;
end Work_Space_Size;
--
-- Return an indication of whether multiprocessing is configured
--
function Is_Configured_Multiprocessing
return Boolean is
function Is_Configured_Multiprocessing_Base return RTEMS.Unsigned32;
pragma Import (
C, Is_Configured_Multiprocessing_Base, "is_configured_multiprocessing"
);
begin
if Is_Configured_Multiprocessing_Base = 1 then
return True;
else
return False;
end if;
end Is_Configured_Multiprocessing;
--
-- Node is the node number in a multiprocessor configuration
--

View File

@@ -10,7 +10,7 @@
--
--
--
-- COPYRIGHT (c) 1989-1997.
-- COPYRIGHT (c) 1989-2007.
-- On-Line Applications Research Corporation (OAR).
--
-- The license and distribution terms for this file may in
@@ -167,6 +167,20 @@ package Test_Support is
function Milliseconds_Per_Tick
return RTEMS.Unsigned32;
--
-- Return the size of the RTEMS Workspace
--
function Work_Space_Size
return RTEMS.Unsigned32;
--
-- Return an indication of whether multiprocessing is configured
--
function Is_Configured_Multiprocessing
return Boolean;
--
-- Node is the node number in a multiprocessor configuration
--

View File

@@ -2,7 +2,7 @@
*
* This include file defines the Configuration Table for this test.
*
* COPYRIGHT (c) 1989-1997.
* COPYRIGHT (c) 1989-2007.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may in
@@ -20,6 +20,7 @@
#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
#define CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER
#define CONFIGURE_MAXIMUM_TASKS 2
#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 1
#define CONFIGURE_TICKS_PER_TIMESLICE 0

View File

@@ -10,7 +10,7 @@
--
--
--
-- COPYRIGHT (c) 1989-1997.
-- COPYRIGHT (c) 1989-2007.
-- On-Line Applications Research Corporation (OAR).
--
-- The license and distribution terms for this file may in
@@ -394,133 +394,6 @@ package body TMTEST is
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,
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,
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,
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,
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,
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,
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;

View File

@@ -11,7 +11,7 @@
--
--
--
-- COPYRIGHT (c) 1989-1997.
-- COPYRIGHT (c) 1989-2007.
-- On-Line Applications Research Corporation (OAR).
--
-- The license and distribution terms for this file may in
@@ -25,27 +25,6 @@ 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 (
@@ -203,18 +182,18 @@ package body DUMMY_RTEMS is
-- 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
OLD_ISR_HANDLER := RTEMS.Null_Address;
RESULT := RTEMS.SUCCESSFUL;
end INTERRUPT_CATCH;
-- 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
--
-- OLD_ISR_HANDLER := RTEMS.Null_Address;
-- RESULT := RTEMS.SUCCESSFUL;
--
-- end INTERRUPT_CATCH;
-- Clock Manager
@@ -743,80 +722,6 @@ package body DUMMY_RTEMS is
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;
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;
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;
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;
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;
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;
RESULT : out RTEMS.STATUS_CODES
) is
begin
RESULT := RTEMS.SUCCESSFUL;
end IO_CONTROL;
-- Fatal Error Manager
procedure FATAL_ERROR_OCCURRED (

View File

@@ -11,7 +11,7 @@
--
--
--
-- COPYRIGHT (c) 1989-1997.
-- COPYRIGHT (c) 1989-2007.
-- On-Line Applications Research Corporation (OAR).
--
-- The license and distribution terms for this file may in
@@ -25,17 +25,6 @@ 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 (
@@ -123,12 +112,12 @@ package DUMMY_RTEMS is
-- 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
);
-- 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
@@ -427,50 +416,6 @@ package DUMMY_RTEMS is
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;
RESULT : out RTEMS.STATUS_CODES
);
procedure IO_OPEN (
MAJOR : in RTEMS.DEVICE_MAJOR_NUMBER;
MINOR : in RTEMS.DEVICE_MINOR_NUMBER;
ARGUMENT : in RTEMS.ADDRESS;
RESULT : out RTEMS.STATUS_CODES
);
procedure IO_CLOSE (
MAJOR : in RTEMS.DEVICE_MAJOR_NUMBER;
MINOR : in RTEMS.DEVICE_MINOR_NUMBER;
ARGUMENT : in RTEMS.ADDRESS;
RESULT : out RTEMS.STATUS_CODES
);
procedure IO_READ (
MAJOR : in RTEMS.DEVICE_MAJOR_NUMBER;
MINOR : in RTEMS.DEVICE_MINOR_NUMBER;
ARGUMENT : in RTEMS.ADDRESS;
RESULT : out RTEMS.STATUS_CODES
);
procedure IO_WRITE (
MAJOR : in RTEMS.DEVICE_MAJOR_NUMBER;
MINOR : in RTEMS.DEVICE_MINOR_NUMBER;
ARGUMENT : in RTEMS.ADDRESS;
RESULT : out RTEMS.STATUS_CODES
);
procedure IO_CONTROL (
MAJOR : in RTEMS.DEVICE_MAJOR_NUMBER;
MINOR : in RTEMS.DEVICE_MINOR_NUMBER;
ARGUMENT : in RTEMS.ADDRESS;
RESULT : out RTEMS.STATUS_CODES
);
-- Fatal Error Manager
procedure FATAL_ERROR_OCCURRED (

View File

@@ -10,7 +10,7 @@
--
--
--
-- COPYRIGHT (c) 1989-1997.
-- COPYRIGHT (c) 1989-2007.
-- On-Line Applications Research Corporation (OAR).
--
-- The license and distribution terms for this file may in
@@ -92,14 +92,14 @@ package body TMTEST is
-- ISR_HANDLER
--
procedure ISR_HANDLER (
VECTOR : in RTEMS.VECTOR_NUMBER
) is
begin
NULL;
end ISR_HANDLER;
-- procedure ISR_HANDLER (
-- VECTOR : in RTEMS.VECTOR_NUMBER
-- ) is
-- begin
--
-- NULL;
--
-- end ISR_HANDLER;
--PAGE
--
@@ -120,8 +120,6 @@ package body TMTEST is
-- TASK_1
--
CPU_TABLE : aliased RTEMS.CPU_TABLE;
procedure TASK_1 (
ARGUMENT : in RTEMS.TASK_ARGUMENT
) is
@@ -162,43 +160,6 @@ package body TMTEST is
MINOR := 0;
ERROR := 0;
-- 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;
@@ -455,25 +416,25 @@ package body TMTEST is
-- 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
);
-- 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
@@ -1312,138 +1273,6 @@ TEST_SUPPORT.PAUSE;
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,
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,
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,
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,
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,
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,
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;

View File

@@ -121,9 +121,9 @@ package TMTEST is
-- This subprogram is an interrupt service routine.
--
procedure ISR_HANDLER (
VECTOR : in RTEMS.VECTOR_NUMBER
);
-- procedure ISR_HANDLER (
-- VECTOR : in RTEMS.VECTOR_NUMBER
-- );
--
-- ASR_HANDLER