mirror of
https://gitlab.rtems.org/rtems/rtos/rtems.git
synced 2025-12-05 15:15:44 +00:00
score: Improve Scheduler Handler documentation
This commit is contained in:
@@ -30,12 +30,7 @@ extern "C" {
|
|||||||
struct Per_CPU_Control;
|
struct Per_CPU_Control;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @defgroup RTEMSScoreScheduler Scheduler Handler
|
* @addtogroup RTEMSScoreScheduler
|
||||||
*
|
|
||||||
* @ingroup RTEMSScore
|
|
||||||
*
|
|
||||||
* This handler encapsulates functionality related to managing sets of threads
|
|
||||||
* that are ready for execution.
|
|
||||||
*
|
*
|
||||||
* @{
|
* @{
|
||||||
*/
|
*/
|
||||||
@@ -300,22 +295,24 @@ struct _Scheduler_Control {
|
|||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Registered schedulers.
|
* @brief This table contains the configured schedulers.
|
||||||
*
|
*
|
||||||
* Application provided via <rtems/confdefs.h>.
|
* The table is defined by <rtems/confdefs.h> through the
|
||||||
|
* #CONFIGURE_SCHEDULER_TABLE_ENTRIES application configuration option.
|
||||||
*
|
*
|
||||||
* @see _Scheduler_Count.
|
* @see _Scheduler_Count.
|
||||||
*/
|
*/
|
||||||
extern const Scheduler_Control _Scheduler_Table[];
|
extern const Scheduler_Control _Scheduler_Table[];
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Count of registered schedulers.
|
* @brief This constant contains the count of configured schedulers.
|
||||||
*
|
*
|
||||||
* Application provided via <rtems/confdefs.h> on SMP configurations.
|
* In SMP configurations, the constant is defined by <rtems/confdefs.h> through
|
||||||
|
* the count of entries of the #CONFIGURE_SCHEDULER_TABLE_ENTRIES application
|
||||||
|
* configuration option.
|
||||||
*
|
*
|
||||||
* It is very important that this is a compile-time constant on uni-processor
|
* In uniprocessor configurations, this is a compile time constant set to one.
|
||||||
* configurations (in this case RTEMS_SMP is not defined) so that the compiler
|
* This is important so that the compiler can optimize some loops away.
|
||||||
* can optimize the some loops away
|
|
||||||
*
|
*
|
||||||
* @see _Scheduler_Table.
|
* @see _Scheduler_Table.
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -34,7 +34,34 @@ extern "C" {
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @addtogroup RTEMSScoreScheduler
|
* @defgroup RTEMSScoreScheduler Scheduler Handler
|
||||||
|
*
|
||||||
|
* @ingroup RTEMSScore
|
||||||
|
*
|
||||||
|
* @brief This handler encapsulates functionality related to managing sets of
|
||||||
|
* threads that are ready for execution.
|
||||||
|
*
|
||||||
|
* Schedulers are used by the system to manage sets of threads that are ready
|
||||||
|
* for execution. A scheduler consists of
|
||||||
|
*
|
||||||
|
* * a scheduler algorithm implementation,
|
||||||
|
*
|
||||||
|
* * a scheduler index and an associated name, and
|
||||||
|
*
|
||||||
|
* * a set of processors owned by the scheduler (may be empty, but never
|
||||||
|
* overlaps with a set owned by another scheduler).
|
||||||
|
*
|
||||||
|
* Each thread uses exactly one scheduler as its home scheduler. Threads may
|
||||||
|
* temporarily use another scheduler due to actions of locking protocols.
|
||||||
|
*
|
||||||
|
* All properties of a scheduler can be configured and controlled by the user.
|
||||||
|
* Some properties are fixed at link time (defined by application configuration
|
||||||
|
* options), other properties can be changed at runtime through directive
|
||||||
|
* calls.
|
||||||
|
*
|
||||||
|
* The scheduler index, name, and initial processor set are defined for a
|
||||||
|
* particular application by the application configuration. The schedulers are
|
||||||
|
* registered in the ::_Scheduler_Table which has ::_Scheduler_Count entries.
|
||||||
*
|
*
|
||||||
* @{
|
* @{
|
||||||
*/
|
*/
|
||||||
|
|||||||
Reference in New Issue
Block a user