From a3443088f547091ac2a489701557e29acbf24a0e Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Thu, 6 Jun 2013 15:32:22 +0200 Subject: scheduler: Add and use _Scheduler_default_Tick() Delete _Scheduler_priority_Tick(). Use _SMP_Get_processor_count() for default tick operation. Delete _Scheduler_simple_smp_Tick(). --- cpukit/score/include/rtems/score/scheduler.h | 8 ++++++++ cpukit/score/include/rtems/score/schedulercbs.h | 2 +- cpukit/score/include/rtems/score/scheduleredf.h | 2 +- cpukit/score/include/rtems/score/schedulerpriority.h | 11 +---------- cpukit/score/include/rtems/score/schedulersimple.h | 2 +- cpukit/score/include/rtems/score/schedulersimplesmp.h | 11 +---------- 6 files changed, 13 insertions(+), 23 deletions(-) (limited to 'cpukit/score/include') diff --git a/cpukit/score/include/rtems/score/scheduler.h b/cpukit/score/include/rtems/score/scheduler.h index aa40e9ba9f..563d6c9598 100644 --- a/cpukit/score/include/rtems/score/scheduler.h +++ b/cpukit/score/include/rtems/score/scheduler.h @@ -149,6 +149,14 @@ extern Scheduler_Control _Scheduler; */ void _Scheduler_Handler_initialization( void ); +/** + * @brief Performs tick operations depending on the CPU budget algorithm for + * each executing thread. + * + * This routine is invoked as part of processing each clock tick. + */ +void _Scheduler_default_Tick( void ); + /** * @brief Unblocks the thread. * diff --git a/cpukit/score/include/rtems/score/schedulercbs.h b/cpukit/score/include/rtems/score/schedulercbs.h index 41f8ab0b57..bec989fd34 100644 --- a/cpukit/score/include/rtems/score/schedulercbs.h +++ b/cpukit/score/include/rtems/score/schedulercbs.h @@ -60,7 +60,7 @@ extern "C" { _Scheduler_EDF_Extract, /* extract entry point */ \ _Scheduler_EDF_Priority_compare, /* compares two priorities */ \ _Scheduler_CBS_Release_job, /* new period of task */ \ - _Scheduler_priority_Tick, /* tick entry point */ \ + _Scheduler_default_Tick, /* tick entry point */ \ _Scheduler_default_Start_idle /* start idle entry point */ \ } diff --git a/cpukit/score/include/rtems/score/scheduleredf.h b/cpukit/score/include/rtems/score/scheduleredf.h index 7846067a7d..090974bb07 100644 --- a/cpukit/score/include/rtems/score/scheduleredf.h +++ b/cpukit/score/include/rtems/score/scheduleredf.h @@ -53,7 +53,7 @@ extern "C" { _Scheduler_EDF_Extract, /* extract entry point */ \ _Scheduler_EDF_Priority_compare, /* compares two priorities */ \ _Scheduler_EDF_Release_job, /* new period of task */ \ - _Scheduler_priority_Tick, /* tick entry point */ \ + _Scheduler_default_Tick, /* tick entry point */ \ _Scheduler_default_Start_idle /* start idle entry point */ \ } diff --git a/cpukit/score/include/rtems/score/schedulerpriority.h b/cpukit/score/include/rtems/score/schedulerpriority.h index f0582c1315..f6fdaffd7c 100644 --- a/cpukit/score/include/rtems/score/schedulerpriority.h +++ b/cpukit/score/include/rtems/score/schedulerpriority.h @@ -52,7 +52,7 @@ extern "C" { _Scheduler_priority_Extract, /* extract entry point */ \ _Scheduler_priority_Priority_compare, /* compares two priorities */ \ _Scheduler_priority_Release_job, /* new period of task */ \ - _Scheduler_priority_Tick, /* tick entry point */ \ + _Scheduler_default_Tick, /* tick entry point */ \ _Scheduler_default_Start_idle /* start idle entry point */ \ } @@ -225,15 +225,6 @@ void _Scheduler_priority_Release_job ( uint32_t deadline ); -/** - * @brief Determines if the current thread allows timeslicing. - * - * This routine is invoked as part of processing each clock tick. - * It is responsible for determining if the current thread allows - * timeslicing and, if so, when its timeslice expires. - */ -void _Scheduler_priority_Tick( void ); - /** * This is the major bit map. */ diff --git a/cpukit/score/include/rtems/score/schedulersimple.h b/cpukit/score/include/rtems/score/schedulersimple.h index 47b74befbe..0cdc8fcd91 100644 --- a/cpukit/score/include/rtems/score/schedulersimple.h +++ b/cpukit/score/include/rtems/score/schedulersimple.h @@ -50,7 +50,7 @@ extern "C" { _Scheduler_simple_Extract, /* extract entry point */ \ _Scheduler_priority_Priority_compare, /* compares two priorities */ \ _Scheduler_priority_Release_job, /* new period of task */ \ - _Scheduler_priority_Tick, /* tick entry point */ \ + _Scheduler_default_Tick, /* tick entry point */ \ _Scheduler_default_Start_idle /* start idle entry point */ \ } diff --git a/cpukit/score/include/rtems/score/schedulersimplesmp.h b/cpukit/score/include/rtems/score/schedulersimplesmp.h index 63213c6b2a..baac7b221d 100644 --- a/cpukit/score/include/rtems/score/schedulersimplesmp.h +++ b/cpukit/score/include/rtems/score/schedulersimplesmp.h @@ -62,7 +62,7 @@ extern "C" { _Scheduler_simple_Extract, /* extract entry point */ \ _Scheduler_priority_Priority_compare, /* compares two priorities */ \ _Scheduler_priority_Release_job, /* new period of task */ \ - _Scheduler_simple_smp_Tick /* tick entry point */ \ + _Scheduler_default_Tick /* tick entry point */ \ } /** @@ -102,15 +102,6 @@ void _Scheduler_simple_smp_Unblock( Thread_Control *the_thread ); -/** - * @brief Invoked as part of processing each SMP clock tick. - * - * This routine is invoked as part of processing each clock tick. - * It is responsible for determining if the current thread allows - * timeslicing and, if so, when its timeslice expires. - */ -void _Scheduler_simple_smp_Tick( void ); - #ifdef __cplusplus } #endif -- cgit v1.2.3