1 / 19

Real-Time Systems Scheduling Tool

Real-Time Systems Scheduling Tool. Developed by Daniel Ghiringhelli Advisor: Professor J ia cun Wang December 19, 2005. Overview. Motivation Features Platform and Tools Software Engineering Approach Algorithm Overview (bonus included!) Tool Design (30,000 ft. view)

varvara
Download Presentation

Real-Time Systems Scheduling Tool

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Real-Time Systems Scheduling Tool Developed by Daniel Ghiringhelli Advisor: Professor Jiacun Wang December 19, 2005

  2. Overview • Motivation • Features • Platform and Tools • Software Engineering Approach • Algorithm Overview (bonus included!) • Tool Design (30,000 ft. view) • Tool Overview and Demonstration • Summary

  3. Motivation • Real-time systems: time critical systems • Schedule: assignment of jobs to available processors • Feasible schedule: every job completes by its deadline • Scheduling algorithms: • Clock driven / Round-robin /Priority-driven • Need a tool to illustrate how these algorithms work • Particularly in RTS classes • and find feasible schedules • Helpful for research

  4. Features • Common Priority-Driven Algorithm Support • Earliest Deadline First • Deadline Monotonic • Least Slack First • Hyperperiod calculation • Extendable interface • Simulations based on task specifications • Graphical user interface • Task management • Visualization of a dynamic scheduler

  5. Platform and Tools • Written in Java • Eclipse 3.0 IDE • SWT GUI library • Deployed as an executable JAR Integrated JUnit Testing

  6. Software Engineering Principles • Informal process • Frequent Releases • GUI Mock-up • Test Driven • Regression TestPolicy Initial Mock-up

  7. Software Engineering Approach • Lightweight V-Model approach • Essentially a waterfall but with User Involvement • No system testing (i.e., “Lightweight”) • Test Driven • UAT written during Requirements • Unit Tests written during detailed design and construction • Customer Checkpoints

  8. Lightweight V-Model

  9. Algorithms Overview: DM • Deadline Monotonic (DM) • Static fixed priority scheduler • Immediately pre-empts any running task with a higher priority task • Advantages • Easy to implement (most widely used) • Low system overhead • Disadvantages • Not optimal • Requires static prioritization before run-time

  10. Algorithm Overview: EDF • Earliest Deadline First (EDF) • Dynamic priority scheduler • Highest priority is assigned to the task with the nearest deadline • Advantages • EDF theoretically superior to DM • Guaranteed scheduleability if CPU utilization 100% or less • Disadvantages • More difficult to implement • Higher system overhead • Overloaded system is unpredictable (non-critical tasks may be scheduled before critical tasks)

  11. Algorithm Overview: LSTF (bonus!) • Least Slack Time First (LSTF) • Dynamic priority scheduler • Highest priority given to the task with the least slack time (timeToDeadline – executionTimeLeft) • Advantages • Same as EDF • Intuitively logical • Disadvantages • Same as EDF

  12. (a) EDF T1 T2 3 6 9 12 T1 (b) RM T2 EDF and DM Example T1=(0, 5, 3, 5), T2=(0, 3, 1, 3)

  13. RTS Scheduling Tool Design • MVC Architecture • Controlling thread polls simulation thread for model updates

  14. RTS Scheduling Tool: Package View

  15. Thread Interaction

  16. Simulator Internals

  17. Tool Overview & Demo

  18. Concluding Remarks • RTS Scheduling Tool features: • Friendly UI • Effective teaching tool • Scheduleability analysis • Work to be done • Additional algorithms can be easily added! • GUI features and options

  19. Acknowledgments • MU Software Engineering Faculty • Professor Wang • Professor McDonald

More Related