best effort scheduling algorithms

Post on 02-Jan-2016

38 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Scheduling Basic Concepts Ref: Hard Real-Time Computing Systems Giorgio Buttazzo Ref: Real-Time Systems & Software Alan Shaw Processes - Tasks - Threads. - PowerPoint PPT Presentation

TRANSCRIPT

Scheduling

Basic Concepts

Ref: Hard Real-Time Computing SystemsGiorgio Buttazzo

Ref: Real-Time Systems & Software Alan Shaw

Processes - Tasks - Threads

Real-Time Systems

Periodic and Aperiodic

Hard & Soft Deadlines

Scheduling of Tasks – Static & Dynamic

Sharing of Resources and Critical Sections

Domino Effect

Best Effort Scheduling Algorithms

Example Cost FunctionsWhat is a “good” system?

Metrics for Performance EvaluationWhat is a “good” system?

Attempting to Minimize Lateness

Scheduling Anomalies

Precedence Example

Adding a processor

Reducing Computation Times ?

Weaken Constraints

Resource Constraints

Successive events are separated by at least p

The Sporadic process

Shaw’s notation:

Cyclic Executives for Scheduling Periodic Tasks:

Broken into blocks:

Major Cycles (MCT) – shortest period where all task periods align

all tasks execute in a major cycle

Minor Cycles (mct) – “frames” used to allocate tasks or portions of tasks

Example: Say you have two tasks:

T1 = (c1, p1, d1) = (1, 2, 2)

T2 = (c2, p2, d2) = (1, 3, 3)

|xxxxxx______|xxxxxx______|xxxxxx______|……..

|______xxxxxx______|xxxxxx____________|……

0 1 2 3 4 5 6

MCT = 6

mct = 2 (or 1)

Allocations are: {T1,T2} {T1,T2} {T1}, repeat

Can this be scheduled?

What is MCT?

What is mct?

What is a schedule?

Ada-like implementation of this scheduling.

Clock returns the current time

Delay_until x causes the task to block until at least time x

Some principles about periodic scheduling:

We assume all processes are released at time t0. Why?

The MCT is the least common multiple (lcm) of the periods. Why?

The mct must divide the MCT. Why?

The mct must be >= the longest computation block. Why?

mct <= di for all I = 1,…, n

mct + (mct - gcd(mct, pi)) <= di

Home work #1: (Lecture 4/03)

From Buttazzo:

From Shaw:

Exercises 2.2: 1, 2, 3, 5, 6

top related