Changeset 5472ad41 in rtems


Ignore:
Timestamp:
Sep 11, 2011, 8:52:37 PM (9 years ago)
Author:
Joel Sherrill <joel.sherrill@…>
Branches:
4.11, 5, master
Children:
0d6aee4
Parents:
72b7935
Message:

2011-09-11 Petr Benes <benesp16@…>

PR 1896/cpukit

  • sapi/include/confdefs.h, score/Makefile.am, score/preinstall.am: Add Earliest Deadline First (EDF) Scheduling Algorithm implementation.
  • score/include/rtems/score/scheduleredf.h, score/src/scheduleredf.c, score/src/scheduleredfallocate.c, score/src/scheduleredfblock.c, score/src/scheduleredfenqueue.c, score/src/scheduleredfenqueuefirst.c, score/src/scheduleredfextract.c, score/src/scheduleredffree.c, score/src/scheduleredfprioritycompare.c, score/src/scheduleredfreleasejob.c, score/src/scheduleredfschedule.c, score/src/scheduleredfunblock.c, score/src/scheduleredfupdate.c, score/src/scheduleredfyield.c: New files.
Location:
cpukit
Files:
14 added
4 edited

Legend:

Unmodified
Added
Removed
  • cpukit/ChangeLog

    r72b7935 r5472ad41  
     12011-09-11      Petr Benes <benesp16@fel.cvut.cz>
     2
     3        PR 1896/cpukit
     4        * sapi/include/confdefs.h, score/Makefile.am, score/preinstall.am: Add
     5        Earliest Deadline First (EDF) Scheduling Algorithm implementation.
     6        * score/include/rtems/score/scheduleredf.h, score/src/scheduleredf.c,
     7        score/src/scheduleredfallocate.c, score/src/scheduleredfblock.c,
     8        score/src/scheduleredfenqueue.c,
     9        score/src/scheduleredfenqueuefirst.c,
     10        score/src/scheduleredfextract.c, score/src/scheduleredffree.c,
     11        score/src/scheduleredfprioritycompare.c,
     12        score/src/scheduleredfreleasejob.c, score/src/scheduleredfschedule.c,
     13        score/src/scheduleredfunblock.c, score/src/scheduleredfupdate.c,
     14        score/src/scheduleredfyield.c: New files.
     15
    1162011-09-09      Sebastian Huber <sebastian.huber@embedded-brains.de>
    217
  • cpukit/sapi/include/confdefs.h

    r72b7935 r5472ad41  
    574574 *  CONFIGURE_SCHEDULER_SIMPLE     - Light-weight Priority Scheduler
    575575 *  CONFIGURE_SCHEDULER_SIMPLE_SMP - Simple SMP Priority Scheduler
     576 *  CONFIGURE_SCHEDULER_EDF        - EDF Scheduler
    576577 *
    577578 * If no configuration is specified by the application, then
     
    599600    !defined(CONFIGURE_SCHEDULER_PRIORITY) && \
    600601    !defined(CONFIGURE_SCHEDULER_SIMPLE) && \
    601     !defined(CONFIGURE_SCHEDULER_SIMPLE_SMP)
     602    !defined(CONFIGURE_SCHEDULER_SIMPLE_SMP) && \
     603    !defined(CONFIGURE_SCHEDULER_EDF)
    602604  #if defined(RTEMS_SMP) && defined(CONFIGURE_SMP_APPLICATION)
    603605    #define CONFIGURE_SCHEDULER_SIMPLE_SMP
     
    657659  )
    658660  #define CONFIGURE_MEMORY_PER_TASK_FOR_SCHEDULER (0)
     661#endif
     662
     663/*
     664 * If the EDF Scheduler is selected, then configure for it.
     665 */
     666#if defined(CONFIGURE_SCHEDULER_EDF)
     667  #include <rtems/score/scheduleredf.h>
     668  #define CONFIGURE_SCHEDULER_ENTRY_POINTS SCHEDULER_EDF_ENTRY_POINTS
     669
     670  /**
     671   * define the memory used by the EDF scheduler
     672   */
     673  #define CONFIGURE_MEMORY_FOR_SCHEDULER ( \
     674    _Configure_From_workspace(0))
     675  #define CONFIGURE_MEMORY_PER_TASK_FOR_SCHEDULER ( \
     676    _Configure_From_workspace(sizeof(Scheduler_EDF_Per_thread)))
    659677#endif
    660678
  • cpukit/score/Makefile.am

    r72b7935 r5472ad41  
    4141include_rtems_score_HEADERS += include/rtems/score/rbtree.h
    4242include_rtems_score_HEADERS += include/rtems/score/scheduler.h
     43include_rtems_score_HEADERS += include/rtems/score/scheduleredf.h
    4344include_rtems_score_HEADERS += include/rtems/score/schedulerpriority.h
    4445include_rtems_score_HEADERS += include/rtems/score/schedulersimple.h
     
    223224    src/schedulersimpleyield.c
    224225
     226## SCHEDULEREDF_C_FILES
     227libscore_a_SOURCES += src/scheduleredf.c \
     228    src/scheduleredfallocate.c \
     229    src/scheduleredfblock.c \
     230    src/scheduleredfenqueue.c \
     231    src/scheduleredfenqueuefirst.c \
     232    src/scheduleredfextract.c \
     233    src/scheduleredffree.c \
     234    src/scheduleredfprioritycompare.c \
     235    src/scheduleredfreleasejob.c \
     236    src/scheduleredfschedule.c \
     237    src/scheduleredfunblock.c \
     238    src/scheduleredfupdate.c \
     239    src/scheduleredfyield.c
     240
    225241## PROTECTED_HEAP_C_FILES
    226242libscore_a_SOURCES += src/pheapallocate.c \
  • cpukit/score/preinstall.am

    r72b7935 r5472ad41  
    128128PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/score/scheduler.h
    129129
     130$(PROJECT_INCLUDE)/rtems/score/scheduleredf.h: include/rtems/score/scheduleredf.h $(PROJECT_INCLUDE)/rtems/score/$(dirstamp)
     131        $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/score/scheduleredf.h
     132PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/score/scheduleredf.h
     133
    130134$(PROJECT_INCLUDE)/rtems/score/schedulerpriority.h: include/rtems/score/schedulerpriority.h $(PROJECT_INCLUDE)/rtems/score/$(dirstamp)
    131135        $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/rtems/score/schedulerpriority.h
Note: See TracChangeset for help on using the changeset viewer.