Top Banner
Priority Priority-driven driven of Periodic Ta of Periodic Ta Embedded Embedded Softw Softw Lectu Lectu n Scheduling n Scheduling asks (2) asks (2) Real Real-Time Time ware ware ure 6 ure 6
23

Priority-driven Scheduling of Periodic Tasks (2)et.engr.iupui.edu/~dskim/Classes/ESW5004/RTSys Lecture...Priority-driven Scheduling of Periodic Tasks (2) 4 optimal in restricted systems

Jul 26, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Priority-driven Scheduling of Periodic Tasks (2)et.engr.iupui.edu/~dskim/Classes/ESW5004/RTSys Lecture...Priority-driven Scheduling of Periodic Tasks (2) 4 optimal in restricted systems

PriorityPriority--driven Scheduling driven Scheduling of Periodic Tasks (2)of Periodic Tasks (2)

Embedded RealEmbedded RealSoftware Software Lecture 6Lecture 6

driven Scheduling driven Scheduling of Periodic Tasks (2)of Periodic Tasks (2)

Embedded RealEmbedded Real--Time Time Software Software Lecture 6Lecture 6

Page 2: Priority-driven Scheduling of Periodic Tasks (2)et.engr.iupui.edu/~dskim/Classes/ESW5004/RTSys Lecture...Priority-driven Scheduling of Periodic Tasks (2) 4 optimal in restricted systems

Lecture Outline

• Schedulability tests for fixed-priority systems– Conditions for optimality and schedulability– General schedulability tests and time demand analysis

• Practical factors– Non-preemptable regions– Self-suspension– Context switches– Limited priority levels

[Continues from material in lecture 5, with the same assumptions]

Priority-driven Scheduling of Periodic Tasks (2) 2

priority systemsConditions for optimality and schedulabilityGeneral schedulability tests and time demand analysis

[Continues from material in lecture 5, with the same assumptions]

driven Scheduling of Periodic Tasks (2)

Page 3: Priority-driven Scheduling of Periodic Tasks (2)et.engr.iupui.edu/~dskim/Classes/ESW5004/RTSys Lecture...Priority-driven Scheduling of Periodic Tasks (2) 4 optimal in restricted systems

Optimality and Schedulability

• You will recall:– EDF and LST dynamic priority scheduling optimal:

• Always produce a feasible schedule if one exists preemption is allowed and jobs do not contend for resources

• Lecture 3 + confirmation last lecture:

– Fixed priority algorithms is non-optimal in general:• e.g. RM and DM sometimes fail to schedule tasks that can be scheduled using other

algorithms• Proof:

– Hence introduced schedulability tests in lecture 5

Priority-driven Scheduling of Periodic Tasks (2) 3

Optimality and Schedulability

EDF and LST dynamic priority scheduling optimal:Always produce a feasible schedule if one exists – on a single processor, as long as preemption is allowed and jobs do not contend for resources

UEDF = 1optimal in general:

e.g. RM and DM sometimes fail to schedule tasks that can be scheduled using other

Hence introduced schedulability tests in lecture 5

driven Scheduling of Periodic Tasks (2)

Page 4: Priority-driven Scheduling of Periodic Tasks (2)et.engr.iupui.edu/~dskim/Classes/ESW5004/RTSys Lecture...Priority-driven Scheduling of Periodic Tasks (2) 4 optimal in restricted systems

Optimality of RM and DM Algorithms

• Fixed priority algorithms can be

• Example:– RM and DM are optimal in simply periodic systems– A system of periodic tasks is simply periodic

multiple of the period of the other tasks:pk = n⋅pi

where pi < pk and n is a positive integer; for all – True for many real-world systems, e.g. the helicopter flight control system

discussed in lecture 1

Priority-driven Scheduling of Periodic Tasks (2) 4

Optimality of RM and DM Algorithms

can be optimal in restricted systems

RM and DM are optimal in simply periodic systemssimply periodic if the period of each task is an integer

multiple of the period of the other tasks:

is a positive integer; for all Ti and Tk

world systems, e.g. the helicopter flight control system

driven Scheduling of Periodic Tasks (2)

Page 5: Priority-driven Scheduling of Periodic Tasks (2)et.engr.iupui.edu/~dskim/Classes/ESW5004/RTSys Lecture...Priority-driven Scheduling of Periodic Tasks (2) 4 optimal in restricted systems

Optimality of RM and DM Algorithms

• Theorem: A system of simply periodictasks with Di ≥ pi is schedulable on one processor using the RM algorithm if and only if U ≤ 1

– Corollary: The same is true for the DM algorithm

• Proof:– A simply periodic system, assume tasks in phase

• Worst case execution time occurs when tasks in phase

– Ti misses deadline at time t where t is an integer multiple of • Again, worst case ⇒ Di = pi

– Simply periodic ⇒ t integer multiple of periods of all higher priority tasks– Total time required to complete jobs with deadline ≤ – Only fails when Ui > 1

Priority-driven Scheduling of Periodic Tasks (2) 5

Optimality of RM and DM Algorithms

simply periodic, independent, preemptable is schedulable on one processor using the RM

Corollary: The same is true for the DM algorithm

A simply periodic system, assume tasks in phaseWorst case execution time occurs when tasks in phase

is an integer multiple of pi

integer multiple of periods of all higher priority tasksTotal time required to complete jobs with deadline ≤ t is

driven Scheduling of Periodic Tasks (2)

Page 6: Priority-driven Scheduling of Periodic Tasks (2)et.engr.iupui.edu/~dskim/Classes/ESW5004/RTSys Lecture...Priority-driven Scheduling of Periodic Tasks (2) 4 optimal in restricted systems

Schedulability of Fixed-Priority Tasks

• Identified several simple schedulability tests for fixedscheduling:– A system of n independent preemptable periodic tasks with

feasibly scheduled on one processor using RM if – A system of simply periodic independent preemptable tasks with

schedulable on one processor using the RM algorithm iff – [similar results for DM]

• But: there are algorithms and regions of operation where we don’t have a schedulability test and must resort to exhaustive simulation– Is there a more general schedulability test?– Yes, extend the approach taken for simply periodic system schedulability

Priority-driven Scheduling of Periodic Tasks (2) 6

Priority Tasks

Identified several simple schedulability tests for fixed-priority

A system of n independent preemptable periodic tasks with Di = pi can be feasibly scheduled on one processor using RM if U ≤ A system of simply periodic independent preemptable tasks with Di ≥ pi is schedulable on one processor using the RM algorithm iff U ≤ 1

But: there are algorithms and regions of operation where we don’t have a schedulability test and must resort to exhaustive simulation

Is there a more general schedulability test?Yes, extend the approach taken for simply periodic system schedulability

driven Scheduling of Periodic Tasks (2)

Page 7: Priority-driven Scheduling of Periodic Tasks (2)et.engr.iupui.edu/~dskim/Classes/ESW5004/RTSys Lecture...Priority-driven Scheduling of Periodic Tasks (2) 4 optimal in restricted systems

Fixed-Priority Tasks: Schedulability Test

• Fixed priority algorithms are predictable and do not suffer from scheduling anomalies

– The worst case execution time of the system occurs with the worst case execution time of the jobs, unlike dynamic priority algorithms which can exhibit anomalous behavior

• Use this as the basis for a general – Find the critical instant when the system is most loaded, and has its worst

response time– Use time demand analysis to determine if the system is schedulable at that

instant– Prove that, if a fixed-priority system is schedulable at the critical instant, it is

always schedulable

Priority-driven Scheduling of Periodic Tasks (2) 7

Priority Tasks: Schedulability Test

Fixed priority algorithms are predictable and do not suffer from

The worst case execution time of the system occurs with the worst case execution time of the jobs, unlike dynamic priority algorithms which can exhibit anomalous

Use this as the basis for a general schedulability test:when the system is most loaded, and has its worst

to determine if the system is schedulable at that

priority system is schedulable at the critical instant, it is

driven Scheduling of Periodic Tasks (2)

Page 8: Priority-driven Scheduling of Periodic Tasks (2)et.engr.iupui.edu/~dskim/Classes/ESW5004/RTSys Lecture...Priority-driven Scheduling of Periodic Tasks (2) 4 optimal in restricted systems

Finding the Critical Instant

• A critical instant for a job is the worstjob, taking into account all jobs that have higher priority– i.e. a job released at the same instant as all jobs with higher priority are

released, and must wait for all those jobs to complete before it executes– The response time of a job in Ti released at a critical instant is called the

maximum (possible) response time, and is denoted by

• The schedulability test involves checking each task in turn, to verify that it can be scheduled when started at a critical instant– If schedulable at all critical instants, will work at other times– More work than the test for maximum schedulable utilization, but less

than an exhaustive simulation

Priority-driven Scheduling of Periodic Tasks (2) 8

Finding the Critical Instant

A critical instant for a job is the worst-case release time for that job, taking into account all jobs that have higher priority

i.e. a job released at the same instant as all jobs with higher priority are released, and must wait for all those jobs to complete before it executes

released at a critical instant is called the maximum (possible) response time, and is denoted by Wi

The schedulability test involves checking each task in turn, to verify that it can be scheduled when started at a critical instant

If schedulable at all critical instants, will work at other timesMore work than the test for maximum schedulable utilization, but less

driven Scheduling of Periodic Tasks (2)

Page 9: Priority-driven Scheduling of Periodic Tasks (2)et.engr.iupui.edu/~dskim/Classes/ESW5004/RTSys Lecture...Priority-driven Scheduling of Periodic Tasks (2) 4 optimal in restricted systems

Finding the Critical Instant

• A critical instant of a task Ti is a time instant such that– If wi,k ≤ Di,k for every Ji,k in Ti, then

the job released at that instant has the maximum response time of all jobs in Ti and Wi= wi,k .

• All jobs meet deadlines, but this instant is when the job with the slowest response is started

– Else if there exists Ji,k such that withe job released at that instant has response time larger than D.

• If some jobs don’t meet deadlines, this is one of those jobs.

– Where wi,k is the response time of the job.• Theorem: In a fixed-priority system where every job completes

before the next job in the same task is released, a critical instant occurs when one of its jobs Ji,c is released at the same time with a job from every higher-priority task.– Intuitively obvious, but proved in the book

Priority-driven Scheduling of Periodic Tasks (2) 9

Finding the Critical Instant

is a time instant such that:, then

the job released at that instant has the maximum response time of all jobs

All jobs meet deadlines, but this instant is when the job with the slowest

i,k > Di,k, thenthe job released at that instant has response time larger than D.

If some jobs don’t meet deadlines, this is one of those jobs.

is the response time of the job.priority system where every job completes

before the next job in the same task is released, a critical instant is released at the same time with a

priority task.Intuitively obvious, but proved in the book

driven Scheduling of Periodic Tasks (2)

Page 10: Priority-driven Scheduling of Periodic Tasks (2)et.engr.iupui.edu/~dskim/Classes/ESW5004/RTSys Lecture...Priority-driven Scheduling of Periodic Tasks (2) 4 optimal in restricted systems

Finding the Critical Instant: Example

• Consider 3 tasksT1 = (2.0, 0.6), T2 = (2.5, 0.2), T3 = (3, 1.2)

• 3 tasks scheduled using rate-monotonic• The response times of jobs in T2

– r2,1 = 0.8, r2,2 = 0.3, r2,3 = 0.2, r2,4

– Therefore, the critical instants of T• What are the response times of jobs in

Priority-driven Scheduling of Periodic Tasks (2)

0 5

10

Finding the Critical Instant: Example

T1 = (2.0, 0.6), T2 = (2.5, 0.2), T3 = (3, 1.2)

monotonicare: = 0.2, r2,5 = 0.8, …

T2 are t = 0 and t = 10What are the response times of jobs in T3?

driven Scheduling of Periodic Tasks (2)

10

Page 11: Priority-driven Scheduling of Periodic Tasks (2)et.engr.iupui.edu/~dskim/Classes/ESW5004/RTSys Lecture...Priority-driven Scheduling of Periodic Tasks (2) 4 optimal in restricted systems

Using the Critical Instant

• Having determined the critical instants, show that for each job Ji,c released at a critical instant, that job and all higher priority tasks complete executing before their relative deadlines

• If so, the entire system be schedulable…

• That is: don’t simulate the entire system, simply show that it has correct characteristics following a critical instant– This process is called time demand analysis

Priority-driven Scheduling of Periodic Tasks (2) 11

Having determined the critical instants, show that released at a critical instant, that job and all higher

priority tasks complete executing before their relative deadlinesIf so, the entire system be schedulable…

That is: don’t simulate the entire system, simply show that it has correct characteristics following a critical instant

This process is called time demand analysis

driven Scheduling of Periodic Tasks (2)

Page 12: Priority-driven Scheduling of Periodic Tasks (2)et.engr.iupui.edu/~dskim/Classes/ESW5004/RTSys Lecture...Priority-driven Scheduling of Periodic Tasks (2) 4 optimal in restricted systems

Time-Demand Analysis

• Compute the total demand for processor time by a job released at a critical instant of a task, and by all the higherfunction of time from the critical instant

• Check if this demand can be met before the deadline of the job:– Consider one task, Ti, at a time, starting highest priority and working

down to lowest priority– Focus on a job, Ji, in Ti, where the release time,

instant of Ti

– At time t0 + t for t ≥ 0, the processor time demand higher-priority jobs released in [t0

Priority-driven Scheduling of Periodic Tasks (2) 12

Compute the total demand for processor time by a job released at a critical instant of a task, and by all the higher-priority tasks, as a function of time from the critical instantCheck if this demand can be met before the deadline of the job:

, at a time, starting highest priority and working

, where the release time, t0, of that job is a critical

≥ 0, the processor time demand wi(t) for this job and all 0, t ] is:

driven Scheduling of Periodic Tasks (2)

Page 13: Priority-driven Scheduling of Periodic Tasks (2)et.engr.iupui.edu/~dskim/Classes/ESW5004/RTSys Lecture...Priority-driven Scheduling of Periodic Tasks (2) 4 optimal in restricted systems

Time-Demand Analysis

• Compare the time demand, wi(t), with the available time, – If wi(t) ≤ t for some t ≤ Di, the job, – If wi(t) > t for all 0 < t ≤ Di then the task probably cannot complete by its

deadline; and the system likely cannot be scheduled using a fixed priority algorithm

• Note that this is a sufficient condition, but not a necessary condition. Simulation may show that the critical instant never occurs in practice, so the system could be feasible…

• Use this method to check that all tasks are schedulable if released at their critical instants; if so conclude the entire system can be scheduled

Priority-driven Scheduling of Periodic Tasks (2) 13

), with the available time, t:, the job, Ji, meets its deadline, t0 + Di

then the task probably cannot complete by its deadline; and the system likely cannot be scheduled using a fixed priority

Note that this is a sufficient condition, but not a necessary condition. Simulation may show that the critical instant never occurs in practice, so the

Use this method to check that all tasks are schedulable if released at their critical instants; if so conclude the entire system can be

driven Scheduling of Periodic Tasks (2)

Page 14: Priority-driven Scheduling of Periodic Tasks (2)et.engr.iupui.edu/~dskim/Classes/ESW5004/RTSys Lecture...Priority-driven Scheduling of Periodic Tasks (2) 4 optimal in restricted systems

Time-Demand Analysis: Example

• Rate Monotonic:T1 = (3,1), T2=(5,2), T3=(10,2)U = 0.933

• The time-demand functions w1(t), w2(t), and w3(t) are not above t at their deadlineè system can be scheduled

Priority-driven Scheduling of Periodic Tasks (2)0 2

0

2

4

6

8

10

Tim

e-de

man

d fu

ncti

on, w

i(t)

J3,1 starts with a timedemand of 5 units; 2 for itself, 2 for J2,1, 1 for J1,1

14

Demand Analysis: Example

driven Scheduling of Periodic Tasks (2)4 6 8 10

Deadline for J1,1

Deadline for J2,1

Deadline for J3,1

w1(t)

w2(t)

w3(t)

Time, t

starts with a time-demand of 5 units; 2 for itself, 2 for J2,1, 1 for J1,1

Page 15: Priority-driven Scheduling of Periodic Tasks (2)et.engr.iupui.edu/~dskim/Classes/ESW5004/RTSys Lecture...Priority-driven Scheduling of Periodic Tasks (2) 4 optimal in restricted systems

Time-Demand Analysis

• The time-demand function wi(t) is a staircase function– Steps in the time-demand for a task occur at multiples of the period for

higher-priority tasks– The value of wi(t) – t linearly decreases from a step until the next step

• If our interest is the schedulabilitywi(t) ≤ t at the time instants when a higher

• Our schedulability test becomes:– Compute wi(t)– Check whether wi(t) ≤ t is satisfied at any of the instants

where k = 1, 2, …, ij = 1, 2, …, ëmin(pi, Di)/pkû

Priority-driven Scheduling of Periodic Tasks (2) 15

) is a staircase functiondemand for a task occur at multiples of the period for

linearly decreases from a step until the next step

schedulability of a task, it suffices to check if at the time instants when a higher-priority job is released

test becomes:

is satisfied at any of the instants t = j⋅pk

driven Scheduling of Periodic Tasks (2)

Page 16: Priority-driven Scheduling of Periodic Tasks (2)et.engr.iupui.edu/~dskim/Classes/ESW5004/RTSys Lecture...Priority-driven Scheduling of Periodic Tasks (2) 4 optimal in restricted systems

Time-Demand Analysis: Exercise

• For the following tasks: T1 = (3,1), T2 = (5, 1.5), T3 = (7, 1.25), – Draw the time-demand functions– Determine if they are RM schedulable

• Add one more taskT5 = (10, 1)– Draw the time-demand functions– Determine if they are RM schedulable

Priority-driven Scheduling of Periodic Tasks (2) 16

Demand Analysis: Exercise

= (7, 1.25), T4 = (9, 0.5)

Determine if they are RM schedulable

Determine if they are RM schedulable

driven Scheduling of Periodic Tasks (2)

Page 17: Priority-driven Scheduling of Periodic Tasks (2)et.engr.iupui.edu/~dskim/Classes/ESW5004/RTSys Lecture...Priority-driven Scheduling of Periodic Tasks (2) 4 optimal in restricted systems

Time-Demand Analysis: Summary

• Time-demand analysis schedulability test is more complex than the schedulable utilization test, but more general– Works for any fixed-priority scheduling algorithm, provided the tasks

have short response time (i.e. pi < – Can be extended to tasks with arbitrary deadlines (see book)– Only a sufficient test: guarantees that schedulable results are correct, but

requires further testing to validate a result of not schedulable

• Alternative approach: simulate the behavior of tasks released at the critical instants, up to the largest period of the tasks– Still involves simulation, but less complex than an exhaustive simulation

of the system behavior– Worst-case simulation method– Can easily extend the time-demand analysis method for non

Priority-driven Scheduling of Periodic Tasks (2) 17

Demand Analysis: Summary

demand analysis schedulability test is more complex than the schedulable utilization test, but more general

priority scheduling algorithm, provided the tasks < Di)

Can be extended to tasks with arbitrary deadlines (see book)Only a sufficient test: guarantees that schedulable results are correct, but requires further testing to validate a result of not schedulable

Alternative approach: simulate the behavior of tasks released at the critical instants, up to the largest period of the tasks

Still involves simulation, but less complex than an exhaustive simulation

demand analysis method for non-preemptivity

driven Scheduling of Periodic Tasks (2)

Page 18: Priority-driven Scheduling of Periodic Tasks (2)et.engr.iupui.edu/~dskim/Classes/ESW5004/RTSys Lecture...Priority-driven Scheduling of Periodic Tasks (2) 4 optimal in restricted systems

Practical Factors

• We have assumed that:– Jobs are preemptable at any time– Jobs never suspend themselves– Each job has distinct priority– The scheduler is event driven and acts immediately

• These assumptions are often not valid… how does this affect the system?

Priority-driven Scheduling of Periodic Tasks (2) 18

The scheduler is event driven and acts immediately

These assumptions are often not valid… how does this affect the

driven Scheduling of Periodic Tasks (2)

Page 19: Priority-driven Scheduling of Periodic Tasks (2)et.engr.iupui.edu/~dskim/Classes/ESW5004/RTSys Lecture...Priority-driven Scheduling of Periodic Tasks (2) 4 optimal in restricted systems

Blocking and Priority Inversion

• A ready job is blocked when it is prevented from executing by a lower-priority job; a priority inversion is when a lowerjob executes while a higher-priority job is

• Nonpreemptibility– Some jobs cannot be pre-empted:

• Critical section over a resource• Some system calls are non-preemptable• Disk scheduling

– If a job becomes non-preemptablemay cause a higher priority task to miss its deadline

– When attempting to determine if a task meets all of its deadlines, must consider not only all the tasks that have higher priorities, but also nonpreemptable regions of lower-

– Add the blocking time in when calculating if a task is schedulable

Priority-driven Scheduling of Periodic Tasks (2) 19

Blocking and Priority Inversion

when it is prevented from executing by a inversion is when a lower-priority

priority job is blocked

preemptable

preemptable, priority inversions may occur, these may cause a higher priority task to miss its deadlineWhen attempting to determine if a task meets all of its deadlines, must consider not only all the tasks that have higher priorities, but also

-priority tasksAdd the blocking time in when calculating if a task is schedulable

driven Scheduling of Periodic Tasks (2)

Page 20: Priority-driven Scheduling of Periodic Tasks (2)et.engr.iupui.edu/~dskim/Classes/ESW5004/RTSys Lecture...Priority-driven Scheduling of Periodic Tasks (2) 4 optimal in restricted systems

Self-Suspension and Context Switches

• Self-suspension– A job may invoke an external operation (e.g. request an I/O operation),

during which time it is suspended– This means the task is no longer strictly periodic… again need to take into

account self-suspension time when calculating a schedule

• Context Switches– Assume maximum number of context switches

each takes tCS time units– Compensate by setting execution time of each job,

eactual = ei + 2 Tcs

• (more if jobs self-suspend, since additional context switches)

Priority-driven Scheduling of Periodic Tasks (2) 20

Suspension and Context Switches

A job may invoke an external operation (e.g. request an I/O operation), during which time it is suspendedThis means the task is no longer strictly periodic… again need to take into

suspension time when calculating a schedule

Assume maximum number of context switches Ki for a job in Ti is known;

Compensate by setting execution time of each job,

suspend, since additional context switches)

driven Scheduling of Periodic Tasks (2)

Page 21: Priority-driven Scheduling of Periodic Tasks (2)et.engr.iupui.edu/~dskim/Classes/ESW5004/RTSys Lecture...Priority-driven Scheduling of Periodic Tasks (2) 4 optimal in restricted systems

Tick Scheduling

• All of our previous discussion of prioritydriven by events (job release and

• Alternatively, can perform priorityevents (timer interrupts) generated by a hardware clock

– i.e. tick (or time-based) scheduling

• Additional factors to account for in – The fact that a job is ready to execute will not be noticed and acted upon until the

next clock interrupt; this will delay the completion of the job– A ready job that is yet to be noticed by the scheduler must be held somewhere

other than the ready job queue, the pending job – When the scheduler executes, it moves jobs in the pending queue to the ready

queue according to their priorities; once in ready queue, the jobs execute in priority order

Priority-driven Scheduling of Periodic Tasks (2) 21

All of our previous discussion of priority-driven scheduling was release and completion)

Alternatively, can perform priority-driven scheduling at periodic events (timer interrupts) generated by a hardware clock

Additional factors to account for in schedulability analysisThe fact that a job is ready to execute will not be noticed and acted upon until the next clock interrupt; this will delay the completion of the jobA ready job that is yet to be noticed by the scheduler must be held somewhere

pending job queueWhen the scheduler executes, it moves jobs in the pending queue to the ready queue according to their priorities; once in ready queue, the jobs execute in

driven Scheduling of Periodic Tasks (2)

Page 22: Priority-driven Scheduling of Periodic Tasks (2)et.engr.iupui.edu/~dskim/Classes/ESW5004/RTSys Lecture...Priority-driven Scheduling of Periodic Tasks (2) 4 optimal in restricted systems

Practical Factors

• Clear that non-ideal behaviour can affect the schedulability of a system

• Have touched on how – more details later in the module

Priority-driven Scheduling of Periodic Tasks (2) 22

ideal behaviour can affect the schedulability of a

more details later in the module

driven Scheduling of Periodic Tasks (2)

Page 23: Priority-driven Scheduling of Periodic Tasks (2)et.engr.iupui.edu/~dskim/Classes/ESW5004/RTSys Lecture...Priority-driven Scheduling of Periodic Tasks (2) 4 optimal in restricted systems

Summary

• Have discussed fixed-priority scheduling of periodic tasks:– Optimality of RM and DM– More general schedulability tests and time

• Outlined practical factors that affect real

Priority-driven Scheduling of Periodic Tasks (2) 23

priority scheduling of periodic tasks:

More general schedulability tests and time-demand analysis

Outlined practical factors that affect real-world periodic systems

driven Scheduling of Periodic Tasks (2)