source:
rtems/testsuites/sptests/sp06/task1.c
@
6965fc4
Last change on this file since 6965fc4 was c87608f, checked in by Ralf Corsepius <ralf.corsepius@…>, on 03/30/04 at 11:15:35 | |
---|---|
|
|
File size: 1.6 KB |
Line | |
---|---|
1 | /* Task_1 |
2 | * |
3 | * This task serves as a test task. Verifies that a task can restart |
4 | * both itself and other tasks. |
5 | * |
6 | * Input parameters: |
7 | * argument - task argument |
8 | * |
9 | * Output parameters: NONE |
10 | * |
11 | * COPYRIGHT (c) 1989-1999. |
12 | * On-Line Applications Research Corporation (OAR). |
13 | * |
14 | * The license and distribution terms for this file may be |
15 | * found in the file LICENSE in this distribution or at |
16 | * http://www.rtems.com/license/LICENSE. |
17 | * |
18 | * $Id$ |
19 | */ |
20 | |
21 | #include "system.h" |
22 | |
23 | rtems_task Task_1( argument ) |
24 | uint32_t argument; |
25 | { |
26 | uint32_t pass; |
27 | rtems_status_code status; |
28 | |
29 | puts( "TA1 - is beginning to run" ); |
30 | |
31 | pass = argument + 1; |
32 | |
33 | if ( pass == 5 ) { |
34 | puts( "*** END OF TEST 6 ***" ); |
35 | rtems_test_exit( 0 ); |
36 | } |
37 | |
38 | if ( pass == 1 ) { |
39 | puts( "TA1 - restarting TA3" ); |
40 | status = rtems_task_restart( Task_id[ 3 ], Restart_argument ); |
41 | directive_failed( status, "rtems_task_restart of TA3" ); |
42 | |
43 | status = rtems_task_wake_after( 2 * TICKS_PER_SECOND ); |
44 | directive_failed( status, "rtems_task_wake_after" ); |
45 | } |
46 | |
47 | status = rtems_task_wake_after( TICKS_PER_SECOND ); |
48 | directive_failed( status, "rtems_task_wake_after" ); |
49 | |
50 | puts( "TA1 - rtems_task_restart - restarting TA2" ); |
51 | status = rtems_task_restart( Task_id[ 2 ], Restart_argument ); |
52 | directive_failed( status, "rtems_task_restart TA2" ); |
53 | |
54 | status = rtems_task_wake_after( 1*TICKS_PER_SECOND ); |
55 | directive_failed( status, "rtems_task_wake_after" ); |
56 | |
57 | puts( "TA1 - rtems_task_restart - restarting self" ); |
58 | status = rtems_task_restart( Task_id[ 1 ], pass ); |
59 | directive_failed( status, "rtems_task_restart of RTEMS_SELF" ); |
60 | } |
Note: See TracBrowser
for help on using the repository browser.