Mapping of Applications to Execution Platforms Flashcards
What is the preceeding step of mapping?
Specification/Tasks
What is the task of mapping (general)?
- find a mapping of applications to processors
- appropriate scheduling techniques (if not fixed)
- find a target architecture
other objectives: - keeping deadlines / maximize performance
- minimize cost / energy consumption
Real-time scheduling? what are typical constraints?
- find a mapping of tasks on a timeline
- resource constraint, dependency constraints, deadlines
Difference between hard and soft deadlines?
Hard: violating deadline results in catastrophe
Soft: All other time constraints
There are periodic, aperiodic tasks. What are sporadic tasks?
Tasks requesting the processor at unpredictable times are called sporadic, if there is a minimum speration between the times at which they request the processor
Preemptive vs non-preemptive schedulers?
- preemptive: tasks can be interrupted while running -> good when responsetime to external event have to be short or some task have ling execution times
- non-preemptive: tasks always run to completion -> response time for external events may be long
What is a time-triggered system? (implementation level, adv. / disadv.)
- static scheduling, a dispatcher is activated by the synchronized clock tick. It uses the Task-Descriptor List (TDL) and performs the action that has been planned
- advantage: easy to check if timing constraints are met
- disadvantage: response to sporadic event may be poor
What is lateness?
lateness = (completion time - deadline)
typical cost function for scheduling: minimize lateness
Difference: absolut and relative deadlines?
Absolut Deadlines: absolut time, ‘wallclock’-time
Relative Deadlines: refers to a relative starting point of a task
What is laxity / slack?
It is the spare/buffer time between finishing a task and the deadline ( I = deadline - WCET )
What is the EDD scheduling?
- Earliest Due Date (EDD): execute task with earliest due date (deadline) first for non-periodic tasks wanting to start at same time-instance
- it is optimal in respect to minimizing the maximum lateness (Jackson’s Rule)
What is scheuling by EDF opposed to EDD?
- Earliest Deadline First Algorithm (opposed to Earliest Due Date) is for the dynamic case (not all task want to execute at the beginning)
- each time a new ask wants to execute it is inserted into a queue which is sorted by their absolute deadlines
- the currently running task might get preempted
What is scheduling by LL or LST?
- aperiodic tasks
- scheduling with priority on minimizing least laxity (LL) or least slack time first (LST)
- Calculated by: deadline - current time - execution time left for task
- for running task the slack time does not change, for all inactive task the slack time decreases
Properties of LL/LST?
- big overhead (constantly computing laxity and calls for scheduler)
- many context switches
- detects missed deadlines early
- is also an optimal scheduling for mono-processor systems
- dynamic priorities -> cannot be used on fixed-priority OS
How is ‘optimality’ for periodic tasks defined?
A scheduler is defined to be optimal if it will find a schedule if one exist