📄 confdefs.h
字号:
#ifdef CONFIGURE_INITrtems_multiprocessing_table Multiprocessing_configuration = { CONFIGURE_MP_NODE_NUMBER, /* local node number */ CONFIGURE_MP_MAXIMUM_NODES, /* maximum # nodes in system */ CONFIGURE_MP_MAXIMUM_GLOBAL_OBJECTS, /* maximum # global objects */ CONFIGURE_MP_MAXIMUM_PROXIES, /* maximum # proxies */ CONFIGURE_MP_MPCI_TABLE_POINTER /* pointer to MPCI config table */};#endif#define CONFIGURE_MULTIPROCESSING_TABLE &Multiprocessing_configuration#endif /* CONFIGURE_HAS_OWN_MULTIPROCESING_TABLE */#else#define CONFIGURE_MULTIPROCESSING_TABLE NULL#endif /* CONFIGURE_MP_APPLICATION */ /* * Default Configuration Table. */#ifndef CONFIGURE_HAS_OWN_CONFIGURATION_TABLE #ifndef CONFIGURE_EXECUTIVE_RAM_WORK_AREA#define CONFIGURE_EXECUTIVE_RAM_WORK_AREA NULL#endif#ifndef CONFIGURE_MAXIMUM_TASKS#define CONFIGURE_MAXIMUM_TASKS 0#endif#ifndef CONFIGURE_MAXIMUM_TIMERS#define CONFIGURE_MAXIMUM_TIMERS 0#endif#ifndef CONFIGURE_MAXIMUM_SEMAPHORES#define CONFIGURE_MAXIMUM_SEMAPHORES 0#endif#ifndef CONFIGURE_MAXIMUM_MESSAGE_QUEUES#define CONFIGURE_MAXIMUM_MESSAGE_QUEUES 0#endif#ifndef CONFIGURE_MAXIMUM_PARTITIONS#define CONFIGURE_MAXIMUM_PARTITIONS 0#endif#ifndef CONFIGURE_MAXIMUM_REGIONS#define CONFIGURE_MAXIMUM_REGIONS 0#endif#ifndef CONFIGURE_MAXIMUM_PORTS#define CONFIGURE_MAXIMUM_PORTS 0#endif#ifndef CONFIGURE_MAXIMUM_PERIODS#define CONFIGURE_MAXIMUM_PERIODS 0#endif#ifndef CONFIGURE_MAXIMUM_USER_EXTENSIONS#define CONFIGURE_MAXIMUM_USER_EXTENSIONS 0#endif#ifndef CONFIGURE_MICROSECONDS_PER_TICK #define CONFIGURE_MICROSECONDS_PER_TICK RTEMS_MILLISECONDS_TO_MICROSECONDS(10)#endif#ifndef CONFIGURE_TICKS_PER_TIMESLICE#define CONFIGURE_TICKS_PER_TIMESLICE 50#endif/* * Initial Extension Set */#ifdef CONFIGURE_INIT#ifdef STACK_CHECKER_ON#include <rtems/stackchk.h>#endif#if defined(CONFIGURE_INITIAL_EXTENSIONS) || \ defined(STACK_CHECKER_ON)rtems_extensions_table Configuration_Initial_Extensions[] = {#ifdef CONFIGURE_INITIAL_EXTENSIONS CONFIGURE_INITIAL_EXTENSIONS,#endif#ifdef STACK_CHECKER_ON STACK_CHECKER_EXTENSION,#endif};#define CONFIGURE_INITIAL_EXTENSION_TABLE Configuration_Initial_Extensions#define CONFIGURE_NUMBER_OF_INITIAL_EXTENSIONS \ ((sizeof(Configuration_Initial_Extensions) / \ sizeof(rtems_extensions_table)))#else#define CONFIGURE_INITIAL_EXTENSION_TABLE NULL#define CONFIGURE_NUMBER_OF_INITIAL_EXTENSIONS 0#endif#endif/* * POSIX API Configuration Parameters */#ifdef RTEMS_POSIX_API#include <sys/types.h>#include <signal.h>#include <mqueue.h>#include <rtems/posix/cond.h>#include <rtems/posix/mqueue.h>#include <rtems/posix/mutex.h>#include <rtems/posix/key.h>#include <rtems/posix/psignal.h>#include <rtems/posix/semaphore.h>#include <rtems/posix/threadsup.h>#include <rtems/posix/timer.h>#ifndef CONFIGURE_MAXIMUM_POSIX_THREADS#define CONFIGURE_MAXIMUM_POSIX_THREADS 0#endif#ifndef CONFIGURE_MAXIMUM_POSIX_MUTEXES#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 0#endif#ifndef CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 0#endif#ifndef CONFIGURE_MAXIMUM_POSIX_KEYS#define CONFIGURE_MAXIMUM_POSIX_KEYS 0#endif#ifndef CONFIGURE_MAXIMUM_POSIX_TIMERS#define CONFIGURE_MAXIMUM_POSIX_TIMERS 0#endif#ifndef CONFIGURE_MAXIMUM_POSIX_QUEUED_SIGNALS#define CONFIGURE_MAXIMUM_POSIX_QUEUED_SIGNALS 0#endif#ifndef CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES#define CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES 0#endif#ifndef CONFIGURE_MAXIMUM_POSIX_SEMAPHORES#define CONFIGURE_MAXIMUM_POSIX_SEMAPHORES 0#endif#ifdef CONFIGURE_POSIX_INIT_THREAD_TABLE#ifdef CONFIGURE_POSIX_HAS_OWN_INIT_THREAD_TABLE/* * The user is defining their own table information and setting the * appropriate variables for the POSIX Initialization Thread Table. */ #else#ifndef CONFIGURE_POSIX_INIT_THREAD_ENTRY_POINT#define CONFIGURE_POSIX_INIT_THREAD_ENTRY_POINT POSIX_Init #endif#ifndef CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE#define CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE (RTEMS_MINIMUM_STACK_SIZE * 2)#endif#ifdef CONFIGURE_INITposix_initialization_threads_table POSIX_Initialization_threads[] = { { CONFIGURE_POSIX_INIT_THREAD_ENTRY_POINT, \ CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE }};#endif#define CONFIGURE_POSIX_INIT_THREAD_TABLE_NAME POSIX_Initialization_threads #define CONFIGURE_POSIX_INIT_THREAD_TABLE_SIZE \ sizeof(CONFIGURE_POSIX_INIT_THREAD_TABLE_NAME) / \ sizeof(posix_initialization_threads_table)#endif /* CONFIGURE_POSIX_HAS_OWN_INIT_TASK_TABLE */#else /* CONFIGURE_POSIX_INIT_THREAD_TABLE */#define CONFIGURE_POSIX_INIT_THREAD_TABLE_NAME NULL#define CONFIGURE_POSIX_INIT_THREAD_TABLE_SIZE 0#endif#define CONFIGURE_MEMORY_PER_TASK_FOR_POSIX_API \ ( \ sizeof (POSIX_API_Control) + \ (sizeof (void *) * (CONFIGURE_GNAT_KEYS + CONFIGURE_MAXIMUM_POSIX_KEYS)) \ )#define CONFIGURE_MEMORY_FOR_POSIX_MUTEXES(_mutexes) \ ((_mutexes) * \ ( sizeof(POSIX_Mutex_Control) + CONFIGURE_OBJECT_TABLE_STUFF ) )#define CONFIGURE_MEMORY_FOR_POSIX_CONDITION_VARIABLES(_condition_variables) \ ((_condition_variables) * \ ( sizeof(POSIX_Condition_variables_Control) + \ CONFIGURE_OBJECT_TABLE_STUFF ) )#define CONFIGURE_MEMORY_FOR_POSIX_KEYS(_keys) \ ((_keys) * \ ( sizeof(POSIX_Keys_Control) + CONFIGURE_OBJECT_TABLE_STUFF ) )#define CONFIGURE_MEMORY_FOR_POSIX_TIMERS(_timers) \ ((_timers) * (sizeof(POSIX_Timer_Control) + CONFIGURE_OBJECT_TABLE_STUFF))#define CONFIGURE_MEMORY_FOR_POSIX_QUEUED_SIGNALS(_queued_signals) \ ((_queued_signals) * \ ( sizeof(POSIX_signals_Siginfo_node) + CONFIGURE_OBJECT_TABLE_STUFF ) )#define CONFIGURE_MEMORY_FOR_POSIX_MESSAGE_QUEUES(_message_queues) \ ((_message_queues) * \ ( sizeof( POSIX_Message_queue_Control) + CONFIGURE_OBJECT_TABLE_STUFF ) )#define CONFIGURE_MEMORY_FOR_POSIX_SEMAPHORES(_semaphores) \ ((_semaphores) * \ ( sizeof( POSIX_Semaphore_Control) + CONFIGURE_OBJECT_TABLE_STUFF ) ) #define CONFIGURE_MEMORY_FOR_POSIX \ ( \ CONFIGURE_MEMORY_FOR_POSIX_MUTEXES( CONFIGURE_MAXIMUM_POSIX_MUTEXES ) + \ CONFIGURE_MEMORY_FOR_POSIX_CONDITION_VARIABLES( \ CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES ) + \ CONFIGURE_MEMORY_FOR_POSIX_KEYS( CONFIGURE_MAXIMUM_POSIX_KEYS ) + \ CONFIGURE_MEMORY_FOR_POSIX_QUEUED_SIGNALS( \ CONFIGURE_MAXIMUM_POSIX_QUEUED_SIGNALS ) + \ CONFIGURE_MEMORY_FOR_POSIX_MESSAGE_QUEUES( \ CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES ) + \ CONFIGURE_MEMORY_FOR_POSIX_SEMAPHORES( \ CONFIGURE_MAXIMUM_POSIX_SEMAPHORES ) + \ CONFIGURE_MEMORY_FOR_POSIX_TIMERS( CONFIGURE_MAXIMUM_POSIX_TIMERS ) + \ (CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE) \ )#else#define CONFIGURE_MAXIMUM_POSIX_THREADS 0#define CONFIGURE_MEMORY_PER_TASK_FOR_POSIX_API 0#define CONFIGURE_MEMORY_FOR_POSIX 0#endif /* RTEMS_POSIX_API */#ifndef CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE#define CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE 0#endif/* * ITRON API Configuration Parameters */#ifdef RTEMS_ITRON_API#include <itron.h>#include <rtems/itron/config.h>#include <rtems/itron/eventflags.h>#include <rtems/itron/fmempool.h>#include <rtems/itron/mbox.h>#include <rtems/itron/msgbuffer.h>#include <rtems/itron/port.h>#include <rtems/itron/semaphore.h>#include <rtems/itron/task.h>#include <rtems/itron/vmempool.h>#ifndef CONFIGURE_MAXIMUM_ITRON_TASKS#define CONFIGURE_MAXIMUM_ITRON_TASKS 0#endif#ifndef CONFIGURE_MAXIMUM_ITRON_SEMAPHORES#define CONFIGURE_MAXIMUM_ITRON_SEMAPHORES 0#endif#ifndef CONFIGURE_MAXIMUM_ITRON_EVENTFLAGS#define CONFIGURE_MAXIMUM_ITRON_EVENTFLAGS 0#endif#ifndef CONFIGURE_MAXIMUM_ITRON_MAILBOXES#define CONFIGURE_MAXIMUM_ITRON_MAILBOXES 0#endif#ifndef CONFIGURE_MAXIMUM_ITRON_MESSAGE_BUFFERS#define CONFIGURE_MAXIMUM_ITRON_MESSAGE_BUFFERS 0#endif#ifndef CONFIGURE_MAXIMUM_ITRON_PORTS#define CONFIGURE_MAXIMUM_ITRON_PORTS 0#endif#ifndef CONFIGURE_MAXIMUM_ITRON_MEMORY_POOLS#define CONFIGURE_MAXIMUM_ITRON_MEMORY_POOLS 0#endif#ifndef CONFIGURE_MAXIMUM_ITRON_FIXED_MEMORY_POOLS#define CONFIGURE_MAXIMUM_ITRON_FIXED_MEMORY_POOLS 0#endif#ifdef CONFIGURE_ITRON_INIT_TASK_TABLE#ifdef CONFIGURE_ITRON_HAS_OWN_INIT_TASK_TABLE/* * The user is defining their own table information and setting the * appropriate variables for the ITRON Initialization Task Table. */#else#ifndef CONFIGURE_ITRON_INIT_TASK_ENTRY_POINT#define CONFIGURE_ITRON_INIT_TASK_ENTRY_POINT ITRON_Init#endif#ifndef CONFIGURE_ITRON_INIT_TASK_ATTRIBUTES#define CONFIGURE_ITRON_INIT_TASK_ATTRIBUTES TA_HLNG#endif#ifndef CONFIGURE_ITRON_INIT_TASK_PRIORITY#define CONFIGURE_ITRON_INIT_TASK_PRIORITY 1#endif#ifndef CONFIGURE_ITRON_INIT_TASK_STACK_SIZE#define CONFIGURE_ITRON_INIT_TASK_STACK_SIZE RTEMS_MINIMUM_STACK_SIZE#endif#ifdef CONFIGURE_INITitron_initialization_tasks_table ITRON_Initialization_tasks[] = { { 1, /* ID */ { (VP) 0, /* exinfo */ CONFIGURE_ITRON_INIT_TASK_ATTRIBUTES, /* task attributes */ CONFIGURE_ITRON_INIT_TASK_ENTRY_POINT, /* task start address */ CONFIGURE_ITRON_INIT_TASK_PRIORITY, /* initial task priority */ CONFIGURE_ITRON_INIT_TASK_STACK_SIZE /* stack size */ } }};#endif#define CONFIGURE_ITRON_INIT_TASK_TABLE_NAME ITRON_Initialization_tasks#define CONFIGURE_ITRON_INIT_TASK_TABLE_SIZE \ sizeof(CONFIGURE_ITRON_INIT_TASK_TABLE_NAME) / \ sizeof(itron_initialization_tasks_table)#endif /* CONFIGURE_ITRON_HAS_OWN_INIT_TASK_TABLE */#else /* CONFIGURE_ITRON_INIT_TASK_TABLE */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -