From ae68ff085724dd35d60151bd153e80b8b0776873 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Tue, 27 May 1997 12:40:11 +0000 Subject: Initial revision --- doc/supplements/i386/FORCE386_TIMES | 244 ++++++++++++++++++++++++++++++++++++ 1 file changed, 244 insertions(+) create mode 100644 doc/supplements/i386/FORCE386_TIMES (limited to 'doc/supplements/i386/FORCE386_TIMES') diff --git a/doc/supplements/i386/FORCE386_TIMES b/doc/supplements/i386/FORCE386_TIMES new file mode 100644 index 0000000000..19959db3aa --- /dev/null +++ b/doc/supplements/i386/FORCE386_TIMES @@ -0,0 +1,244 @@ +# +# Intel i386/Force CPU-386 Timing and Size Information +# + +# +# CPU Model Information +# +RTEMS_CPU_MODEL i386 +# +# 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 13.0 +RTEMS_MAXIMUM_DISABLE_PERIOD_MHZ 16 +RTEMS_RELEASE_FOR_MAXIMUM_DISABLE_PERIOD 3.1.0 +# +# Context Switch Times +# +RTEMS_NO_FP_CONTEXTS 34 +RTEMS_RESTORE_1ST_FP_TASK 57 +RTEMS_SAVE_INIT_RESTORE_INIT 59 +RTEMS_SAVE_IDLE_RESTORE_INIT 59 +RTEMS_SAVE_IDLE_RESTORE_IDLE 83 +# +# Task Manager Times +# +RTEMS_TASK_CREATE_ONLY 157 +RTEMS_TASK_IDENT_ONLY 748 +RTEMS_TASK_START_ONLY 86 +RTEMS_TASK_RESTART_CALLING_TASK 118 +RTEMS_TASK_RESTART_SUSPENDED_RETURNS_TO_CALLER 45 +RTEMS_TASK_RESTART_BLOCKED_RETURNS_TO_CALLER 138 +RTEMS_TASK_RESTART_READY_RETURNS_TO_CALLER 105 +RTEMS_TASK_RESTART_SUSPENDED_PREEMPTS_CALLER 149 +RTEMS_TASK_RESTART_BLOCKED_PREEMPTS_CALLER 162 +RTEMS_TASK_RESTART_READY_PREEMPTS_CALLER 156 +RTEMS_TASK_DELETE_CALLING_TASK 187 +RTEMS_TASK_DELETE_SUSPENDED_TASK 147 +RTEMS_TASK_DELETE_BLOCKED_TASK 153 +RTEMS_TASK_DELETE_READY_TASK 157 +RTEMS_TASK_SUSPEND_CALLING_TASK 81 +RTEMS_TASK_SUSPEND_RETURNS_TO_CALLER 45 +RTEMS_TASK_RESUME_TASK_READIED_RETURNS_TO_CALLER 46 +RTEMS_TASK_RESUME_TASK_READIED_PREEMPTS_CALLER 71 +RTEMS_TASK_SET_PRIORITY_OBTAIN_CURRENT_PRIORITY 30 +RTEMS_TASK_SET_PRIORITY_RETURNS_TO_CALLER 67 +RTEMS_TASK_SET_PRIORITY_PREEMPTS_CALLER 115 +RTEMS_TASK_MODE_OBTAIN_CURRENT_MODE 19 +RTEMS_TASK_MODE_NO_RESCHEDULE 21 +RTEMS_TASK_MODE_RESCHEDULE_RETURNS_TO_CALLER 27 +RTEMS_TASK_MODE_RESCHEDULE_PREEMPTS_CALLER 66 +RTEMS_TASK_GET_NOTE_ONLY 32 +RTEMS_TASK_SET_NOTE_ONLY 32 +RTEMS_TASK_WAKE_AFTER_YIELD_RETURNS_TO_CALLER 18 +RTEMS_TASK_WAKE_AFTER_YIELD_PREEMPTS_CALLER 63 +RTEMS_TASK_WAKE_WHEN_ONLY 128 +# +# Interrupt Manager +# +RTEMS_INTR_ENTRY_RETURNS_TO_NESTED 12 +RTEMS_INTR_ENTRY_RETURNS_TO_INTERRUPTED_TASK 13 +RTEMS_INTR_ENTRY_RETURNS_TO_PREEMPTING_TASK 12 +RTEMS_INTR_EXIT_RETURNS_TO_NESTED 10 +RTEMS_INTR_EXIT_RETURNS_TO_INTERRUPTED_TASK 13 +RTEMS_INTR_EXIT_RETURNS_TO_PREEMPTING_TASK 58 +# +# Clock Manager +# +RTEMS_CLOCK_SET_ONLY 85 +RTEMS_CLOCK_GET_ONLY 2 +RTEMS_CLOCK_TICK_ONLY 16 +# +# Timer Manager +# +RTEMS_TIMER_CREATE_ONLY 34 +RTEMS_TIMER_IDENT_ONLY 729 +RTEMS_TIMER_DELETE_INACTIVE 48 +RTEMS_TIMER_DELETE_ACTIVE 52 +RTEMS_TIMER_FIRE_AFTER_INACTIVE 65 +RTEMS_TIMER_FIRE_AFTER_ACTIVE 69 +RTEMS_TIMER_FIRE_WHEN_INACTIVE 92 +RTEMS_TIMER_FIRE_WHEN_ACTIVE 92 +RTEMS_TIMER_RESET_INACTIVE 58 +RTEMS_TIMER_RESET_ACTIVE 63 +RTEMS_TIMER_CANCEL_INACTIVE 32 +RTEMS_TIMER_CANCEL_ACTIVE 37 +# +# Semaphore Manager +# +RTEMS_SEMAPHORE_CREATE_ONLY 64 +RTEMS_SEMAPHORE_IDENT_ONLY 787 +RTEMS_SEMAPHORE_DELETE_ONLY 60 +RTEMS_SEMAPHORE_OBTAIN_AVAILABLE 41 +RTEMS_SEMAPHORE_OBTAIN_NOT_AVAILABLE_NO_WAIT 40 +RTEMS_SEMAPHORE_OBTAIN_NOT_AVAILABLE_CALLER_BLOCKS 123 +RTEMS_SEMAPHORE_RELEASE_NO_WAITING_TASKS 47 +RTEMS_SEMAPHORE_RELEASE_TASK_READIED_RETURNS_TO_CALLER 70 +RTEMS_SEMAPHORE_RELEASE_TASK_READIED_PREEMPTS_CALLER 95 +# +# Message Manager +# +RTEMS_MESSAGE_QUEUE_CREATE_ONLY 294 +RTEMS_MESSAGE_QUEUE_IDENT_ONLY 730 +RTEMS_MESSAGE_QUEUE_DELETE_ONLY 81 +RTEMS_MESSAGE_QUEUE_SEND_NO_WAITING_TASKS 117 +RTEMS_MESSAGE_QUEUE_SEND_TASK_READIED_RETURNS_TO_CALLER 118 +RTEMS_MESSAGE_QUEUE_SEND_TASK_READIED_PREEMPTS_CALLER 144 +RTEMS_MESSAGE_QUEUE_URGENT_NO_WAITING_TASKS 117 +RTEMS_MESSAGE_QUEUE_URGENT_TASK_READIED_RETURNS_TO_CALLER 116 +RTEMS_MESSAGE_QUEUE_URGENT_TASK_READIED_PREEMPTS_CALLER 144 +RTEMS_MESSAGE_QUEUE_BROADCAST_NO_WAITING_TASKS 53 +RTEMS_MESSAGE_QUEUE_BROADCAST_TASK_READIED_RETURNS_TO_CALLER 122 +RTEMS_MESSAGE_QUEUE_BROADCAST_TASK_READIED_PREEMPTS_CALLER 146 +RTEMS_MESSAGE_QUEUE_RECEIVE_AVAILABLE 93 +RTEMS_MESSAGE_QUEUE_RECEIVE_NOT_AVAILABLE_NO_WAIT 45 +RTEMS_MESSAGE_QUEUE_RECEIVE_NOT_AVAILABLE_CALLER_BLOCKS 127 +RTEMS_MESSAGE_QUEUE_FLUSH_NO_MESSAGES_FLUSHED 29 +RTEMS_MESSAGE_QUEUE_FLUSH_MESSAGES_FLUSHED 41 +# +# Event Manager +# +RTEMS_EVENT_SEND_NO_TASK_READIED 26 +RTEMS_EVENT_SEND_TASK_READIED_RETURNS_TO_CALLER 60 +RTEMS_EVENT_SEND_TASK_READIED_PREEMPTS_CALLER 89 +RTEMS_EVENT_RECEIVE_OBTAIN_CURRENT_EVENTS <1 +RTEMS_EVENT_RECEIVE_AVAILABLE 27 +RTEMS_EVENT_RECEIVE_NOT_AVAILABLE_NO_WAIT 25 +RTEMS_EVENT_RECEIVE_NOT_AVAILABLE_CALLER_BLOCKS 94 +# +# Signal Manager +# +RTEMS_SIGNAL_CATCH_ONLY 13 +RTEMS_SIGNAL_SEND_RETURNS_TO_CALLER 34 +RTEMS_SIGNAL_SEND_SIGNAL_TO_SELF 59 +RTEMS_SIGNAL_EXIT_ASR_OVERHEAD_RETURNS_TO_CALLING_TASK 39 +RTEMS_SIGNAL_EXIT_ASR_OVERHEAD_RETURNS_TO_PREEMPTING_TASK 60 +# +# Partition Manager +# +RTEMS_PARTITION_CREATE_ONLY 83 +RTEMS_PARTITION_IDENT_ONLY 730 +RTEMS_PARTITION_DELETE_ONLY 40 +RTEMS_PARTITION_GET_BUFFER_AVAILABLE 34 +RTEMS_PARTITION_GET_BUFFER_NOT_AVAILABLE 33 +RTEMS_PARTITION_RETURN_BUFFER_ONLY 40 +# +# Region Manager +# +RTEMS_REGION_CREATE_ONLY 68 +RTEMS_REGION_IDENT_ONLY 739 +RTEMS_REGION_DELETE_ONLY 39 +RTEMS_REGION_GET_SEGMENT_AVAILABLE 49 +RTEMS_REGION_GET_SEGMENT_NOT_AVAILABLE_NO_WAIT 45 +RTEMS_REGION_GET_SEGMENT_NOT_AVAILABLE_CALLER_BLOCKS 127 +RTEMS_REGION_RETURN_SEGMENT_NO_WAITING_TASKS 52 +RTEMS_REGION_RETURN_SEGMENT_TASK_READIED_RETURNS_TO_CALLER 113 +RTEMS_REGION_RETURN_SEGMENT_TASK_READIED_PREEMPTS_CALLER 138 +# +# Dual-Ported Memory Manager +# +RTEMS_PORT_CREATE_ONLY 39 +RTEMS_PORT_IDENT_ONLY 728 +RTEMS_PORT_DELETE_ONLY 39 +RTEMS_PORT_INTERNAL_TO_EXTERNAL_ONLY 26 +RTEMS_PORT_EXTERNAL_TO_INTERNAL_ONLY 26 +# +# IO Manager +# +RTEMS_IO_INITIALIZE_ONLY 4 +RTEMS_IO_OPEN_ONLY 1 +RTEMS_IO_CLOSE_ONLY 1 +RTEMS_IO_READ_ONLY <1 +RTEMS_IO_WRITE_ONLY 1 +RTEMS_IO_CONTROL_ONLY 1 +# +# Rate Monotonic Manager +# +RTEMS_RATE_MONOTONIC_CREATE_ONLY 36 +RTEMS_RATE_MONOTONIC_IDENT_ONLY 725 +RTEMS_RATE_MONOTONIC_CANCEL_ONLY 39 +RTEMS_RATE_MONOTONIC_DELETE_ACTIVE 53 +RTEMS_RATE_MONOTONIC_DELETE_INACTIVE 49 +RTEMS_RATE_MONOTONIC_PERIOD_INITIATE_PERIOD_RETURNS_TO_CALLER 53 +RTEMS_RATE_MONOTONIC_PERIOD_CONCLUDE_PERIOD_CALLER_BLOCKS 82 +RTEMS_RATE_MONOTONIC_PERIOD_OBTAIN_STATUS 30 +# +# Size Information +# +# +# xxx alloted for numbers +# +RTEMS_DATA_SPACE 833 +RTEMS_MINIMUM_CONFIGURATION 22,660 +RTEMS_MAXIMUM_CONFIGURATION 39,592 +# x,xxx alloted for numbers +RTEMS_CORE_CODE_SIZE 16,948 +RTEMS_INITIALIZATION_CODE_SIZE 916 +RTEMS_TASK_CODE_SIZE 3,436 +RTEMS_INTERRUPT_CODE_SIZE 52 +RTEMS_CLOCK_CODE_SIZE 296 +RTEMS_TIMER_CODE_SIZE 1,084 +RTEMS_SEMAPHORE_CODE_SIZE 1,500 +RTEMS_MESSAGE_CODE_SIZE 1,596 +RTEMS_EVENT_CODE_SIZE 1,036 +RTEMS_SIGNAL_CODE_SIZE 396 +RTEMS_PARTITION_CODE_SIZE 1,052 +RTEMS_REGION_CODE_SIZE 1,392 +RTEMS_DPMEM_CODE_SIZE 664 +RTEMS_IO_CODE_SIZE 676 +RTEMS_FATAL_ERROR_CODE_SIZE 20 +RTEMS_RATE_MONOTONIC_CODE_SIZE 1,132 +RTEMS_MULTIPROCESSING_CODE_SIZE 6,840 +# xxx alloted for numbers +RTEMS_TIMER_CODE_OPTSIZE 144 +RTEMS_SEMAPHORE_CODE_OPTSIZE 136 +RTEMS_MESSAGE_CODE_OPTSIZE 224 +RTEMS_EVENT_CODE_OPTSIZE 44 +RTEMS_SIGNAL_CODE_OPTSIZE 44 +RTEMS_PARTITION_CODE_OPTSIZE 104 +RTEMS_REGION_CODE_OPTSIZE 124 +RTEMS_DPMEM_CODE_OPTSIZE 104 +RTEMS_IO_CODE_OPTSIZE 0 +RTEMS_RATE_MONOTONIC_CODE_OPTSIZE 136 +RTEMS_MULTIPROCESSING_CODE_OPTSIZE 228 +# xxx alloted for numbers +RTEMS_BYTES_PER_TASK 372 +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 108 +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 6,768 -- cgit v1.2.3