The Initialization Task Table is used to describe
each of the user initialization tasks to the Initialization
Manager. The table contains one entry for each initialization
task the user wishes to create and start. The fields of this
data structure directly correspond to arguments to the
rtems.task_create
and
rtems.task_start
directives. The number of entries is
found in the number_of_initialization_tasks
entry in the
Configuration Table.
The format of each entry in the Initialization Task Table is defined in the following Ada record:
type Initialization_Tasks_Table_Entry is record Name : RTEMS.Name; -- task name Stack_Size : RTEMS.Unsigned32; -- task stack size Initial_Priority : RTEMS.Task_priority; -- task priority Attribute_Set : RTEMS.Attribute; -- task attributes Entry_Point : RTEMS.Task_Entry; -- task entry point Mode_Set : RTEMS.Mode; -- task initial mode Argument : RTEMS.Unsigned32; -- task argument end record; type Initialization_Tasks_Table is array ( RTEMS.Unsigned32 range <> ) of RTEMS.Initialization_Tasks_Table_Entry; type Initialization_Tasks_Table_Pointer is access all Initialization_Tasks_Table;
A typical declaration for an Initialization Task Table might appear as follows:
Initialization_Tasks : aliased RTEMS.Initialization_Tasks_Table( 1 .. 2 ) := ( (INIT_1_NAME, 1024, 1, RTEMS.Default_Attributes, Init_1'Access, RTEMS.Default_Modes, 1), (INIT_2_NAME, 1024, 250, RTEMS.Floating_Point, Init_2'Access, RTEMS.No_Preempt, 2) );
Copyright © 1988-2003 OAR Corporation