diff options
Diffstat (limited to 'schedsim/shell/schedsim_cluster01/config.c')
-rw-r--r-- | schedsim/shell/schedsim_cluster01/config.c | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/schedsim/shell/schedsim_cluster01/config.c b/schedsim/shell/schedsim_cluster01/config.c new file mode 100644 index 0000000..ab1bcbc --- /dev/null +++ b/schedsim/shell/schedsim_cluster01/config.c @@ -0,0 +1,47 @@ +/** + * @file + * + * Configuration file for Scheduler Simulator using Priority SMP + */ + +#include <rtems.h> + +#define CONFIGURE_INIT +#define CONFIGURE_MAXIMUM_TASKS 1000 +#define CONFIGURE_MAXIMUM_SEMAPHORES 1000 + +#define CONFIGURE_MAXIMUM_PRIORITY 255 + +#define CONFIGURE_SMP_APPLICATION +#define CONFIGURE_SMP_MAXIMUM_PROCESSORS 4 +#define CONFIGURE_SCHEDULER_PRIORITY_SMP +#define CONFIGURE_SCHEDULER_PRIORITY_AFFINITY_SMP + +#include <rtems/scheduler.h> +#include <schedsim_shell.h> + +shell_scheduler_name shell_scheduler_list[] = { +"Priority SMP Scheduler", +"Priority Affinity SMP Scheduler", +"" +}; + +RTEMS_SCHEDULER_CONTEXT_PRIORITY_SMP(a, CONFIGURE_MAXIMUM_PRIORITY + 1); +RTEMS_SCHEDULER_CONTEXT_PRIORITY_AFFINITY_SMP( + b, + CONFIGURE_MAXIMUM_PRIORITY + 1 +); + +#define CONFIGURE_SCHEDULER_CONTROLS \ + RTEMS_SCHEDULER_CONTROL_PRIORITY_SMP(a, SCHED_NAME(0)), \ + RTEMS_SCHEDULER_CONTROL_PRIORITY_AFFINITY_SMP(b, SCHED_NAME(1)) + +#define CONFIGURE_SMP_SCHEDULER_ASSIGNMENTS \ + RTEMS_SCHEDULER_ASSIGN(0, RTEMS_SCHEDULER_ASSIGN_PROCESSOR_MANDATORY), \ + RTEMS_SCHEDULER_ASSIGN(0, RTEMS_SCHEDULER_ASSIGN_PROCESSOR_OPTIONAL), \ + RTEMS_SCHEDULER_ASSIGN(1, RTEMS_SCHEDULER_ASSIGN_PROCESSOR_OPTIONAL), \ + RTEMS_SCHEDULER_ASSIGN(1, RTEMS_SCHEDULER_ASSIGN_PROCESSOR_OPTIONAL) + + +#define CONFIGURE_DISABLE_BSP_SETTINGS +#include <rtems/confdefs.h> |