Difference between revisions of "Scheduling"

From Suhrid.net Wiki
Jump to navigationJump to search
Line 26: Line 26:
  
 
* Many different analysis techniques possible for FPS. Most flexible is Response Time Analysis.
 
* Many different analysis techniques possible for FPS. Most flexible is Response Time Analysis.
 +
* Most approaches view system as a number of SO's.
 +
* Each SO is characterized by its:
 +
** Release profile.
 +
** Processing cost per release.
 +
** Hardware resources needed per release.
 +
** Software resources per release.
 +
** Deadline
 +
** Value
 +
 +
=== Release Profile ===
 +
 +
* Typically after a SO is started, it waits to be released. When released it does its work and then it waits to be released again.
 +
* The release profile defines the frequency at which the release of a SO occurs. The release may be time triggered or event triggered.
 +
* Time triggered releases are '''periodic''' releases.
 +
* Event triggered releases are
 +
** Sporadic: They are irregular but with a minimum inter arrival time.
 +
** Aperiodic: No minimum inter arrival time assumptions can be made.

Revision as of 09:34, 31 December 2011

Intro

  • RT Systems must be able to interact with their environment in a timely and predictable manner.
  • Therefore an RT system must be analyzable whose timing properties can be proven and mathematically correct.
  • Scheduling is the ordering of threads/processes so that the underlying hardware and software resources can be predictably and efficiently used.
  • Scheduling consists of three components:
    • Scheduling policy: An algorithm for ordering access to resources.
    • Scheduling mechanism: An algorithm for allocation resources.
    • Schedulability/Feasibility analysis: A means of predicting the worst case behavior of the system when the policy and mechanism are applied. Once the worst case has been predicated, then it can be compared with the systems timing requirements to ensure that all deadlines will be met.

Fixed Priority Scheduling

Policy

  • FPS Requires:
  • Statically allocate SO's to a single processor.
  • Order SO execution on a single processor according to their priority.
  • Assign priorities to SO's at their creation time. Usually priorities are assigned according to deadlines.
  • Priority Inheritance when accessing resources.

Mechanism

  • Pre-emptive priority based dispatching of processes. The resource is always given to the highest priority runnable SO.

Feasibility Analysis

  • Many different analysis techniques possible for FPS. Most flexible is Response Time Analysis.
  • Most approaches view system as a number of SO's.
  • Each SO is characterized by its:
    • Release profile.
    • Processing cost per release.
    • Hardware resources needed per release.
    • Software resources per release.
    • Deadline
    • Value

Release Profile

  • Typically after a SO is started, it waits to be released. When released it does its work and then it waits to be released again.
  • The release profile defines the frequency at which the release of a SO occurs. The release may be time triggered or event triggered.
  • Time triggered releases are periodic releases.
  • Event triggered releases are
    • Sporadic: They are irregular but with a minimum inter arrival time.
    • Aperiodic: No minimum inter arrival time assumptions can be made.