Practical%20Factors - PowerPoint PPT Presentation

About This Presentation
Title:

Practical%20Factors

Description:

Insufficient Priority Resolutions (Limited Number of Distinct Priorities) Time-Driven Implementation of Scheduler (Tick Scheduling) ... – PowerPoint PPT presentation

Number of Views:20
Avg rating:3.0/5.0
Slides: 12
Provided by: Riccardo61
Category:

less

Transcript and Presenter's Notes

Title: Practical%20Factors


1
Practical Factors
  • Non-Preemptable Portions ()
  • Self-Suspension of Jobs ()
  • Context Switches ()
  • Insufficient Priority Resolutions (Limited Number
    of Distinct Priorities)
  • Time-Driven Implementation of Scheduler (Tick
    Scheduling)
  • Varying Priorities in Fixed-Priority Systems

2
Practical Factors I Non-Preemptability
  • Jobs, or portions thereof, may be
    non-preemptable.
  • Definition non-preemptable portion
  • ri largest non-preemptable portion of jobs
    in Ti.
  • Definition blocked job A job is said to be
    blocked if it is prevented from executing by
    lower-priority job. (priority-inversion)
  • When testing schedulability of a task Ti, we must
    consider
  • higher-priority tasks
  • and
  • non-preemptable portions of lower-priority tasks

3
Analysis with Non-Preemptable Portions
  • Definition blocking time The blocking time
    bi of Task Ti is the longest time by which any
    job of Ti can be blocked by lower-priority jobs
  • Time-demand function with blocking
  • Utilization bounds with blocking
  • test one task at a time

4
Non-Preemptability Example
w3(t)
w(t)
w2(t)
time-demand function without blocking
w1(t)
w(t)
t
2
4
6
8
10
time-demand function with blocking ( T3
non-preemptable)
t
2
4
6
5
Practical Factors II Self-Suspension
  • Definition Self-Suspension Self-suspension
    of a job occurs when the job waits for an
    external operation to complete (RPC, I/O
    operation).
  • Assumption We know the maximum length of
    external operation i.e., the duration of
    self-suspension is bounded.
  • Example
  • Analysis biSS Blocking time of Ti due to
    self-suspension.

self-suspension!
T1 (?10,p14,e12.5)
T2 (?23,p27,e22.0)
6
Self-Suspension with Non-Preemptable Portions
  • Whenever job self-suspends, it loses the
    processor.
  • When tries to re-acquire processor, it may be
    blocked by tasks in non-preemptable portions.
  • Analysis bNPi Blocking time due to
    non-preemptable portions Ki Max. number of
    self-suspensions bi Total blocking time
  • bi bSSi (Ki 1) bNPi

7
Practical Factors II Self-Suspension
  • Definition Self-Suspension Self-suspension
    of a job occurs when the job waits for an
    external operation to complete (RPC, I/O
    operation).
  • Assumption We know the maximum length of
    external operation i.e., the duration of
    self-suspension is bounded.
  • Example
  • Analysis biSS Blocking time of Ti due to
    self-suspension.

self-suspension!
T1 (?10,p14,e12.5)
T2 (?23,p27,e22.0)
8
Self-Suspension with Non-Preemptable Portions
  • Whenever job self-suspends, it loses the
    processor.
  • When tries to re-acquire processor, it may be
    blocked by tasks in non-preemptable portions.
  • Analysis bNPi Blocking time due to
    non-preemptable portions Ki Max. number of
    self-suspensions bi Total blocking time
  • bi bSSi (Ki 1) bNPi

9
Practical Factors III Context Switches
  • Definition Job-level fixed priority
    assignment In a job-level fixed priority
    assigment, each job is given a fixed priority
    for its entire execution.
  • Case I No self-suspension
  • In a job-level fixed-priority system, each job
    preempts at most one other job.
  • Each job therefore causes at most two context
    switches
  • Therefore Add the context switch time twice to
    the execution time of job ei ei 2 CS
  • Case II Self-suspensions can occur
  • Each job suffers two more context switches each
    time it self-suspends
  • Therefore Add more context switch times
    appropriately ei ei 2 (Ki 1) CS

10
Practical Factors III Context Switches
  • Definition Job-level fixed priority
    assignment In a job-level fixed priority
    assigment, each job is given a fixed priority
    for its entire execution.
  • Case I No self-suspension
  • In a job-level fixed-priority system, each job
    preempts at most one other job.
  • Each job therefore causes at most two context
    switches
  • Therefore Add the context switch time twice to
    the execution time of job ei ei 2 CS
  • Case II Self-suspensions can occur
  • Each job suffers two more context switches each
    time it self-suspends
  • Therefore Add more context switch times
    appropriately ei ei 2 (Ki 1) CS

11
Practical Factors
  • Non-Preemptable Portions ()
  • Self-Suspension of Jobs ()
  • Context Switches ()
  • Insufficient Priority Resolutions (Limited Number
    of Distinct Priorities)
  • Time-Driven Implementation of Scheduler (Tick
    Scheduling)
  • Varying Priorities in Fixed-Priority Systems
Write a Comment
User Comments (0)
About PowerShow.com