RTEMS CPU Kit with SuperCore
4.11.3
|
Configuration Table Template that will be Instantiated by an Application. More...
#include <rtems.h>
#include <rtems/score/apimutex.h>
#include <rtems/score/percpu.h>
#include <rtems/score/wkspace.h>
#include <bsp.h>
#include <rtems/libio_.h>
#include <rtems/imfs.h>
#include <rtems/scheduler.h>
#include <rtems/malloc.h>
#include <rtems/posix/key.h>
Go to the source code of this file.
Macros | |
#define | CONFIGURE_NEWLIB_EXTENSION 0 |
This macro determines whether the RTEMS reentrancy support for the Newlib C Library is enabled. | |
#define | CONFIGURE_LIBIO_MAXIMUM_FILE_DESCRIPTORS 3 |
This macro defines the number of POSIX file descriptors allocated and managed by libio. More... | |
#define | CONFIGURE_LIBIO_SEMAPHORES 1 |
Semaphore count used by the IO library. | |
#define | CONFIGURE_LIBIO_POSIX_KEYS 1 |
POSIX key count used by the IO library. | |
#define | CONFIGURE_DRVMGR_SEMAPHORES 0 |
Driver Manager Configuration. | |
#define | CONFIGURE_NUMBER_OF_TERMIOS_PORTS 1 |
This macro determines if termios is disabled by this application. More... | |
#define | CONFIGURE_TERMIOS_SEMAPHORES ((CONFIGURE_NUMBER_OF_TERMIOS_PORTS * 4) + 1) |
This macro reserves the number of semaphores required by termios based upon the number of communication ports that will use it. | |
#define | CONFIGURE_MAXIMUM_PTYS 0 |
This macro specifies the number of PTYs that can be concurrently active. | |
#define | CONFIGURE_MAXIMUM_FIFOS 0 |
This is specified to configure the maximum number of POSIX FIFOs. | |
#define | CONFIGURE_MAXIMUM_PIPES 0 |
This is specified to configure the maximum number of POSIX named pipes. | |
#define | CONFIGURE_BARRIERS_FOR_FIFOS 0 |
This specifies the number of barriers required for the configured number of FIFOs and named pipes. More... | |
#define | CONFIGURE_SEMAPHORES_FOR_FIFOS 0 |
This specifies the number of semaphores required for the configured number of FIFOs and named pipes. More... | |
#define | CONFIGURE_IMFS_MEMFILE_BYTES_PER_BLOCK IMFS_MEMFILE_DEFAULT_BYTES_PER_BLOCK |
IMFS. More... | |
#define | CONFIGURE_SEMAPHORES_FOR_NFS 0 |
This defines the IMFS file system table entry. More... | |
#define | CONFIGURE_SEMAPHORES_FOR_DOSFS 0 |
DOSFS. | |
#define | CONFIGURE_SEMAPHORES_FOR_RFS 0 |
RFS. | |
#define | CONFIGURE_SEMAPHORES_FOR_JFFS2 0 |
JFFS2. | |
#define | CONFIGURE_SEMAPHORES_FOR_FILE_SYSTEMS |
This computes the number of semaphores required for the various file systems including the FIFO plugin to the IMFS. More... | |
#define | CONFIGURE_STACK_CHECKER_EXTENSION 0 |
This configures the stack checker user extension. | |
#define | CONFIGURE_MAXIMUM_PRIORITY PRIORITY_DEFAULT_MAXIMUM |
Maximum priority configuration. More... | |
#define | CONFIGURE_SCHEDULER_PRIORITY |
If no scheduler is specified in a uniprocessor configuration, the priority scheduler is default. | |
#define | CONFIGURE_SCHEDULER_NAME rtems_build_name('U', 'P', 'D', ' ') |
Configure the name of the scheduler instance. | |
#define | CONFIGURE_SCHEDULER_CONTEXT |
Configure the context needed by the scheduler instance. More... | |
#define | CONFIGURE_SCHEDULER_CONTROLS RTEMS_SCHEDULER_CONTROL_PRIORITY(dflt, CONFIGURE_SCHEDULER_NAME) |
Configure the controls for this scheduler instance. | |
#define | CONFIGURE_IDLE_TASK_BODY _CPU_Thread_Idle_body |
Idle task body configuration. More... | |
#define | CONFIGURE_MINIMUM_TASK_STACK_SIZE CPU_STACK_MINIMUM_SIZE |
By default, use the minimum stack size requested by this port. | |
#define | CONFIGURE_MINIMUM_POSIX_THREAD_STACK_SIZE (2 * CONFIGURE_MINIMUM_TASK_STACK_SIZE) |
This specifies the default POSIX thread stack size. More... | |
#define | CONFIGURE_IDLE_TASK_STACK_SIZE CONFIGURE_MINIMUM_TASK_STACK_SIZE |
Idle task stack size configuration. More... | |
#define | CONFIGURE_INTERRUPT_STACK_SIZE CONFIGURE_MINIMUM_TASK_STACK_SIZE |
Interrupt stack size configuration. More... | |
#define | CONFIGURE_INTERRUPT_STACK_MEMORY 0 |
This reserves memory for the interrupt stack if it is to be allocated by RTEMS rather than the BSP. More... | |
#define | CONFIGURE_TASK_STACK_ALLOCATOR_INIT NULL |
Configure the very much optional task stack allocator initialization. | |
#define | CONFIGURE_TASK_STACK_ALLOCATOR _Workspace_Allocate |
This specifies the task stack allocator method. | |
#define | CONFIGURE_TASK_STACK_DEALLOCATOR _Workspace_Free |
This specifies the task stack deallocator method. | |
#define | CONFIGURE_ZERO_WORKSPACE_AUTOMATICALLY FALSE |
Should the RTEMS Workspace and C Program Heap be cleared automatically at system start up? | |
#define | _Configure_Zero_or_One(_number) ((_number) ? 1 : 0) |
Zero of one returns 0 if the parameter is 0 else 1 is returned. | |
#define | _Configure_Align_up(_val, _align) (((_val) + (_align) - 1) & ~((_align) - 1)) |
General helper to aligned a value up to a power of two boundary. | |
#define | _Configure_From_workspace(_size) |
This is a helper macro used in calculations in this file. More... | |
#define | _Configure_From_stackspace(_stack_size) _Configure_From_workspace(_stack_size) |
This is a helper macro used in stack space calculations in this file. More... | |
#define | _Configure_Max_Objects(_max) (_Configure_Zero_or_One(_max) * rtems_resource_maximum_per_allocation(_max)) |
Do not use the unlimited bit as part of the multiplication for memory usage. | |
#define | _Configure_Object_RAM(_number, _size) |
This macro accounts for how memory for a set of configured objects is allocated from the Executive Workspace. More... | |
#define | CONFIGURE_INIT_TASK_TABLE NULL |
This is the name of the Initialization Task when none is configured. More... | |
#define | CONFIGURE_INIT_TASK_TABLE_SIZE 0 |
This is the size of the Initialization Task when none is configured. More... | |
#define | CONFIGURE_INIT_TASK_STACK_SIZE 0 |
This is the stack size of the Initialization Task when none is configured. More... | |
#define | NULL_DRIVER_TABLE_ENTRY { NULL, NULL, NULL, NULL, NULL, NULL } |
This is an empty device driver slot. | |
#define | CONFIGURE_MAXIMUM_DRIVERS |
This specifies the maximum number of device drivers that can be installed in the system at one time. More... | |
#define | CONFIGURE_LIBBLOCK_TASKS 0 |
This specifies the number of libblock tasks. More... | |
#define | CONFIGURE_LIBBLOCK_TASK_EXTRA_STACKS 0 |
This specifies the extra stack space configured for libblock tasks. More... | |
#define | CONFIGURE_LIBBLOCK_SEMAPHORES 0 |
This specifies the number of Classic API semaphores needed by libblock. More... | |
#define | CONFIGURE_LIBBLOCK_POSIX_MUTEXES 0 |
This specifies the number of POSIX Mutexes needed by libblock. More... | |
#define | CONFIGURE_LIBBLOCK_POSIX_CONDITION_VARIABLES 0 |
This specifies the number of POSIX Condition Variables needed by libblock. | |
#define | CONFIGURE_EXTRA_MPCI_RECEIVE_SERVER_STACK 0 |
This defines the extra stack space required for the MPCI server thread. | |
#define | CONFIGURE_TIMER_FOR_SHARED_MEMORY_DRIVER 0 |
This defines the timers required for the shared memory driver in a multiprocessing configuration. | |
#define | CONFIGURE_MAXIMUM_TASKS 0 |
This configures the maximum number of Classic API tasks. More... | |
#define | CONFIGURE_TASKS (CONFIGURE_MAXIMUM_TASKS + CONFIGURE_LIBBLOCK_TASKS) |
This is calculated to account for the maximum number of Classic API tasks used by the application and configured RTEMS capabilities. More... | |
#define | CONFIGURE_NOTEPADS_ENABLED FALSE |
This configuration parameter enables/disables Classic API notepads. More... | |
#define | CONFIGURE_MAXIMUM_TASK_VARIABLES 0 |
This macro calculates the memory required for task variables. More... | |
#define | CONFIGURE_MEMORY_FOR_TASK_VARIABLES(_task_variables) 0 |
This macro is calculated to specify the memory required for task variables. More... | |
#define | CONFIGURE_MAXIMUM_TIMERS 0 |
This specifies the maximum number of Classic API timers. More... | |
#define | CONFIGURE_MEMORY_FOR_TIMERS(_timers) 0 |
This macro is calculated to specify the memory required for Classic API timers. More... | |
#define | CONFIGURE_MAXIMUM_SEMAPHORES 0 |
This specifies the maximum number of Classic API semaphores. More... | |
#define | CONFIGURE_NETWORKING_SEMAPHORES 0 |
This specifies the number of Classic API semaphores required. More... | |
#define | CONFIGURE_SEMAPHORES |
This macro is calculated to specify the number of Classic API semaphores required by the application and configured RTEMS capabilities. More... | |
#define | CONFIGURE_MEMORY_FOR_MRSP_SEMAPHORES 0 |
This macro is calculated to specify the memory required for Classic API Semaphores using MRSP. More... | |
#define | CONFIGURE_MEMORY_FOR_SEMAPHORES(_semaphores) |
This macro is calculated to specify the memory required for Classic API Semaphores. More... | |
#define | CONFIGURE_MAXIMUM_MESSAGE_QUEUES 0 |
This configuration parameter specifies the maximum number of Classic API Message Queues. | |
#define | CONFIGURE_MEMORY_FOR_MESSAGE_QUEUES(_queues) 0 |
This macro is calculated to specify the RTEMS Workspace required for the Classic API Message Queues. More... | |
#define | CONFIGURE_MAXIMUM_PARTITIONS 0 |
This configuration parameter specifies the maximum number of Classic API Partitions. | |
#define | CONFIGURE_MEMORY_FOR_PARTITIONS(_partitions) 0 |
This macro is calculated to specify the memory required for Classic API. More... | |
#define | CONFIGURE_MAXIMUM_REGIONS 0 |
This configuration parameter specifies the maximum number of Classic API Regions. | |
#define | CONFIGURE_MEMORY_FOR_REGIONS(_regions) 0 |
This macro is calculated to specify the memory required for Classic API Regions. More... | |
#define | CONFIGURE_MAXIMUM_PORTS 0 |
This configuration parameter specifies the maximum number of Classic API Dual-Ported Memory Ports. | |
#define | CONFIGURE_MEMORY_FOR_PORTS(_ports) 0 |
This macro is calculated to specify the memory required for Classic API Dual-Ported Memory Ports. More... | |
#define | CONFIGURE_MAXIMUM_PERIODS 0 |
This configuration parameter specifies the maximum number of Classic API Rate Monotonic Periods. | |
#define | CONFIGURE_MEMORY_FOR_PERIODS(_periods) 0 |
This macro is calculated to specify the memory required for Classic API Rate Monotonic Periods. More... | |
#define | CONFIGURE_MAXIMUM_BARRIERS 0 |
This configuration parameter specifies the maximum number of Classic API Barriers. | |
#define | CONFIGURE_BARRIERS (CONFIGURE_MAXIMUM_BARRIERS + CONFIGURE_BARRIERS_FOR_FIFOS) |
This macro is calculated to specify the number of Classic API Barriers required by the application and configured capabilities. More... | |
#define | CONFIGURE_MEMORY_FOR_BARRIERS(_barriers) 0 |
This macro is calculated to specify the memory required for Classic API Barriers. More... | |
#define | CONFIGURE_MAXIMUM_USER_EXTENSIONS 0 |
This configuration parameter specifies the maximum number of Classic API User Extensions. | |
#define | CONFIGURE_MEMORY_FOR_USER_EXTENSIONS(_extensions) 0 |
This macro is calculated to specify the memory required for Classic API User Extensions. More... | |
#define | CONFIGURE_MICROSECONDS_PER_TICK RTEMS_MILLISECONDS_TO_MICROSECONDS(10) |
The configures the number of microseconds per clock tick. More... | |
#define | CONFIGURE_TICKS_PER_TIMESLICE 50 |
The configures the number of clock ticks per timeslice. More... | |
#define | CONFIGURE_MAXIMUM_POSIX_KEYS 0 |
This configuration parameter specifies the maximum number of POSIX API keys. More... | |
#define | CONFIGURE_MAXIMUM_POSIX_KEY_VALUE_PAIRS |
This macro is calculated to specify the memory required for POSIX API key/value pairs. More... | |
#define | CONFIGURE_POSIX_KEYS (CONFIGURE_MAXIMUM_POSIX_KEYS + CONFIGURE_LIBIO_POSIX_KEYS) |
This macro is calculated to specify the total number of POSIX API keys required by the application and configured system capabilities. More... | |
#define | CONFIGURE_MEMORY_FOR_POSIX_KEYS(_keys, _key_value_pairs) |
This macro is calculated to specify the memory required for POSIX API keys. More... | |
#define | CONFIGURE_MAXIMUM_POSIX_THREADS 0 |
This configuration parameter specifies the maximum number of POSIX API threads. | |
#define | CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE 0 |
This configuration parameter specifies the stack size of the POSIX API Initialization thread (if used). | |
#define | CONFIGURE_GNAT_MUTEXES 0 |
This defines he number of POSIX mutexes GNAT needs. More... | |
#define | CONFIGURE_MAXIMUM_ADA_TASKS 0 |
This defines he number of Ada tasks needed by the application. More... | |
#define | CONFIGURE_MAXIMUM_FAKE_ADA_TASKS 0 |
This defines he number of non-Ada tasks/threads that will invoke Ada subprograms or functions. | |
#define | CONFIGURE_GO_INIT_MUTEXES 0 |
This specifies the number of mutexes required by the Go run-time for its own use. More... | |
#define | CONFIGURE_GO_INIT_CONDITION_VARIABLES 0 |
This specifies the number of condition variables required by the Go run-time for its own use. More... | |
#define | CONFIGURE_MAXIMUM_GOROUTINES 0 |
This specifies the maximum number of Go co-routines. More... | |
#define | CONFIGURE_GOROUTINES_TASK_VARIABLES 0 |
This specifies the maximum number of Go per-task variables required. More... | |
#define | CONFIGURE_MAXIMUM_GO_CHANNELS 0 |
This specifies the maximum number of Go channels required. More... | |
#define | CONFIGURE_EXTRA_TASK_STACKS 0 |
This is so we can account for tasks with stacks greater than minimum size. More... | |
#define | CONFIGURE_POSIX_THREADS |
This macro provides a summation of the various POSIX thread requirements. More... | |
#define | CONFIGURE_MEMORY_FOR_POSIX 0 |
This macro is calculated to specify the memory required for the POSIX API in its entirety. More... | |
#define | CONFIGURE_HEAP_HANDLER_OVERHEAD _Configure_Align_up( HEAP_BLOCK_HEADER_SIZE, CPU_HEAP_ALIGNMENT ) |
#define | CONFIGURE_MEMORY_FOR_TASKS(_tasks, _number_FP_tasks) |
Account for allocating the following per object. More... | |
#define | CONFIGURE_MEMORY_FOR_MP 0 |
This defines the amount of memory configured for the multiprocessing support required by this application. More... | |
#define | CONFIGURE_MESSAGE_BUFFERS_FOR_QUEUE(_messages, _size) |
The following macro is used to calculate the memory allocated by RTEMS for the message buffers associated with a particular message queue. More... | |
#define | CONFIGURE_MESSAGE_BUFFER_MEMORY 0 |
This macro is set to the amount of memory required for pending message buffers in bytes. More... | |
#define | CONFIGURE_MEMORY_OVERHEAD 0 |
This macro is available just in case the confdefs.h file underallocates memory for a particular application. More... | |
#define | CONFIGURE_API_MUTEX_MEMORY _Configure_Object_RAM(2, sizeof(API_Mutex_Control)) |
RTEMS uses two instance of an internal mutex class. More... | |
#define | CONFIGURE_IDLE_TASKS_COUNT 1 |
This calculates the amount of memory reserved for the IDLE tasks. More... | |
#define | CONFIGURE_MEMORY_FOR_IDLE_TASK |
This defines the formula used to compute the amount of memory reserved for IDLE task control structures. More... | |
#define | CONFIGURE_MEMORY_FOR_SYSTEM_OVERHEAD |
This macro accounts for general RTEMS system overhead. More... | |
#define | CONFIGURE_MEMORY_FOR_STATIC_EXTENSIONS |
This macro reserves the memory required by the statically configured user extensions. More... | |
#define | CONFIGURE_MEMORY_FOR_CLASSIC |
This macro provides a summation of the memory required by the Classic API as configured. More... | |
#define | CONFIGURE_MEMORY_FOR_SMP 0 |
This macro provides a summation of the memory required by SMP as configured. More... | |
#define | CONFIGURE_EXECUTIVE_RAM_SIZE |
This calculates the memory required for the executive workspace. More... | |
#define | CONFIGURE_INITIALIZATION_THREADS_STACKS_CLASSIC_PART 0 |
This accounts for any extra memory required by the Classic API Initialization Task. More... | |
#define | CONFIGURE_INITIALIZATION_THREADS_STACKS_POSIX_PART 0 |
This accounts for any extra memory required by the POSIX API Initialization Thread. More... | |
#define | CONFIGURE_INITIALIZATION_THREADS_EXTRA_STACKS |
This macro provides a summation of the various initialization task and thread stack requirements. More... | |
#define | CONFIGURE_IDLE_TASKS_STACK |
This macro is calculated to specify the memory required for the Idle tasks(s) stack. More... | |
#define | CONFIGURE_TASKS_STACK |
This macro is calculated to specify the memory required for the stacks of all tasks. More... | |
#define | CONFIGURE_POSIX_THREADS_STACK |
This macro is calculated to specify the memory required for the stacks of all POSIX threads. More... | |
#define | CONFIGURE_ADA_TASKS_STACK |
This macro is calculated to specify the memory required for the stacks of all Ada tasks. More... | |
#define | CONFIGURE_GOROUTINES_STACK |
This macro is calculated to specify the memory required for the stacks of all Go routines. More... | |
#define | CONFIGURE_STACK_SPACE_SIZE |
This macro is calculated to specify the memory required for all tasks and threads of all varieties. More... | |
Variables | |
rtems_initialization_tasks_table | Initialization_tasks [] |
This is the Classic API initialization tasks table. | |
int | rtems_telnetd_maximum_ptys |
This variable contains the maximum number of PTYs that can be concurrently active. | |
Configuration Table Template that will be Instantiated by an Application.
This include file contains the configuration table template that will be instantiated by an application based on the setting of a number of macros. The macros are documented in the Configuring a System chapter of the Classic API User's Guide
#define CONFIGURE_ADA_TASKS_STACK |
This macro is calculated to specify the memory required for the stacks of all Ada tasks.
This is an internal parameter.
#define CONFIGURE_API_MUTEX_MEMORY _Configure_Object_RAM(2, sizeof(API_Mutex_Control)) |
RTEMS uses two instance of an internal mutex class.
This accounts for these mutexes.
#define CONFIGURE_BARRIERS_FOR_FIFOS 0 |
This specifies the number of barriers required for the configured number of FIFOs and named pipes.
This is an internal parameter.
#define CONFIGURE_EXECUTIVE_RAM_SIZE |
This calculates the memory required for the executive workspace.
This is an internal parameter.
#define CONFIGURE_EXTRA_TASK_STACKS 0 |
This is so we can account for tasks with stacks greater than minimum size.
This is in bytes.
#define CONFIGURE_GOROUTINES_STACK |
This macro is calculated to specify the memory required for the stacks of all Go routines.
This is an internal parameter.
#define CONFIGURE_IDLE_TASK_BODY _CPU_Thread_Idle_body |
Idle task body configuration.
There is a default IDLE thread body provided by RTEMS which has the possibility of being CPU specific. There may be a BSP specific override of the RTEMS default body and in turn, the application may override and provide its own.
#define CONFIGURE_IDLE_TASK_STACK_SIZE CONFIGURE_MINIMUM_TASK_STACK_SIZE |
Idle task stack size configuration.
By default, the IDLE task will have a stack of minimum size. The BSP or application may override this value.
#define CONFIGURE_IDLE_TASKS_COUNT 1 |
This calculates the amount of memory reserved for the IDLE tasks.
In an SMP system, each CPU core has its own idle task.
#define CONFIGURE_IDLE_TASKS_STACK |
This macro is calculated to specify the memory required for the Idle tasks(s) stack.
This is an internal parameter.
#define CONFIGURE_INIT_TASK_STACK_SIZE 0 |
This is the stack size of the Initialization Task when none is configured.
This is an internal parameter.
#define CONFIGURE_INIT_TASK_TABLE NULL |
This is the name of the Initialization Task when none is configured.
This is an internal parameter.
#define CONFIGURE_INIT_TASK_TABLE_SIZE 0 |
This is the size of the Initialization Task when none is configured.
This is an internal parameter.
#define CONFIGURE_INITIALIZATION_THREADS_EXTRA_STACKS |
This macro provides a summation of the various initialization task and thread stack requirements.
This is an internal parameter.
#define CONFIGURE_INITIALIZATION_THREADS_STACKS_CLASSIC_PART 0 |
This accounts for any extra memory required by the Classic API Initialization Task.
This is an internal parameter.
#define CONFIGURE_INITIALIZATION_THREADS_STACKS_POSIX_PART 0 |
This accounts for any extra memory required by the POSIX API Initialization Thread.
This is an internal parameter.
#define CONFIGURE_INTERRUPT_STACK_MEMORY 0 |
This reserves memory for the interrupt stack if it is to be allocated by RTEMS rather than the BSP.
#define CONFIGURE_INTERRUPT_STACK_SIZE CONFIGURE_MINIMUM_TASK_STACK_SIZE |
Interrupt stack size configuration.
By default, the interrupt stack will be of minimum size. The BSP or application may override this value.
#define CONFIGURE_LIBIO_MAXIMUM_FILE_DESCRIPTORS 3 |
This macro defines the number of POSIX file descriptors allocated and managed by libio.
These are the "integer" file descriptors that are used by calls like open(2) and read(2).
#define CONFIGURE_MAXIMUM_PRIORITY PRIORITY_DEFAULT_MAXIMUM |
Maximum priority configuration.
This configures the maximum priority value that a task may have.
The following applies to the data space requirements of the Priority Scheduler.
By reducing the number of priorities in a system, the amount of RAM required by RTEMS can be significantly reduced. RTEMS allocates a Chain_Control structure per priority and this structure contains 3 pointers. So the default is (256 * 12) = 3K on 32-bit architectures.
This must be one less than a power of 2 between 4 and 256. Valid values along with the application priority levels and memory saved when pointers are 32-bits in size are:
It is specified in terms of Classic API priority values.
#define CONFIGURE_MEMORY_FOR_CLASSIC |
This macro provides a summation of the memory required by the Classic API as configured.
#define CONFIGURE_MEMORY_FOR_IDLE_TASK |
This defines the formula used to compute the amount of memory reserved for IDLE task control structures.
#define CONFIGURE_MEMORY_FOR_MP 0 |
This defines the amount of memory configured for the multiprocessing support required by this application.
This is an internal parameter.
#define CONFIGURE_MEMORY_FOR_POSIX 0 |
This macro is calculated to specify the memory required for the POSIX API in its entirety.
This is an internal parameter.
#define CONFIGURE_MEMORY_FOR_SMP 0 |
This macro provides a summation of the memory required by SMP as configured.
This is an internal parameter.
#define CONFIGURE_MEMORY_FOR_STATIC_EXTENSIONS |
This macro reserves the memory required by the statically configured user extensions.
#define CONFIGURE_MEMORY_FOR_SYSTEM_OVERHEAD |
This macro accounts for general RTEMS system overhead.
#define CONFIGURE_MEMORY_FOR_TASKS | ( | _tasks, | |
_number_FP_tasks | |||
) |
Account for allocating the following per object.
This is an internal parameter.
#define CONFIGURE_MEMORY_OVERHEAD 0 |
This macro is available just in case the confdefs.h file underallocates memory for a particular application.
This lets the user add some extra memory in case something broken and underestimates.
It is also possible for cases where confdefs.h overallocates memory, you could substract memory from the allocated. The estimate is just that, an estimate, and assumes worst case alignment and padding on each allocated element. So in some cases it could be too conservative.
NOTE: Historically this was used for message buffers.
#define CONFIGURE_MESSAGE_BUFFER_MEMORY 0 |
This macro is set to the amount of memory required for pending message buffers in bytes.
It should be constructed by adding together a set of values determined by CONFIGURE_MESSAGE_BUFFERS_FOR_QUEUE.
This is an internal parameter.
#define CONFIGURE_MESSAGE_BUFFERS_FOR_QUEUE | ( | _messages, | |
_size | |||
) |
The following macro is used to calculate the memory allocated by RTEMS for the message buffers associated with a particular message queue.
There is a fixed amount of overhead per message.
#define CONFIGURE_MINIMUM_POSIX_THREAD_STACK_SIZE (2 * CONFIGURE_MINIMUM_TASK_STACK_SIZE) |
This specifies the default POSIX thread stack size.
By default, it is twice that recommended for the port.
#define CONFIGURE_NUMBER_OF_TERMIOS_PORTS 1 |
This macro determines if termios is disabled by this application.
This only means that resources will not be reserved. If you end up using termios, it will fail. This macro specifies the number of serial or PTY ports that will use termios.
#define CONFIGURE_POSIX_THREADS |
This macro provides a summation of the various POSIX thread requirements.
#define CONFIGURE_POSIX_THREADS_STACK |
This macro is calculated to specify the memory required for the stacks of all POSIX threads.
This is an internal parameter.
#define CONFIGURE_SCHEDULER_CONTEXT |
Configure the context needed by the scheduler instance.
#define CONFIGURE_SEMAPHORES_FOR_FIFOS 0 |
This specifies the number of semaphores required for the configured number of FIFOs and named pipes.
This is an internal parameter.
#define CONFIGURE_STACK_SPACE_SIZE |
This macro is calculated to specify the memory required for all tasks and threads of all varieties.
This is an internal parameter.
#define CONFIGURE_TASKS_STACK |
This macro is calculated to specify the memory required for the stacks of all tasks.
This is an internal parameter.