⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 confdefs.h

📁 RTEMS (Real-Time Executive for Multiprocessor Systems) is a free open source real-time operating sys
💻 H
📖 第 1 页 / 共 3 页
字号:
#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 + -