REAL TIME OPERATING SYSTEMS. Lesson-18:



Similar documents
Today. Intro to real-time scheduling Cyclic executives. Scheduling tables Frames Frame size constraints. Non-independent tasks Pros and cons

Lecture Outline Overview of real-time scheduling algorithms Outline relative strengths, weaknesses

REAL TIME OPERATING SYSTEMS. Lesson-10:

Real Time Scheduling Basic Concepts. Radek Pelánek

Resource Reservation & Resource Servers. Problems to solve

Aperiodic Task Scheduling

Common Approaches to Real-Time Scheduling

Predictable response times in event-driven real-time systems

Periodic Task Scheduling

Module 6. Embedded System Software. Version 2 EE IIT, Kharagpur 1

Lecture 3 Theoretical Foundations of RTOS

Real- Time Scheduling

3. Scheduling issues. Common approaches /1. Common approaches /2. Common approaches / /13 UniPD / T. Vardanega 23/01/2013. Real-Time Systems 1

Priority Inversion Problem and Deadlock Situations

Modeling and Simulation of Queuing Scheduling Disciplines on Packet Delivery for Next Generation Internet Streaming Applications

Real-Time Scheduling 1 / 39

ICS Principles of Operating Systems

OPERATING SYSTEMS SCHEDULING

Real-time Scheduling of Periodic Tasks (1) Advanced Operating Systems Lecture 2

Commonly Used Approaches to Real-Time Scheduling

Operating System: Scheduling

CPU Scheduling. Basic Concepts. Basic Concepts (2) Basic Concepts Scheduling Criteria Scheduling Algorithms Batch systems Interactive systems

Real-time Virtual NIC on KVM for Real-Time Network with OpenFlow

Time Management II. June 5, Copyright 2008, Jason Paul Kazarian. All rights reserved.

Deciding which process to run. (Deciding which thread to run) Deciding how long the chosen process can run

Performance Comparison of RTOS

Exercises : Real-time Scheduling analysis

Aperiodic Task Scheduling

174: Scheduling Systems. Emil Michta University of Zielona Gora, Zielona Gora, Poland 1 TIMING ANALYSIS IN NETWORKED MEASUREMENT CONTROL SYSTEMS

Announcements. Basic Concepts. Histogram of Typical CPU- Burst Times. Dispatcher. CPU Scheduler. Burst Cycle. Reading

Worst Case Analysis - Network Calculus

A Group based Time Quantum Round Robin Algorithm using Min-Max Spread Measure

Module 8. Industrial Embedded and Communication Systems. Version 2 EE IIT, Kharagpur 1

EVALUATION OF SCHEDULING ALGORITHMS USING VIDEO AND VOICE APPLICATIONS IN CLOUD COMPUTING

Scheduling Aperiodic and Sporadic Jobs in Priority- Driven Systems

International Journal of Computer Science Trends and Technology (IJCST) Volume 2 Issue 4, July-Aug 2014

CPU Scheduling. CPU Scheduling

Real-Time Scheduling (Part 1) (Working Draft) Real-Time System Example

The Design and Implementation of Real-Time Schedulers in RED-Linux

CPU SCHEDULING (CONT D) NESTED SCHEDULING FUNCTIONS

Process Scheduling CS 241. February 24, Copyright University of Illinois CS 241 Staff

Process Scheduling. Process Scheduler. Chapter 7. Context Switch. Scheduler. Selection Strategies

Real-Time Software. Basic Scheduling and Response-Time Analysis. René Rydhof Hansen. 21. september 2010

OS OBJECTIVE QUESTIONS

Methods and Tools For Embedded Distributed System Scheduling and Schedulability Analysis

Operating System Aspects. Real-Time Systems. Resource Management Tasks

CPU Scheduling 101. The CPU scheduler makes a sequence of moves that determines the interleaving of threads.

CHAPTER 4: SOFTWARE PART OF RTOS, THE SCHEDULER

Performance Analysis of Queuing Disciplines for Different Internet Service Protocols

A Survey of Fitting Device-Driver Implementations into Real-Time Theoretical Schedulability Analysis

CHAPTER 1 INTRODUCTION

Scheduling. Scheduling. Scheduling levels. Decision to switch the running process can take place under the following circumstances:

Final Project Report. Trading Platform Server

W4118 Operating Systems. Instructor: Junfeng Yang

Main Points. Scheduling policy: what to do next, when there are multiple threads ready to run. Definitions. Uniprocessor policies

4. Fixed-Priority Scheduling

AFDX networks. Computers and Real-Time Group, University of Cantabria

The network we see so far. Internet Best Effort Service. Is best-effort good enough? An Audio Example. Network Support for Playback

Comparison between scheduling algorithms in RTLinux and VxWorks

Operatin g Systems: Internals and Design Principle s. Chapter 10 Multiprocessor and Real-Time Scheduling Seventh Edition By William Stallings

Load Balancing Techniques

Real-Time Scheduling and Threads: Basics

List of courses MEngg (Computer Systems)

Thomas Fahrig Senior Developer Hypervisor Team. Hypervisor Architecture Terminology Goals Basics Details

MikroTik RouterOS Workshop Load Balancing Best Practice. Warsaw MUM Europe 2012

QoS in PAN-OS. Tech Note PAN-OS 4.1. Revision A 2011, Palo Alto Networks, Inc.

Routing in packet-switching networks

Operating Systems, 6 th ed. Test Bank Chapter 7

System Software and TinyAUTOSAR

Road Map. Scheduling. Types of Scheduling. Scheduling. CPU Scheduling. Job Scheduling. Dickinson College Computer Science 354 Spring 2010.

INTRODUCTION TO VOICE OVER IP

STANDPOINT FOR QUALITY-OF-SERVICE MEASUREMENT

Final Exam. Route Computation: One reason why link state routing is preferable to distance vector style routing.

Implementing and Using Execution Time Clocks in Ada Hard Real-Time Applications

Design and Implementation of an On-Chip timing based Permutation Network for Multiprocessor system on Chip

IMPROVED LOAD BALANCING MODEL BASED ON PARTITIONING IN CLOUD COMPUTING

Job Scheduling Model

Jorix kernel: real-time scheduling

Technical Properties. Mobile Operating Systems. Overview Concepts of Mobile. Functions Processes. Lecture 11. Memory Management.

/ Operating Systems I. Process Scheduling. Warren R. Carithers Rob Duncan

Scheduling. Yücel Saygın. These slides are based on your text book and on the slides prepared by Andrew S. Tanenbaum

CPU Scheduling. Core Definitions

Survey of software architectures: function-queue-scheduling architecture and real time OS

CS/ECE 438: Communication Networks. Internet QoS. Syed Faisal Hasan, PhD (Research Scholar Information Trust Institute) Visiting Lecturer ECE

Modeling and Performance Analysis of Telephony Gateway REgistration Protocol

VOICE OVER IP AND NETWORK CONVERGENCE

Chapter 12: Multiprocessor Architectures. Lesson 04: Interconnect Networks

CPU Scheduling Outline

The simple case: Cyclic execution

EECS 750: Advanced Operating Systems. 01/28 /2015 Heechul Yun

A STUDY OF TASK SCHEDULING IN MULTIPROCESSOR ENVIROMENT Ranjit Rajak 1, C.P.Katti 2, Nidhi Rajak 3

Policy Distribution Methods for Function Parallel Firewalls

Earliest Due Date (EDD) [Ferrari] Delay EDD. Jitter EDD

Transcription:

REAL TIME OPERATING SYSTEMS Lesson-18: Round Robin Time Slicing of tasks of equal priorities 1

1. Common scheduling models 2

Common scheduling models Cooperative Scheduling of ready tasks in a circular queue. It closely relates to function queue scheduling. Cooperative Scheduling with Precedence Constraints Cyclic scheduling of periodic tasks and Round Robin Time Slicing Scheduling of equal priority tasks Preemptive Scheduling Scheduling using 'Earliest Deadline First' (EDF) precedence. 3

Common scheduling models Rate Monotonic Scheduling using higher rate of events occurrence First precedence Fixed Times Scheduling Scheduling of Periodic, sporadic and aperiodic Tasks Advanced scheduling algorithms using the probabilistic Timed Petri nets (Stochastic) or Multi Thread Graph for the multiprocessors and complex distributed systems. 4

2. Round Robin Time Slice Scheduling of Equal Priority Tasks 5

Equal Priority Tasks Round robin means that each ready task runs turn by in turn only in a cyclic queue for a limited time slice. Widely used model in traditional OS. Round robin is a hybrid model of clock-driven model (for example cyclic model) as well as event driven (for example, preemptive) A real time system responds to the event within a bound time limit and within an explicit time. 6

Tasks programs contexts at the five instances in the Time Scheduling Scheduler for C1 to C5 7

Programming model for the Cooperative Time sliced scheduling of the tasks 8

Program counter assignments on the scheduler call to tasks at two consecutive time slices. Each cycle takes time = N t slice 9

Case : T cycle = N T slice Same for every task = T cycle T cycle ={T slice )} N + t ISR. t ISR is the sum of all execution times for the ISRs For an i-th task, switching time from one task to another be is st and task execution time be is et Number of tasks = N 10

Worst-case latency Same for every task in the ready list Tworst = {N (T slice )} + t ISR. t ISR is the sum of all execution times for the ISRs i = 1, 2,, N 1, N 11

VoIP Tasks Example Assume a VoIP [Voice Over IP.] router. It routes the packets to N destinations from N sources. It has N calls to route. Each of N tasks is allotted from a time slice and is cyclically executed for routing packet from a source to its destination 12

Round Robin Case 1: Then each task is executed once and finishes in one cycle itself. When a task finishes the execution before the maximum time it can takes, there is a waiting period in-between period between two cycles. The worst-case latency for any task is then N t slice. A task may periodically need execution. A task The period for the its need of required repeat execution of a task is an integral multiple of t slice. 13

Case 2: Alternative model strategy Case 2: Certain tasks are executed more than once and do not finish in one cycle Decomposition of a task that takes the abnormally long time to be executed. The decomposition is into two or four or more tasks. Then one set of tasks (or the odd numbered tasks) can run in one time slice, t'slice and the another set of tasks (or the even numbered tasks) in another time slice, t''slice. 14

Decomposition of the long time taking task into a number of sequential states Decomposition of the long time taking task into a number of sequential states or a number of node-places and transitions as in finite state machine. (FSM). Then its one of its states or transitions runs in the first cycle, the next state in the second cycle and so on. This task then reduces the response times of the remaining tasks that are executed after a state change. 15

Summary 16

We learnt Round robin time slice scheduling is for handling tasks with each task for a fixed time slice Longer tasks can be decomposed into more tasks to allocate more time slices to that 17

End of Lesson 18 of Chapter 8 18