RTEMS Logo

RTEMS 4.6.99.3 On-Line Library


DMV177 Timing Data Context Switch

PREV UP NEXT Bookshelf RTEMS PowerPC Applications Supplement

11.4: Context Switch

The RTEMS processor context switch time is 585 bus cycle on the DMV177 benchmark platform when no floating point context is saved or restored. Additional execution time is required when a TASK_SWITCH user extension is configured. The use of the TASK_SWITCH extension is application dependent. Thus, its execution time is not considered part of the raw context switch time.

Since RTEMS was designed specifically for embedded missile applications which are floating point intensive, the executive is optimized to avoid unnecessarily saving and restoring the state of the numeric coprocessor. The state of the numeric coprocessor is only saved when an FLOATING_POINT task is dispatched and that task was not the last task to utilize the coprocessor. In a system with only one FLOATING_POINT task, the state of the numeric coprocessor will never be saved or restored. When the first FLOATING_POINT task is dispatched, RTEMS does not need to save the current state of the numeric coprocessor.

The following table summarizes the context switch times for the DMV177 benchmark platform:

No Floating Point Contexts 585
Floating Point Contexts
restore first FP task
730
save initialized, restore initialized
478
save idle, restore initialized
825
save idle, restore idle
478


PREV UP NEXT Bookshelf RTEMS PowerPC Applications Supplement

Copyright © 1988-2004 OAR Corporation