RTEMS Logo

RTEMS 4.6.99.3 On-Line Library


Configuring a System RTEMS API Configuration Table

PREV UP NEXT Bookshelf RTEMS C User's Guide

22.4: RTEMS API Configuration Table

The RTEMS API Configuration Table is used to configure the managers which constitute the RTEMS API for a particular application. For example, the user can configure the maximum number of tasks for this application. The RTEMS API Configuration Table is defined in the following C structure:

typedef struct {
  rtems_unsigned32                  maximum_tasks;
  rtems_unsigned32                  maximum_timers;
  rtems_unsigned32                  maximum_semaphores;
  rtems_unsigned32                  maximum_message_queues;
  rtems_unsigned32                  maximum_partitions;
  rtems_unsigned32                  maximum_regions;
  rtems_unsigned32                  maximum_ports;
  rtems_unsigned32                  maximum_periods;
  rtems_unsigned32                  number_of_initialization_tasks;
  rtems_initialization_tasks_table *User_initialization_tasks_table;
} rtems_api_configuration_table;
maximum_tasks
is the maximum number of tasks that can be concurrently active (created) in the system including initialization tasks. When using the confdefs.h mechanism for configuring an RTEMS application, the value for this field corresponds to the setting of the macro CONFIGURE_MAXIMUM_TASKS. If not defined by the application, then the CONFIGURE_MAXIMUM_TASKS macro defaults to 10.
maximum_timers
is the maximum number of timers that can be concurrently active in the system. When using the confdefs.h mechanism for configuring an RTEMS application, the value for this field corresponds to the setting of the macro CONFIGURE_MAXIMUM_TIMERS. If not defined by the application, then the CONFIGURE_MAXIMUM_TIMERS macro defaults to 0.
maximum_semaphores
is the maximum number of semaphores that can be concurrently active in the system. When using the confdefs.h mechanism for configuring an RTEMS application, the value for this field corresponds to the setting of the macro CONFIGURE_MAXIMUM_SEMAPHORES. If not defined by the application, then the CONFIGURE_MAXIMUM_SEMAPHORES macro defaults to 0.
maximum_message_queues
is the maximum number of message queues that can be concurrently active in the system. When using the confdefs.h mechanism for configuring an RTEMS application, the value for this field corresponds to the setting of the macro CONFIGURE_MAXIMUM_MESSAGE_QUEUES. If not defined by the application, then the CONFIGURE_MAXIMUM_MESSAGE_QUEUES macro defaults to 0.
maximum_partitions
is the maximum number of partitions that can be concurrently active in the system. When using the confdefs.h mechanism for configuring an RTEMS application, the value for this field corresponds to the setting of the macro CONFIGURE_MAXIMUM_PARTITIONS. If not defined by the application, then the CONFIGURE_MAXIMUM_PARTITIONS macro defaults to 0.
maximum_regions
is the maximum number of regions that can be concurrently active in the system. When using the confdefs.h mechanism for configuring an RTEMS application, the value for this field corresponds to the setting of the macro CONFIGURE_MAXIMUM_REGIONS. If not defined by the application, then the CONFIGURE_MAXIMUM_REGIONS macro defaults to 0.
maximum_ports
is the maximum number of ports into dual-port memory areas that can be concurrently active in the system. When using the confdefs.h mechanism for configuring an RTEMS application, the value for this field corresponds to the setting of the macro CONFIGURE_MAXIMUM_PORTS. If not defined by the application, then the CONFIGURE_MAXIMUM_PORTS macro defaults to 0.
number_of_initialization_tasks
is the number of initialization tasks configured. At least one RTEMS initialization task or POSIX initializatin must be configured in order for the user's application to begin executing. When using the confdefs.h mechanism for configuring an RTEMS application, the user must define the CONFIGURE_RTEMS_INIT_TASKS_TABLE to indicate that there is one or more RTEMS initialization task. If the application only has one RTEMS initialization task, then the automatically generated Initialization Task Table will be sufficient. The following macros correspond to the single initialization task:

has the option to have value for this field corresponds to the setting of the macro .

User_initialization_tasks_table
is the address of the Initialization Task Table. This table contains the information needed to create and start each of the initialization tasks. The format of this table will be discussed below. When using the confdefs.h mechanism for configuring an RTEMS application, the value for this field corresponds to the setting of the macro CONFIGURE_EXECUTIVE_RAM_WORK_AREA.


PREV UP NEXT Bookshelf RTEMS C User's Guide

Copyright © 1988-2004 OAR Corporation