# # CPU MODEL/BSP Timing and Size Information # # $Id$ # # # CPU Model Information # RTEMS_BSP BSPFORTIMES RTEMS_CPU_MODEL BSP_CPU_MODEL # # Interrupt Latency # # NOTE: In general, the text says it is hand-calculated to be # RTEMS_MAXIMUM_DISABLE_PERIOD at RTEMS_MAXIMUM_DISABLE_PERIOD_MHZ # Mhz and this was last calculated for Release # RTEMS_VERSION_FOR_MAXIMUM_DISABLE_PERIOD. # RTEMS_MAXIMUM_DISABLE_PERIOD TBD RTEMS_MAXIMUM_DISABLE_PERIOD_MHZ 20 RTEMS_RELEASE_FOR_MAXIMUM_DISABLE_PERIOD 4.0.0 # # Context Switch Times # RTEMS_NO_FP_CONTEXTS 35 RTEMS_RESTORE_1ST_FP_TASK 39 RTEMS_SAVE_INIT_RESTORE_INIT 66 RTEMS_SAVE_IDLE_RESTORE_INIT 66 RTEMS_SAVE_IDLE_RESTORE_IDLE 68 # # Task Manager Times # RTEMS_TASK_CREATE_ONLY 148 RTEMS_TASK_IDENT_ONLY 350 RTEMS_TASK_START_ONLY 76 RTEMS_TASK_RESTART_CALLING_TASK 95 RTEMS_TASK_RESTART_SUSPENDED_RETURNS_TO_CALLER 89 RTEMS_TASK_RESTART_BLOCKED_RETURNS_TO_CALLER 124 RTEMS_TASK_RESTART_READY_RETURNS_TO_CALLER 92 RTEMS_TASK_RESTART_SUSPENDED_PREEMPTS_CALLER 125 RTEMS_TASK_RESTART_BLOCKED_PREEMPTS_CALLER 149 RTEMS_TASK_RESTART_READY_PREEMPTS_CALLER 142 RTEMS_TASK_DELETE_CALLING_TASK 170 RTEMS_TASK_DELETE_SUSPENDED_TASK 138 RTEMS_TASK_DELETE_BLOCKED_TASK 143 RTEMS_TASK_DELETE_READY_TASK 144 RTEMS_TASK_SUSPEND_CALLING_TASK 71 RTEMS_TASK_SUSPEND_RETURNS_TO_CALLER 43 RTEMS_TASK_RESUME_TASK_READIED_RETURNS_TO_CALLER 45 RTEMS_TASK_RESUME_TASK_READIED_PREEMPTS_CALLER 67 RTEMS_TASK_SET_PRIORITY_OBTAIN_CURRENT_PRIORITY 31 RTEMS_TASK_SET_PRIORITY_RETURNS_TO_CALLER 64 RTEMS_TASK_SET_PRIORITY_PREEMPTS_CALLER 106 RTEMS_TASK_MODE_OBTAIN_CURRENT_MODE 14 RTEMS_TASK_MODE_NO_RESCHEDULE 16 RTEMS_TASK_MODE_RESCHEDULE_RETURNS_TO_CALLER 23 RTEMS_TASK_MODE_RESCHEDULE_PREEMPTS_CALLER 60 RTEMS_TASK_GET_NOTE_ONLY 33 RTEMS_TASK_SET_NOTE_ONLY 33 RTEMS_TASK_WAKE_AFTER_YIELD_RETURNS_TO_CALLER 16 RTEMS_TASK_WAKE_AFTER_YIELD_PREEMPTS_CALLER 56 RTEMS_TASK_WAKE_WHEN_ONLY 117 # # Interrupt Manager # RTEMS_INTR_ENTRY_RETURNS_TO_NESTED 12 RTEMS_INTR_ENTRY_RETURNS_TO_INTERRUPTED_TASK 9 RTEMS_INTR_ENTRY_RETURNS_TO_PREEMPTING_TASK 9 RTEMS_INTR_EXIT_RETURNS_TO_NESTED <1 RTEMS_INTR_EXIT_RETURNS_TO_INTERRUPTED_TASK 8 RTEMS_INTR_EXIT_RETURNS_TO_PREEMPTING_TASK 54 # # Clock Manager # RTEMS_CLOCK_SET_ONLY 86 RTEMS_CLOCK_GET_ONLY 1 RTEMS_CLOCK_TICK_ONLY 17 # # Timer Manager # RTEMS_TIMER_CREATE_ONLY 28 RTEMS_TIMER_IDENT_ONLY 343 RTEMS_TIMER_DELETE_INACTIVE 43 RTEMS_TIMER_DELETE_ACTIVE 47 RTEMS_TIMER_FIRE_AFTER_INACTIVE 58 RTEMS_TIMER_FIRE_AFTER_ACTIVE 61 RTEMS_TIMER_FIRE_WHEN_INACTIVE 88 RTEMS_TIMER_FIRE_WHEN_ACTIVE 88 RTEMS_TIMER_RESET_INACTIVE 54 RTEMS_TIMER_RESET_ACTIVE 58 RTEMS_TIMER_CANCEL_INACTIVE 31 RTEMS_TIMER_CANCEL_ACTIVE 34 # # Semaphore Manager # RTEMS_SEMAPHORE_CREATE_ONLY 60 RTEMS_SEMAPHORE_IDENT_ONLY 367 RTEMS_SEMAPHORE_DELETE_ONLY 58 RTEMS_SEMAPHORE_OBTAIN_AVAILABLE 38 RTEMS_SEMAPHORE_OBTAIN_NOT_AVAILABLE_NO_WAIT 38 RTEMS_SEMAPHORE_OBTAIN_NOT_AVAILABLE_CALLER_BLOCKS 109 RTEMS_SEMAPHORE_RELEASE_NO_WAITING_TASKS 44 RTEMS_SEMAPHORE_RELEASE_TASK_READIED_RETURNS_TO_CALLER 66 RTEMS_SEMAPHORE_RELEASE_TASK_READIED_PREEMPTS_CALLER 87 # # Message Manager # RTEMS_MESSAGE_QUEUE_CREATE_ONLY 200 RTEMS_MESSAGE_QUEUE_IDENT_ONLY 341 RTEMS_MESSAGE_QUEUE_DELETE_ONLY 80 RTEMS_MESSAGE_QUEUE_SEND_NO_WAITING_TASKS 97 RTEMS_MESSAGE_QUEUE_SEND_TASK_READIED_RETURNS_TO_CALLER 101 RTEMS_MESSAGE_QUEUE_SEND_TASK_READIED_PREEMPTS_CALLER 123 RTEMS_MESSAGE_QUEUE_URGENT_NO_WAITING_TASKS 96 RTEMS_MESSAGE_QUEUE_URGENT_TASK_READIED_RETURNS_TO_CALLER 101 RTEMS_MESSAGE_QUEUE_URGENT_TASK_READIED_PREEMPTS_CALLER 123 RTEMS_MESSAGE_QUEUE_BROADCAST_NO_WAITING_TASKS 53 RTEMS_MESSAGE_QUEUE_BROADCAST_TASK_READIED_RETURNS_TO_CALLER 111 RTEMS_MESSAGE_QUEUE_BROADCAST_TASK_READIED_PREEMPTS_CALLER 133 RTEMS_MESSAGE_QUEUE_RECEIVE_AVAILABLE 79 RTEMS_MESSAGE_QUEUE_RECEIVE_NOT_AVAILABLE_NO_WAIT 43 RTEMS_MESSAGE_QUEUE_RECEIVE_NOT_AVAILABLE_CALLER_BLOCKS 114 RTEMS_MESSAGE_QUEUE_FLUSH_NO_MESSAGES_FLUSHED 29 RTEMS_MESSAGE_QUEUE_FLUSH_MESSAGES_FLUSHED 39 # # Event Manager # RTEMS_EVENT_SEND_NO_TASK_READIED 24 RTEMS_EVENT_SEND_TASK_READIED_RETURNS_TO_CALLER 60 RTEMS_EVENT_SEND_TASK_READIED_PREEMPTS_CALLER 84 RTEMS_EVENT_RECEIVE_OBTAIN_CURRENT_EVENTS 1 RTEMS_EVENT_RECEIVE_AVAILABLE 28 RTEMS_EVENT_RECEIVE_NOT_AVAILABLE_NO_WAIT 23 RTEMS_EVENT_RECEIVE_NOT_AVAILABLE_CALLER_BLOCKS 84 # # Signal Manager # RTEMS_SIGNAL_CATCH_ONLY 15 RTEMS_SIGNAL_SEND_RETURNS_TO_CALLER 37 RTEMS_SIGNAL_SEND_SIGNAL_TO_SELF 55 RTEMS_SIGNAL_EXIT_ASR_OVERHEAD_RETURNS_TO_CALLING_TASK 37 RTEMS_SIGNAL_EXIT_ASR_OVERHEAD_RETURNS_TO_PREEMPTING_TASK 54 # # Partition Manager # RTEMS_PARTITION_CREATE_ONLY 70 RTEMS_PARTITION_IDENT_ONLY 341 RTEMS_PARTITION_DELETE_ONLY 42 RTEMS_PARTITION_GET_BUFFER_AVAILABLE 35 RTEMS_PARTITION_GET_BUFFER_NOT_AVAILABLE 33 RTEMS_PARTITION_RETURN_BUFFER_ONLY 43 # # Region Manager # RTEMS_REGION_CREATE_ONLY 63 RTEMS_REGION_IDENT_ONLY 348 RTEMS_REGION_DELETE_ONLY 39 RTEMS_REGION_GET_SEGMENT_AVAILABLE 52 RTEMS_REGION_GET_SEGMENT_NOT_AVAILABLE_NO_WAIT 49 RTEMS_REGION_GET_SEGMENT_NOT_AVAILABLE_CALLER_BLOCKS 123 RTEMS_REGION_RETURN_SEGMENT_NO_WAITING_TASKS 54 RTEMS_REGION_RETURN_SEGMENT_TASK_READIED_RETURNS_TO_CALLER 114 RTEMS_REGION_RETURN_SEGMENT_TASK_READIED_PREEMPTS_CALLER 136 # # Dual-Ported Memory Manager # RTEMS_PORT_CREATE_ONLY 35 RTEMS_PORT_IDENT_ONLY 340 RTEMS_PORT_DELETE_ONLY 39 RTEMS_PORT_INTERNAL_TO_EXTERNAL_ONLY 26 RTEMS_PORT_EXTERNAL_TO_INTERNAL_ONLY 27 # # IO Manager # RTEMS_IO_INITIALIZE_ONLY 4 RTEMS_IO_OPEN_ONLY 2 RTEMS_IO_CLOSE_ONLY 1 RTEMS_IO_READ_ONLY 2 RTEMS_IO_WRITE_ONLY 3 RTEMS_IO_CONTROL_ONLY 2 # # Rate Monotonic Manager # RTEMS_RATE_MONOTONIC_CREATE_ONLY 32 RTEMS_RATE_MONOTONIC_IDENT_ONLY 341 RTEMS_RATE_MONOTONIC_CANCEL_ONLY 39 RTEMS_RATE_MONOTONIC_DELETE_ACTIVE 51 RTEMS_RATE_MONOTONIC_DELETE_INACTIVE 48 RTEMS_RATE_MONOTONIC_PERIOD_INITIATE_PERIOD_RETURNS_TO_CALLER 54 RTEMS_RATE_MONOTONIC_PERIOD_CONCLUDE_PERIOD_CALLER_BLOCKS 74 RTEMS_RATE_MONOTONIC_PERIOD_OBTAIN_STATUS 31 # # Size Information # # # xxx alloted for numbers # RTEMS_DATA_SPACE 723 RTEMS_MINIMUM_CONFIGURATION 18,980 RTEMS_MAXIMUM_CONFIGURATION 36,438 # x,xxx alloted for numbers RTEMS_CORE_CODE_SIZE 12,674 RTEMS_INITIALIZATION_CODE_SIZE 970 RTEMS_TASK_CODE_SIZE 3,562 RTEMS_INTERRUPT_CODE_SIZE 54 RTEMS_CLOCK_CODE_SIZE 334 RTEMS_TIMER_CODE_SIZE 1,110 RTEMS_SEMAPHORE_CODE_SIZE 1,632 RTEMS_MESSAGE_CODE_SIZE 1,754 RTEMS_EVENT_CODE_SIZE 1,000 RTEMS_SIGNAL_CODE_SIZE 418 RTEMS_PARTITION_CODE_SIZE 1,164 RTEMS_REGION_CODE_SIZE 1,494 RTEMS_DPMEM_CODE_SIZE 724 RTEMS_IO_CODE_SIZE 686 RTEMS_FATAL_ERROR_CODE_SIZE 24 RTEMS_RATE_MONOTONIC_CODE_SIZE 1,212 RTEMS_MULTIPROCESSING_CODE_SIZE 6.952 # xxx alloted for numbers RTEMS_TIMER_CODE_OPTSIZE 184 RTEMS_SEMAPHORE_CODE_OPTSIZE 172 RTEMS_MESSAGE_CODE_OPTSIZE 288 RTEMS_EVENT_CODE_OPTSIZE 56 RTEMS_SIGNAL_CODE_OPTSIZE 56 RTEMS_PARTITION_CODE_OPTSIZE 132 RTEMS_REGION_CODE_OPTSIZE 160 RTEMS_DPMEM_CODE_OPTSIZE 132 RTEMS_IO_CODE_OPTSIZE 00 RTEMS_RATE_MONOTONIC_CODE_OPTSIZE 184 RTEMS_MULTIPROCESSING_CODE_OPTSIZE 332 # xxx alloted for numbers RTEMS_BYTES_PER_TASK 400 RTEMS_BYTES_PER_TIMER 68 RTEMS_BYTES_PER_SEMAPHORE 124 RTEMS_BYTES_PER_MESSAGE_QUEUE 148 RTEMS_BYTES_PER_REGION 144 RTEMS_BYTES_PER_PARTITION 56 RTEMS_BYTES_PER_PORT 36 RTEMS_BYTES_PER_PERIOD 36 RTEMS_BYTES_PER_EXTENSION 64 RTEMS_BYTES_PER_FP_TASK 332 RTEMS_BYTES_PER_NODE 48 RTEMS_BYTES_PER_GLOBAL_OBJECT 20 RTEMS_BYTES_PER_PROXY 124 # x,xxx alloted for numbers RTEMS_BYTES_OF_FIXED_SYSTEM_REQUIREMENTS 8,872