Lecture 4 Schedulability and Tasks

Slides:



Advertisements
Similar presentations
Chapter 7 - Resource Access Protocols (Critical Sections) Protocols: No Preemptions During Critical Sections Once a job enters a critical section, it cannot.
Advertisements

CS5270 Lecture 31 Uppaal, and Scheduling, and Resource Access Protocols CS 5270 Lecture 3.
Wk 2 – Scheduling 1 CS502 Spring 2006 Scheduling The art and science of allocating the CPU and other resources to processes.
By Group: Ghassan Abdo Rayyashi Anas to’meh Supervised by Dr. Lo’ai Tawalbeh.
Chapter 4 Processor Management
Operating System Concepts and Techniques Lecture 5 Scheduling-1 M. Naghibzadeh Reference M. Naghibzadeh, Operating System Concepts and Techniques, First.
More Scheduling cs550 Operating Systems David Monismith.
CprE 458/558: Real-Time Systems (G. Manimaran)1 CprE 458/558: Real-Time Systems Combined Scheduling of Periodic and Aperiodic Tasks.
Scheduling policies for real- time embedded systems.
CS Spring 2011 CS 414 – Multimedia Systems Design Lecture 31 – Multimedia OS (Part 1) Klara Nahrstedt Spring 2011.
Real-Time Scheduling CS4730 Fall 2010 Dr. José M. Garrido Department of Computer Science and Information Systems Kennesaw State University.
2.5 Scheduling Given a multiprogramming system. Given a multiprogramming system. Many times when more than 1 process is waiting for the CPU (in the ready.
RTOS task scheduling models
CSCI1600: Embedded and Real Time Software Lecture 24: Real Time Scheduling II Steven Reiss, Fall 2015.
Real time scheduling G.Anuradha Ref:- Stallings. Real time computing Correctness of the system depends not only on the logical result of computation,
Introduction to Embedded Systems Rabie A. Ramadan 5.
CS Spring 2009 CS 414 – Multimedia Systems Design Lecture 31 – Process Management (Part 1) Klara Nahrstedt Spring 2009.
Sandtids systemer 2.modul el. Henriks 1. forsøg m. Power Point.
Lecture Topics: 11/15 CPU scheduling: –Scheduling goals and algorithms.
For a good summary, visit:
CS Spring 2010 CS 414 – Multimedia Systems Design Lecture 32 – Multimedia OS Klara Nahrstedt Spring 2010.
Operating Systems Scheduling. Scheduling Short term scheduler (CPU Scheduler) –Whenever the CPU becomes idle, a process must be selected for execution.
Chapter 4 CPU Scheduling. 2 Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation.
Process Scheduling. Scheduling Strategies Scheduling strategies can broadly fall into two categories  Co-operative scheduling is where the currently.
Real-Time Operating Systems RTOS For Embedded systems.
CPU Scheduling Scheduling processes (or kernel-level threads) onto the cpu is one of the most important OS functions. The cpu is an expensive resource.
REAL-TIME OPERATING SYSTEMS
OPERATING SYSTEMS CS 3502 Fall 2017
Chapter 19: Real-Time Systems
EEE Embedded Systems Design Process in Operating Systems 서강대학교 전자공학과
Wayne Wolf Dept. of EE Princeton University
EEE 6494 Embedded Systems Design
Priority Scheduling Example
Chapter 8 – Processor Scheduling
Lecture 24: Process Scheduling Examples and for Real-time Systems
CPU Scheduling.
Chapter 6: CPU Scheduling
Chapter 6: CPU Scheduling
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
Chapter 5: CPU Scheduling
Realtime Scheduling Algorithms
OverView of Scheduling
Operating System Concepts
Real Time Scheduling Mrs. K.M. Sanghavi.
3: CPU Scheduling Basic Concepts Scheduling Criteria
Chapter 2: The Linux System Part 3
Chapter5: CPU Scheduling
TDC 311 Process Scheduling.
CSCI1600: Embedded and Real Time Software
Chapter 6: CPU Scheduling
CPU SCHEDULING.
Outline Scheduling algorithms Multi-processor scheduling
Process Scheduling Decide which process should run and for how long
EE 472 – Embedded Systems Dr. Shwetak Patel.
Chapter 19: Real-Time Systems
CSCI1600: Embedded and Real Time Software
Processes and operating systems
CS703 – Advanced Operating Systems
Chapter 10 Multiprocessor and Real-Time Scheduling
Scheduling.
Shortest-Job-First (SJR) Scheduling
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
CPU SCHEDULING CPU SCHEDULING.
Real-Time Process Scheduling Concepts, Design and Implementations
Chapter 6: CPU Scheduling
Real-Time Process Scheduling Concepts, Design and Implementations
Module 5: CPU Scheduling
CPU Scheduling CSE 2431: Introduction to Operating Systems
Presentation transcript:

Lecture 4 Schedulability and Tasks

Priority Two independent properties of actions are important in real time system: Urgency is the timeliness constraint of action. Importance is the value of computational action to the system. Scheduling systems do not commonly contain these abstractions. They provide a low level abstraction called priority. The priority of a task is used to resolve disputes over which tasks execute when more than one task is waiting and ready to execute. Do not get confused: Importance of a task is the value of the completion of the action relative to the overall system goals. The task’s priority has to do with which task “wins” when more than one is available to run. *High priority is represented by low or high numerical – OS dependent.

Example Monitoring device. There is a high bandwidth waveform data. An alarm must be reported within 10 sec. Waveform displays with more than 100ms delay would be unacceptable to user. It is not critical, but has tight timeliness with a hard deadline. Alarm handling is crucial for the system, but the user would not even notice half second delay in alarms. It is critical, but has broad timeliness with a soft deadline. Therefore, alarm handling will have lower priority to ensure that high bandwidth waveform data usually “wins” and its display is smooth. Task with hard deadline has higher priority than a task with a soft deadline.

Schedulability Timeliness of an action has to do with the action meeting its time constraints. The basic concept of timeliness in real-time systems is that action must begin in response to event arrival or due time arrival, and it must complete within a certain time after it begun. Schedulable task: task that can be determined whether it always meets its timeliness constraints. Deterministically schedulable task: as a special case, always guaranteed to meet all its deadlines. Event’s worse-case response time is less than task’s deadline.

Schedulability Scheduling analysis of hard real-time system is more straightforward, deterministic and predictable. Scheduling analysis of soft real-time system is more complicated, not always deterministic and not always predictable. Considering all deadlines to be hard is an approximation making the analysis easier but too strict. Assuming worst-case execution time, analysis may derive a conclusion that the system is not schedulable. But a soft-real system may still meet all its mission requirements.

Scheduling Determination of the policies that decide which tasks execute when multiple tasks are available. It is always a design concern!

Tasks states

Scheduling terms Preemptive – operating system may swap out tasks, Non-preemptive – the task must voluntarily to give up control. A task is blocked when it is ready to run but cannot because a lower-priority task owns a required resource. Blocking is unavoidable in preemptive scheduling in which resources are shared among tasks. However, the blocking must be bounded so that worst case blocking may be computed. Unbounded priority inversion – high priority tasks may be blocked from execution by an indefinite set of other tasks.

Unbounded priority inversion – example

Unbounded priority inversion – example Task A has the highest priority Every task by itself can be scheduled Look like even if task C locks the resource, task A will still meet its deadlines.

Unbounded priority inversion – example

Scheduling algorithms

Deadline Scheduling

Scheduling Algorithms Round Robin – the task with equal priority get equal time slot. Preemptive scheduling. Earliest deadline first – the task with the closest deadline gets to run. Least laxity (dynamic scheduling) – laxity is a time to deadline minus remaining execution time. Task are scheduled in ascending order of their laxity.

Final Project In the final project, each group must implement scheduler using either algorithm 2 or algorithm 3.