diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 2011-02-17 22:21:44 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 2011-02-17 22:21:44 +0000 |
commit | 010192dd9fcfe40b82ca7595a732ed3ffbe9fdc1 (patch) | |
tree | 0bf11736eba94f9f997f0aaa7a59d97d3cb4470f /cpukit/score/src/schedulerpriority.c | |
parent | 2011-02-17 Joel Sherrill <joel.sherrill@oarcorp.com> (diff) | |
download | rtems-010192dd9fcfe40b82ca7595a732ed3ffbe9fdc1.tar.bz2 |
2011-02-17 Joel Sherrill <joel.sherrill@oarcorp.com>
* sapi/include/confdefs.h, sapi/include/rtems/config.h,
score/include/rtems/score/scheduler.h,
score/include/rtems/score/schedulerpriority.h,
score/inline/rtems/score/scheduler.inl,
score/inline/rtems/score/schedulerpriority.inl,
score/src/scheduler.c, score/src/schedulerpriority.c,
score/src/schedulerpriorityblock.c,
score/src/schedulerpriorityschedule.c,
score/src/schedulerprioritythreadschedulerallocate.c,
score/src/schedulerprioritythreadschedulerfree.c,
score/src/schedulerprioritythreadschedulerupdate.c,
score/src/schedulerpriorityunblock.c,
score/src/schedulerpriorityyield.c, score/src/threadchangepriority.c,
score/src/threadclearstate.c, score/src/threadclose.c,
score/src/threadinitialize.c, score/src/threadready.c,
score/src/threadresume.c, score/src/threadsetpriority.c,
score/src/threadsetstate.c, score/src/threadsuspend.c: Simplify the
pluggable scheduler interface. Its configuration made a table
of available schedulers and set a pointer to one of the.
This was heavy handed since you can only use one scheduler
in an application. This configuration mechanism resulted in a
scheduler pointer being passed around when you could put all
scheduler configuration in an initialized structure.
Diffstat (limited to 'cpukit/score/src/schedulerpriority.c')
-rw-r--r-- | cpukit/score/src/schedulerpriority.c | 35 |
1 files changed, 3 insertions, 32 deletions
diff --git a/cpukit/score/src/schedulerpriority.c b/cpukit/score/src/schedulerpriority.c index aa7ecee72e..93586a8a7b 100644 --- a/cpukit/score/src/schedulerpriority.c +++ b/cpukit/score/src/schedulerpriority.c @@ -2,6 +2,7 @@ * Scheduler Handler * * Copyright (C) 2010 Gedare Bloom. + * Copyright (C) 2011 On-Line Applications Research Corporation (OAR). * * The license and distribution terms for this file may be * found in the file LICENSE in this distribution or at @@ -29,38 +30,8 @@ volatile Priority_bit_map_Control _Priority_Major_bit_map; Priority_bit_map_Control _Priority_Bit_map[16] CPU_STRUCTURE_ALIGNMENT; -/* - * _Scheduler_priority_Initialize - * - * Initializes the scheduler for priority scheduling. - * - * Input parameters: - * the_scheduler - pointer to scheduler control - * - * Output parameters: NONE - */ - -void _Scheduler_priority_Initialize ( - Scheduler_Control *the_scheduler -) +void _Scheduler_priority_Initialize(void) { - /* the operations table is a jump table to redirect generic scheduler - * function calls to scheduler implementation specific functions. The - * main purpose of scheduler initialization is to set up the jump table - * for the scheduler. Every scheduler implementation provides its own - * scheduler operations table. - */ - the_scheduler->Operations.schedule = &_Scheduler_priority_Schedule; - the_scheduler->Operations.yield = &_Scheduler_priority_Yield; - the_scheduler->Operations.block = &_Scheduler_priority_Block; - the_scheduler->Operations.unblock = &_Scheduler_priority_Unblock; - the_scheduler->Operations.scheduler_allocate = - &_Scheduler_priority_Thread_scheduler_allocate; - the_scheduler->Operations.scheduler_free = - &_Scheduler_priority_Thread_scheduler_free; - the_scheduler->Operations.scheduler_update = - &_Scheduler_priority_Thread_scheduler_update; - - _Scheduler_priority_Ready_queue_initialize( the_scheduler ); + _Scheduler_priority_Ready_queue_initialize(); _Priority_bit_map_Handler_initialization( ); } |