source: rtems/c/src/tests/sptests/sp16/task2.c @ 0836603

4.104.114.84.95
Last change on this file since 0836603 was ac7d5ef0, checked in by Joel Sherrill <joel.sherrill@…>, on 05/11/95 at 17:39:37

Initial revision

  • Property mode set to 100644
File size: 2.5 KB
Line 
1/*  Task_2
2 *
3 *  This routine serves as a test task.  It competes with the other tasks
4 *  for region resources.
5 *
6 *  Input parameters:
7 *    argument - task argument
8 *
9 *  Output parameters:  NONE
10 *
11 *  COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994.
12 *  On-Line Applications Research Corporation (OAR).
13 *  All rights assigned to U.S. Government, 1994.
14 *
15 *  This material may be reproduced by or for the U.S. Government pursuant
16 *  to the copyright license under the clause at DFARS 252.227-7013.  This
17 *  notice must appear in all copies of this file and its derivatives.
18 *
19 *  $Id$
20 */
21
22#include "system.h"
23
24rtems_task Task_2(
25  rtems_task_argument argument
26)
27{
28  rtems_status_code    status;
29  rtems_task_priority  previous_priority;
30  void                *segment_address_1;
31  void                *segment_address_2;
32
33  puts( "TA2 - rtems_region_get_segment - wait on 2K segment from region 1" );
34  status = rtems_region_get_segment(
35    Region_id[ 1 ],
36    2048,
37    RTEMS_DEFAULT_OPTIONS,
38    RTEMS_NO_TIMEOUT,
39    &segment_address_1
40  );
41  directive_failed( status, "rtems_region_get_segment" );
42  puts_nocr( "TA2 - got segment from region 1 - " );
43  Put_address_from_area_1( segment_address_1 );
44  new_line;
45
46  puts_nocr(
47    "TA2 - rtems_region_return_segment - return segment to region 1 - "
48  );
49  Put_address_from_area_1( segment_address_1 );
50  status = rtems_region_return_segment( Region_id[ 1 ], segment_address_1 );
51  directive_failed( status, "rtems_region_return_segment" );
52  new_line;
53
54  puts( "TA2 - rtems_task_set_priority - make self highest priority task" );
55  status = rtems_task_set_priority(
56    RTEMS_SELF,
57    BASE_PRIORITY-1,
58    &previous_priority
59  );
60  directive_failed( status, "rtems_task_set_priority" );
61
62  puts("TA2 - rtems_region_get_segment - wait on 3968 byte segment");
63  status = rtems_region_get_segment(
64    Region_id[ 2 ],
65    3968,
66    RTEMS_DEFAULT_OPTIONS,
67    RTEMS_NO_TIMEOUT,
68    &segment_address_2
69  );
70  directive_failed( status, "rtems_region_get_segment" );
71  puts_nocr( "TA2 - got segment from region 2 - ");
72  Put_address_from_area_2( segment_address_2 );
73  new_line;
74
75  puts_nocr(
76    "TA2 - rtems_region_return_segment - return segment to region 2 - "
77  );
78  Put_address_from_area_2( segment_address_2 );
79  status = rtems_region_return_segment( Region_id[ 2 ], segment_address_2 );
80  directive_failed( status, "rtems_region_return_segment" );
81  new_line;
82
83  puts( "TA2 - rtems_task_delete - delete self" );
84  status = rtems_task_delete( RTEMS_SELF );
85  directive_failed( status, "rtems_task_delete of RTEMS_SELF" );
86}
Note: See TracBrowser for help on using the repository browser.