6.1 Motivation. Fixed Priorities. 6.2 Context Switch. Real-time is about predictability, i.e. guarantees. Real-Time Systems
|
|
- Bartholomew Hardy
- 6 years ago
- Views:
Transcription
1 Real-Time Systems Summer term Motivation 6.1 Motivation Real-Time Systems 6 th Chapter Practical Considerations Jafar Akhundov, M.Sc. Professur Betriebssysteme Real-time is about predictability, i.e. guarantees The stated guarantees, and the reasoning, respectively, rely on assumptions, such as... Standard assumptions Periodic task model Known runtime... Considering actual implementations, assumptions are not always realistic Thus, we discuss some practical issues SoSe 2017 J. Akhundov 2 / 24 osg.informatik.tu-chemnitz.de Standard assumption: Jobs are preemptive at any time and at no cost no realistic assumption, depending on operating system Ramifications 1. Avoid unnecessary context switch Out of two jobs with the same priority, select always the job that introduces less context switches, even if the theory states that it doesn t matter. 2. Safety margin, e.g. U 1 3. Expand theory to consider context-switch times Fixed Priorities Be t CX the context-switch times, i.e. the (worst-case) amount of time the operating system spends per context switch Consider first fixed-priority policies without self-suspension or dependencies (blocking) Each job preempts at most one other job This introduces two context switches: start and completion of the job that preempts The job with the lowest priority introduces two context switches, too (from/to idle) Approach: adaption of the job execution times i, e i = e i + 2t CX SoSe 2017 J. Akhundov 3 / 24 osg.informatik.tu-chemnitz.de SoSe 2017 J. Akhundov 4 / 24 osg.informatik.tu-chemnitz.de
2 Impact of Resource Protocols Dependencies between jobs may change the number of context switches NPCS: no additional context switch HLP: no additional context switch PIP: Two additional context switches for each resource a job shares with other low-priority jobs PCP: two additional context switches for any job that accesses at least one resource Please note The cases discussed here are worst cases. E.g., it is possible that NPCS avoids some context switches. EDF Since we have dynamic priorities, it is harder to predict the number of context switches However, a job J 2 can only preempt a job J 1, if the deadline of J 1 is later that J 2 ones, and J 1 is running at arrival of J 2 P 2 < P 1 Thus, EDF introduces context switches only in cases, that belong to worst cases of RMS EDF will never introduce more context switches than RMS in worst case By using the same assumptions as for RMS, one gets conservative results (with overestimation of context-switch times) SoSe 2017 J. Akhundov 5 / 24 osg.informatik.tu-chemnitz.de EDF (cont.) RMS vs. EDF: number of context switches [But05] SoSe 2017 J. Akhundov 6 / 24 osg.informatik.tu-chemnitz.de Real-time systems are embedded systems; they interact with environment I/O has to be considered Two fundamental approaches: 1. Polling: (sensor) values are read on regular basis 2. Event-driven: an interrupt is raised, if an external event occurs Driver polling can be implemented as normal periodic task Communication with hardware may be required to be atomic consider blocking times Event-based IO (interrupts) is a bit more elaborate SoSe 2017 J. Akhundov 7 / 24 osg.informatik.tu-chemnitz.de SoSe 2017 J. Akhundov 8 / 24 osg.informatik.tu-chemnitz.de
3 Interrupts Interrupts preempt immediately invalidates priority assumption Servicing interrupts (ISR, interrupt service routine) requires usually very little time negligible However, what if not so? Consider ISR as blocking time In case of priority-based scheduling: consider ISR as job with highest priority (e.g., to apply TDA) Optionally, divide ISR into two parts: 1. Real ISR: acknowledge interrupt, activate part 2 as job 2. Job: longer work is done here Result: generation of sporadic/aperiodic Jobs Sporadic/Aperiodic Jobs Recap: Jobs of aperiodic tasks have a minimal inter-arrival time; no assumptions are made for sporadic tasks For sporadic jobs, no guarantees can be given two alternatives: Give up guarantees allow for missed deadlines, or reject jobs Low-pass filter for events (i.e. higher arrival rate = lower inter-arrival times will be ignored) change sporadic tasks into aperiodic tasks Low-pass filtering may be realized by means of hardware (e.g. debouncing of switches by capacitors), or by disabling of interrupts SoSe 2017 J. Akhundov 9 / 24 osg.informatik.tu-chemnitz.de Scheduling of Aperiodic Jobs Worst case: tasks generates jobs with highest possible frequency periodic task Feasible, if periodic case is feasible Sometimes, aperiodic jobs have no deadline, but should run as soon as possible Increases feasibility Different approaches: Simple approach: use of idle times only may lead to larger delay Slack-time stealing: (maximum) delay of jobs requires knowledge of execution times Server for aperiodic jobs: schedule of a periodic task, that is replenished by aperiodic/sporadic jobs SoSe 2017 J. Akhundov 11 / 24 osg.informatik.tu-chemnitz.de SoSe 2017 J. Akhundov 10 / 24 osg.informatik.tu-chemnitz.de Some scheduling algorithms and feasibility criteria are based on known execution time of tasks Measurement is not sufficient provide one (or several) result(s), but not the highest Instead: We need estimation of worst case execution time, (WCET) Objectives: Prediction should never be lower than measurement Overestimation should be as low as possible WCES depends on: Program code, compiler, libraries Path through the program, which in turn depends on state and input Hardware used: CPU, memory, cache, busses,... Interdependencies among those parameters SoSe 2017 J. Akhundov 12 / 24 osg.informatik.tu-chemnitz.de
4 Problem High-level Analysis We distinguish two generic problems: What is the longest path through a program? high-level analysis How to calculate the longest possible execution time for a given path through a program? low-level analysis Given: source code of a program Assumption: runtime of single statements is known Problem: What is the (maximum) time to execute that code longest path It is not trivial to identify the longest path Even more: impossible in general case! Consider following problems SoSe 2017 J. Akhundov 13 / 24 osg.informatik.tu-chemnitz.de Problem: Loops SoSe 2017 J. Akhundov 14 / 24 osg.informatik.tu-chemnitz.de Problem: Termination Example: Calculate WCET of the following program 1 int i=0,k=0; 2 int j = readsensor(); 3 while(i<j) 4 { 5 k+=sensorfunction(i); 6 i++; 7 } Problem: How often is this loop executed? Solution: Define bounds Example: Calculate WCET of the following program 1 int i=0,k=0; 2 int j = readsensor(); 3 while(i<j) 4 { 5 k+=sensorfunction(i); 6 i++; 7 } Problem: Does this loop terminate at all? Solution: As the halting problem is not decidable in general, we have to ensure total correctness e.g. HOARE logic SoSe 2017 J. Akhundov 15 / 24 osg.informatik.tu-chemnitz.de SoSe 2017 J. Akhundov 16 / 24 osg.informatik.tu-chemnitz.de
5 Assumptions for High-level Analysis Concept Special assumptions make the problem decidable:: For each loop, maximum number of iterations is known No recursion (or only recursion with restricted depth) No dynamic data structures (or only dynamic data structures with bounded resource usage) Implication: Restriction of allowed program constructs in hard RT-programs Support by programming language is possible Basic Block Block of machine instructions with exactly one entry point and exactly one exit point and no branches Analysis tool constructs control flow graph consisting of basic blocks Calculating WCET of all basic blocks using low-level analysis Calculation of the longest path ( graph theory) SoSe 2017 J. Akhundov 17 / 24 osg.informatik.tu-chemnitz.de Timing Scheme SoSe 2017 J. Akhundov 18 / 24 osg.informatik.tu-chemnitz.de Optimization: Data Dependency WCET on base of longest path analysis tends to overestimate W (X) = W CET (X) if X is basic block W (X; Y ) = W (X) + W (Y ) W (if Z then X else Y ) = W (Z) + max {W (X), W (Y )} W (for Z loop X) = (n + 1) W (Z) + n W (X) Loop iterations are restricted by n Execution time W CET (X) of basic blocks is given by low-level analysis Recursive calculation for each part of the syntax tree Application to program gives theoretical WCET Feasibility is not considered optimization Consider following code 1 if ( a>b) { 2 c = 2*a; /* BLOCK A */ 3... /* : */ 4 } else { 5 c++; /* BLOCK B */ 6... /* : */ 7 } 8 if ( ( c%2)==0 ) { 9... /* BLOCK C */ 10 } else { /* BLOCK D */ 12 } Path A D is not feasible! Such data dependencies can sometimes be traced by approaches as used for compiler; however not in general SoSe 2017 J. Akhundov 19 / 24 osg.informatik.tu-chemnitz.de SoSe 2017 J. Akhundov 20 / 24 osg.informatik.tu-chemnitz.de
6 Low-level Analysis Manufacturers usually describe timing behavior of all instructions For hard real-time, this information is essential Such times can be used to calculate WCET By means of fine-granular models and tool support, one can get complexity under control Example: Modeling of PowerPC Problem: Simple worst case assumptions are not sufficient Worst case of cache: Always cache miss Pipeline flush after each instruction Would result in WCET that over-estimates by several 100% Solution: Include the effects of modern processor enhancements into analysis New problem: complexity 1 Markus Mergner. Evaluation von pwcet.. Diplomarbeit. Humboldt University of Berlin, 2006 SoSe 2017 J. Akhundov 21 / 24 osg.informatik.tu-chemnitz.de 6.5 What Else? 6.5 What Else? SoSe 2017 J. Akhundov 22 / 24 osg.informatik.tu-chemnitz.de Appendix A: Bibliography Appendix A: Bibliography There are further implementation aspects to be considered, e.g.: Tick scheduling, i.e., scheduling at discrete times invalidates preemption assumption mapping to blocking times; possibly scheduler as periodic task Multicore processors invalidates single processor assumption subject of research (chapter of this course, if we have sufficient time) Different timing requirements/task models a.o., see chapter on soft real time [But05] Giorgio C. Buttazzo. Rate Monotonic vs. EDF: Judgment Day. In: Real-Time Systems 29.1 (2005), pp [Liu00] Jane W. S. Liu. Real-Time Systems. Prentice Hall, 2000, Section 6.8 [Kop97] [PK89] Hermann Kopetz. Real-Time Systems Design Principles for Distributed Embedded Applications. Kluver Academic, 1997, Section 4.5 P. Puschner and Ch. Koza. Calculating the maximum, execution time of real-time programs. In: Real-Time Systems 1.2 (Sept. 1989), pp SoSe 2017 J. Akhundov 23 / 24 osg.informatik.tu-chemnitz.de SoSe 2017 J. Akhundov 24 / 24 osg.informatik.tu-chemnitz.de
Overview of Scheduling a Mix of Periodic and Aperiodic Tasks
Overview of Scheduling a Mix of Periodic and Aperiodic Tasks Minsoo Ryu Department of Computer Science and Engineering 2 Naive approach Background scheduling Algorithms Under static priority policy (RM)
More informationEvent-Driven Scheduling. (closely following Jane Liu s Book)
Event-Driven Scheduling (closely following Jane Liu s Book) Real-Time Systems, 2006 Event-Driven Systems, 1 Principles Assign priorities to Jobs At events, jobs are scheduled according to their priorities
More informationReal-time operating systems and scheduling
Real-time operating systems and scheduling Problem 21 Consider a real-time operating system (OS) that has a built-in preemptive scheduler. Each task has a unique priority and the lower the priority id,
More informationCS4514 Real Time Scheduling
CS4514 Real Time Scheduling Jose M. Garrido Fall 2015 Department of Computer Science 1 Periodic Tasks Typical real-time application has many tasks that need to be executed periodically Reading sensor data
More informationDesign and Analysis of Time-Critical Systems Introduction
Design and Analysis of Time-Critical Systems Introduction Jan Reineke @ saarland university ACACES Summer School 2017 Fiuggi, Italy computer science Structure of this Course 2. How are they implemented?
More informationConcurrent activities in daily life. Real world exposed programs. Scheduling of programs. Tasks in engine system. Engine system
Real world exposed programs Programs written to interact with the real world, outside the computer Programs handle input and output of data in pace matching the real world processes Necessitates ability
More informationIntroduction to Real-Time Systems ECE 397-1
Introduction to Real-Time Systems ECE 97-1 Northwestern University Department of Computer Science Department of Electrical and Computer Engineering Teachers: Robert Dick Peter Dinda Office: L477 Tech 8,
More informationMultimedia Systems 2011/2012
Multimedia Systems 2011/2012 System Architecture Prof. Dr. Paul Müller University of Kaiserslautern Department of Computer Science Integrated Communication Systems ICSY http://www.icsy.de Sitemap 2 Hardware
More informationReal-Time Scheduling. Dynamic Priority Servers
Real-Time Scheduling Dynamic Priority Servers Objectives Schedule soft aperiodic and hard periodic tasks Reduce average response time of aperiodic requests without compromising schedulability of periodic
More informationHomework index. Processing resource description. Goals for lecture. Communication resource description. Graph extensions. Problem definition
Introduction to Real-Time Systems ECE 97-1 Homework index 1 Reading assignment.............. 4 Northwestern University Department of Computer Science Department of Electrical and Computer Engineering Teachers:
More informationCopyright Notice. COMP9242 Advanced Operating Systems S2/2014 Week 9: Real-Time Systems. Real-Time System: Definition
Copyright Notice These slides are distributed under the Creative Commons Attribution.0 License COMP94 Advanced Operating Systems S/014 Week 9: Real- Systems @GernotHeiser You are free: to share to copy,
More informationIntroduction to Real-time Systems. Advanced Operating Systems (M) Lecture 2
Introduction to Real-time Systems Advanced Operating Systems (M) Lecture 2 Introduction to Real-time Systems Real-time systems deliver services while meeting some timing constraints Not necessarily fast,
More informationOverview. Sporadic tasks. Recall. Aperiodic tasks. Real-time Systems D0003E 2/26/2009. Loosening D = T. Aperiodic tasks. Response-time analysis
Overview Real-time Systems D0003E Lecture 11: Priority inversion Burns/Wellings ch. 13 (except 13.12) Aperiodic tasks Response time analysis Blocking Priority inversion Priority inheritance Priority ceiling
More informationExam Review TexPoint fonts used in EMF.
Exam Review Generics Definitions: hard & soft real-time Task/message classification based on criticality and invocation behavior Why special performance measures for RTES? What s deadline and where is
More informationIntroduction to Embedded Systems
Introduction to Embedded Systems Sanjit A. Seshia UC Berkeley EECS 9/9A Fall 0 008-0: E. A. Lee, A. L. Sangiovanni-Vincentelli, S. A. Seshia. All rights reserved. Chapter : Operating Systems, Microkernels,
More informationLecture 12: An Overview of Scheduling Theory
Lecture 12: An Overview of Scheduling Theory [RTCS Ch 8] Introduction Execution Time Estimation Basic Scheduling Approaches Static Cyclic Scheduling Fixed Priority Scheduling Rate Monotonic Analysis Earliest
More information1.1 Explain the difference between fast computing and real-time computing.
i 1.1 Explain the difference between fast computing and real-time computing. 1.2 What are the main limitations of the current real-time kernels for the development of critical control applications? 1.3
More informationAnalyzing Real-Time Systems
Analyzing Real-Time Systems Reference: Burns and Wellings, Real-Time Systems and Programming Languages 17-654/17-754: Analysis of Software Artifacts Jonathan Aldrich Real-Time Systems Definition Any system
More informationReal Time Operating Systems and Middleware
Real Time Operating Systems and Middleware Introduction to Real-Time Systems Luca Abeni abeni@disi.unitn.it Credits: Luigi Palopoli, Giuseppe Lipari, Marco Di Natale, and Giorgio Buttazzo Scuola Superiore
More informationReference Model and Scheduling Policies for Real-Time Systems
ESG Seminar p.1/42 Reference Model and Scheduling Policies for Real-Time Systems Mayank Agarwal and Ankit Mathur Dept. of Computer Science and Engineering, Indian Institute of Technology Delhi ESG Seminar
More informationAperiodic Servers (Issues)
Aperiodic Servers (Issues) Interference Causes more interference than simple periodic tasks Increased context switching Cache interference Accounting Context switch time Again, possibly more context switches
More informationReservation-Based Scheduling for IRQ Threads
Reservation-Based Scheduling for IRQ Threads Luca Abeni, Nicola Manica, Luigi Palopoli luca.abeni@unitn.it, nicola.manica@gmail.com, palopoli@dit.unitn.it University of Trento, Trento - Italy Reservation-Based
More information2. Introduction to Software for Embedded Systems
2. Introduction to Software for Embedded Systems Lothar Thiele ETH Zurich, Switzerland 2-1 Contents of Lectures (Lothar Thiele) 1. Introduction to Embedded System Design 2. Software for Embedded Systems
More informationOPERATING SYSTEMS CS3502 Spring Processor Scheduling. Chapter 5
OPERATING SYSTEMS CS3502 Spring 2018 Processor Scheduling Chapter 5 Goals of Processor Scheduling Scheduling is the sharing of the CPU among the processes in the ready queue The critical activities are:
More information4/6/2011. Informally, scheduling is. Informally, scheduling is. More precisely, Periodic and Aperiodic. Periodic Task. Periodic Task (Contd.
So far in CS4271 Functionality analysis Modeling, Model Checking Timing Analysis Software level WCET analysis System level Scheduling methods Today! erformance Validation Systems CS 4271 Lecture 10 Abhik
More informationVerification of Real-Time Systems Resource Sharing
Verification of Real-Time Systems Resource Sharing Jan Reineke Advanced Lecture, Summer 2015 Resource Sharing So far, we have assumed sets of independent tasks. However, tasks may share resources to communicate
More informationSimplified design flow for embedded systems
Simplified design flow for embedded systems 2005/12/02-1- Reuse of standard software components Knowledge from previous designs to be made available in the form of intellectual property (IP, for SW & HW).
More informationMicrokernel/OS and Real-Time Scheduling
Chapter 12 Microkernel/OS and Real-Time Scheduling Hongwei Zhang http://www.cs.wayne.edu/~hzhang/ Ack.: this lecture is prepared in part based on slides of Lee, Sangiovanni-Vincentelli, Seshia. Outline
More informationSchedulability with resource sharing. Priority inheritance protocol Priority ceiling protocol Stack resource policy
Schedulability with resource sharing Priority inheritance protocol Priority ceiling protocol Stack resource policy 1 Lecture overview We have discussed the occurrence of unbounded priority inversion We
More informationSporadic Server Scheduling in Linux Theory vs. Practice. Mark Stanovich Theodore Baker Andy Wang
Sporadic Server Scheduling in Linux Theory vs. Practice Mark Stanovich Theodore Baker Andy Wang Real-Time Scheduling Theory Analysis techniques to design a system to meet timing constraints Schedulability
More informationEmbedded Systems: OS. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University
Embedded Systems: OS Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Standalone Applications Often no OS involved One large loop Microcontroller-based
More informationPrecedence Graphs Revisited (Again)
Precedence Graphs Revisited (Again) [i,i+6) [i+6,i+12) T 2 [i,i+6) [i+6,i+12) T 3 [i,i+2) [i+2,i+4) [i+4,i+6) [i+6,i+8) T 4 [i,i+1) [i+1,i+2) [i+2,i+3) [i+3,i+4) [i+4,i+5) [i+5,i+6) [i+6,i+7) T 5 [i,i+1)
More informationTitolo presentazione. Scheduling. sottotitolo A.Y Milano, XX mese 20XX ACSO Tutoring MSc Eng. Michele Zanella
Titolo presentazione Scheduling sottotitolo A.Y. 2017-18 Milano, XX mese 20XX ACSO Tutoring MSc Eng. Michele Zanella Process Scheduling Goals: Multiprogramming: having some process running at all times,
More informationPartitioned Fixed-Priority Scheduling of Parallel Tasks Without Preemptions
Partitioned Fixed-Priority Scheduling of Parallel Tasks Without Preemptions *, Alessandro Biondi *, Geoffrey Nelissen, and Giorgio Buttazzo * * ReTiS Lab, Scuola Superiore Sant Anna, Pisa, Italy CISTER,
More informationPROCESS SCHEDULING II. CS124 Operating Systems Fall , Lecture 13
PROCESS SCHEDULING II CS124 Operating Systems Fall 2017-2018, Lecture 13 2 Real-Time Systems Increasingly common to have systems with real-time scheduling requirements Real-time systems are driven by specific
More informationWhat s an Operating System? Real-Time Operating Systems. Cyclic Executive. Do I Need One? Handling an Interrupt. Interrupts
What s an Operating System? Real-Time Operating Systems Provides environment for executing programs Prof. Stephen A. Edwards Process abstraction for multitasking/concurrency Scheduling Hardware abstraction
More informationLearning Outcomes. Scheduling. Is scheduling important? What is Scheduling? Application Behaviour. Is scheduling important?
Learning Outcomes Scheduling Understand the role of the scheduler, and how its behaviour influences the performance of the system. Know the difference between I/O-bound and CPU-bound tasks, and how they
More informationEmbedded Systems: OS
Embedded Systems: OS Jinkyu Jeong (Jinkyu@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu ICE3028: Embedded Systems Design, Fall 2018, Jinkyu Jeong (jinkyu@skku.edu) Standalone
More informationWhat s An OS? Cyclic Executive. Interrupts. Advantages Simple implementation Low overhead Very predictable
What s An OS? Provides environment for executing programs Process abstraction for multitasking/concurrency scheduling Hardware abstraction layer (device drivers) File systems Communication Do we need an
More informationScheduling Algorithm and Analysis
Scheduling Algorithm and Analysis Model and Cyclic Scheduling (Module 27) Yann-Hang Lee Arizona State University yhlee@asu.edu (480) 727-7507 Summer 2014 Task Scheduling Schedule: to determine which task
More informationCEC 450 Real-Time Systems
CEC 450 Real-Time Systems Lecture 7 Review October 9, 2017 Sam Siewert Coming Next Finish Up with Recount of Mars Pathfinder and Unbounded Priority Inversion Mike Jone s Page (Microsoft) Glenn Reeves on
More informationConstructing and Verifying Cyber Physical Systems
Constructing and Verifying Cyber Physical Systems Mixed Criticality Scheduling and Real-Time Operating Systems Marcus Völp Overview Introduction Mathematical Foundations (Differential Equations and Laplace
More informationImplementing Scheduling Algorithms. Real-Time and Embedded Systems (M) Lecture 9
Implementing Scheduling Algorithms Real-Time and Embedded Systems (M) Lecture 9 Lecture Outline Implementing real time systems Key concepts and constraints System architectures: Cyclic executive Microkernel
More informationReal-Time Architectures 2004/2005
Real-Time Architectures 2004/2005 Scheduling Analysis I Introduction & Basic scheduling analysis Reinder J. Bril 08-04-2005 1 Overview Algorithm and problem classes Simple, periodic taskset problem statement
More informationTime Triggered and Event Triggered; Off-line Scheduling
Time Triggered and Event Triggered; Off-line Scheduling Real-Time Architectures -TUe Gerhard Fohler 2004 Mälardalen University, Sweden gerhard.fohler@mdh.se Real-time: TT and ET Gerhard Fohler 2004 1 Activation
More informationAperiodic Task Scheduling
Aperiodic Task Scheduling Radek Pelánek Preemptive Scheduling: The Problem 1 processor arbitrary arrival times of tasks preemption performance measure: maximum lateness no resources, no precedence constraints
More informationDistributed Operating Systems. Real-Time Systems
2 Distributed Operating Systems Real-Time Systems Steve Goddard goddard@cse.unl.edu http://www.cse.unl.edu/~goddard/courses/csce855 1 Real-Time Systems Conventional programming model» Independent processes
More informationFROM TIME-TRIGGERED TO TIME-DETERMINISTIC REAL-TIME SYSTEMS
FROM TIME-TRIGGERED TO TIME-DETERMINISTIC REAL-TIME SYSTEMS Peter Puschner and Raimund Kirner Vienna University of Technology, A-1040 Vienna, Austria {peter, raimund}@vmars.tuwien.ac.at Abstract Keywords:
More informationMultimedia-Systems. Operating Systems. Prof. Dr.-Ing. Ralf Steinmetz Prof. Dr. rer. nat. Max Mühlhäuser Prof. Dr.-Ing. Wolfgang Effelsberg
Multimedia-Systems Operating Systems Prof. Dr.-Ing. Ralf Steinmetz Prof. Dr. rer. nat. Max Mühlhäuser Prof. Dr.-Ing. Wolfgang Effelsberg WE: University of Mannheim, Dept. of Computer Science Praktische
More informationScheduling Algorithms for Real-Time Systems
Scheduling Algorithms for Real-Time Systems Fredrik Lindh Master Program in Computer Engineering Mälardalens University, Sweden flh07001@student.mdh.se Thomas Otnes Jessica Wennerström Master Program in
More informationrequests or displaying activities, hence they usually have soft deadlines, or no deadlines at all. Aperiodic tasks with hard deadlines are called spor
Scheduling Aperiodic Tasks in Dynamic Priority Systems Marco Spuri and Giorgio Buttazzo Scuola Superiore S.Anna, via Carducci 4, 561 Pisa, Italy Email: spuri@fastnet.it, giorgio@sssup.it Abstract In this
More informationFault tolerant scheduling in real time systems
tolerant scheduling in real time systems Afrin Shafiuddin Department of Electrical and Computer Engineering University of Wisconsin-Madison shafiuddin@wisc.edu Swetha Srinivasan Department of Electrical
More informationAn application-based EDF scheduler for OSEK/VDX
An application-based EDF scheduler for OSEK/VDX Claas Diederichs INCHRON GmbH 14482 Potsdam, Germany claas.diederichs@inchron.de Ulrich Margull 1 mal 1 Software GmbH 90762 Fürth, Germany margull@1mal1.com
More informationProcesses (Tasks) and operating systems. Why multiple processes? Example: engine control
Processes (Tasks) and operating systems Motivation for processes. The process abstraction. Context switching. Multitasking. Processes and UML. Operating systems Why multiple processes? Processes help us
More informationDesign and Analysis of Real-Time Systems Predictability and Predictable Microarchitectures
Design and Analysis of Real-Time Systems Predictability and Predictable Microarcectures Jan Reineke Advanced Lecture, Summer 2013 Notion of Predictability Oxford Dictionary: predictable = adjective, able
More informationOperating system concepts. Task scheduling
Operating system concepts Task scheduling Task scheduling (thread scheduling) Target of scheduling are ready tasks ACTIVE TASK BLOCKED TASKS PASSIVE TASKS READY TASKS Active task currently running on processor
More informationOverhead-Aware Compositional Analysis of Real-Time Systems
Overhead-Aware Compositional Analysis of Real-Time Systems Linh T.X. Phan Meng Xu Jaewoo Lee Insup Lee Oleg Sokolsky Department of Computer and Information Sciences, University of Pennsylvania Email: {linhphan,mengxu,jaewoo,lee,sokolsky}@cis.upenn.edu
More informationEmbedded Software Programming
Embedded Software Programming Computer Science & Engineering Department Arizona State University Tempe, AZ 85287 Dr. Yann-Hang Lee yhlee@asu.edu (480) 727-7507 Event and Time-Driven Threads taskspawn (name,
More informationOverhead-Aware Compositional Analysis of Real- Time Systems
University of Pennsylvania ScholarlyCommons Departmental Papers (CIS) Department of Computer & Information Science 4-203 Overhead-Aware Compositional Analysis of Real- Time Systems Linh T.X. Phan University
More informationHigh level scheduling: Medium level scheduling: Low level scheduling. Scheduling 0 : Levels
Scheduling 0 : Levels High level scheduling: Deciding whether another process can run is process table full? user process limit reached? load to swap space or memory? Medium level scheduling: Balancing
More informationOVERHEADS ENHANCEMENT IN MUTIPLE PROCESSING SYSTEMS BY ANURAG REDDY GANKAT KARTHIK REDDY AKKATI
CMPE 655- MULTIPLE PROCESSOR SYSTEMS OVERHEADS ENHANCEMENT IN MUTIPLE PROCESSING SYSTEMS BY ANURAG REDDY GANKAT KARTHIK REDDY AKKATI What is MULTI PROCESSING?? Multiprocessing is the coordinated processing
More informationCaches in Real-Time Systems. Instruction Cache vs. Data Cache
Caches in Real-Time Systems [Xavier Vera, Bjorn Lisper, Jingling Xue, Data Caches in Multitasking Hard Real- Time Systems, RTSS 2003.] Schedulability Analysis WCET Simple Platforms WCMP (memory performance)
More informationLecture 3. Introduction to Real-Time kernels. Real-Time Systems
Real-Time Systems Lecture 3 Introduction to Real-Time kernels Task States Generic architecture of Real-Time kernels Typical structures and functions of Real-Time kernels Last lecture (2) Computational
More informationIntroduction to Embedded Systems
Introduction to Embedded Systems Edward A. Lee & Sanjit Seshia UC Berkeley EECS Spring 008 Copyright 008, Edward A. Lee & Sanjit Seshia, All rights reserved Lecture 0: Scheduling Anomalies Source This
More informationTask Based Programming Revisited Real Time Operating Systems
ECE3411 Fall 2016 Lecture 6a. Task Based Programming Revisited Real Time Operating Systems Marten van Dijk, Syed Kamran Haider Department of Electrical & Computer Engineering University of Connecticut
More informationIN4343 Real-Time Systems
IN4343 Real-Time Systems Koen Langendoen, TA (TBD) 2017-2018 Delft University of Technology Challenge the future Course outline Real-time systems Lectures theory instruction Exam Reinder Bril TU/e Practicum
More informationcfl 2001 Thomas Hedemand Nielsen and Jens Christian Schwarzer This document was created with the L A T
Master's thesis Analysable Hard Real-Time Systems Thomas Hedemand Nielsen Jens Christian Schwarzer September 3, 2001 Informatics and Mathematical Modelling Technical University of Denmark cfl 2001 Thomas
More informationCS370: System Architecture & Software [Fall 2014] Dept. Of Computer Science, Colorado State University
Frequently asked questions from the previous class survey CS 370: SYSTEM ARCHITECTURE & SOFTWARE [CPU SCHEDULING] Shrideep Pallickara Computer Science Colorado State University OpenMP compiler directives
More informationPractice Exercises 305
Practice Exercises 305 The FCFS algorithm is nonpreemptive; the RR algorithm is preemptive. The SJF and priority algorithms may be either preemptive or nonpreemptive. Multilevel queue algorithms allow
More informationAutomatic Selection of Feasibility Tests With the Use of AADL Design Patterns
Automatic Selection of Feasibility Tests With the Use of AADL Design Patterns V. Gaudel, F. Singhoff, A. Plantec, S. Rubini P. Dissaux*, J. Legrand* University of Brest/UBO, LISyC, France *Ellidiss Technologies,
More informationPROCESS SCHEDULING Operating Systems Design Euiseong Seo
PROCESS SCHEDULING 2017 Operating Systems Design Euiseong Seo (euiseong@skku.edu) Histogram of CPU Burst Cycles Alternating Sequence of CPU and IO Processor Scheduling Selects from among the processes
More informationDynamic Voltage Scaling of Periodic and Aperiodic Tasks in Priority-Driven Systems Λ
Dynamic Voltage Scaling of Periodic and Aperiodic Tasks in Priority-Driven Systems Λ Dongkun Shin Jihong Kim School of CSE School of CSE Seoul National University Seoul National University Seoul, Korea
More informationEnriching Enea OSE for Better Predictability Support
Enriching Enea OSE for Better Predictability Support Master of Science Thesis Naveed Ul Mustafa naveedum@kth.se Stockholm, August 2011 Examiner: Ingo Sander KTH ingo@kth.se Supervisor: Mehrdad Saadatmand
More informationReal-Time and Concurrent Programming Lecture 6 (F6): Scheduling and bounded response times
http://cs.lth.se/eda040 Real-Time and Concurrent Programming Lecture 6 (F6): Scheduling and bounded response times Klas Nilsson 2015-10-06 http://cs.lth.se/eda040 F6: Scheduling and bounded response times
More informationA Fuzzy-based Multi-criteria Scheduler for Uniform Multiprocessor Real-time Systems
10th International Conference on Information Technology A Fuzzy-based Multi-criteria Scheduler for Uniform Multiprocessor Real-time Systems Vahid Salmani Engineering, Ferdowsi University of salmani@um.ac.ir
More informationMASTER'S THESIS. Proportional and Sporadic Scheduling in Real-Time Operating Systems. Mikael Bertlin. Luleå University of Technology
MASTER'S THESIS 2008:061 CIV Proportional and Sporadic Scheduling in Real-Time Operating Systems Mikael Bertlin Luleå University of Technology MSc Programmes in Engineering Computer Science and Engineering
More informationBack to RTOS. CSE466 Autumn 00-1
Back to RTOS Scheduling Deadline Laxity Rate Monotonic Shared Code in Multiprocessing Share Resources: Deadlock avoidance Process Synchronization and Communication Memory Management CSE466 Autumn 00-1
More informationResource-bound process algebras for Schedulability and Performance Analysis of Real-Time and Embedded Systems
Resource-bound process algebras for Schedulability and Performance Analysis of Real-Time and Embedded Systems Insup Lee 1, Oleg Sokolsky 1, Anna Philippou 2 1 RTG (Real-Time Systems Group) Department of
More informationSubject Name: OPERATING SYSTEMS. Subject Code: 10EC65. Prepared By: Kala H S and Remya R. Department: ECE. Date:
Subject Name: OPERATING SYSTEMS Subject Code: 10EC65 Prepared By: Kala H S and Remya R Department: ECE Date: Unit 7 SCHEDULING TOPICS TO BE COVERED Preliminaries Non-preemptive scheduling policies Preemptive
More informationUsing Fixed Priority Pre-emptive Scheduling in Real-Time Systems
Int. J. of Computers, Communications & Control, ISSN 1841-9836, E-ISSN 1841-9844 Vol. VI (2011), No. 1 (March), pp. 187-195 Using Fixed Priority Pre-emptive Scheduling in Real-Time Systems D. Zmaranda,
More informationA Synchronous IPC Protocol for Predictable Access to Shared Resources in Mixed-Criticality Systems
A Synchronous IPC Protocol for Predictable Access to Shared Resources in Mixed-Criticality Systems RTSS 14 December 4, 2014 Björn B. bbb@mpi-sws.org Linux Testbed for Multiprocessor Scheduling in Real-Time
More informationCEC 450 Real-Time Systems
CEC 450 Real-Time Systems Lecture 2 Introduction Part 1 August 31, 2015 Sam Siewert So Why SW for HRT Systems? ASIC and FPGA State-Machine Solutions Offer Hardware Clocked Deterministic Solutions FPGAs
More informationComparison of scheduling in RTLinux and QNX. Andreas Lindqvist, Tommy Persson,
Comparison of scheduling in RTLinux and QNX Andreas Lindqvist, andli299@student.liu.se Tommy Persson, tompe015@student.liu.se 19 November 2006 Abstract The purpose of this report was to learn more about
More informationDepartment of Computer Science Institute for System Architecture, Operating Systems Group REAL-TIME MICHAEL ROITZSCH OVERVIEW
Department of Computer Science Institute for System Architecture, Operating Systems Group REAL-TIME MICHAEL ROITZSCH OVERVIEW 2 SO FAR talked about in-kernel building blocks: threads memory IPC drivers
More informationCPU Scheduling. Daniel Mosse. (Most slides are from Sherif Khattab and Silberschatz, Galvin and Gagne 2013)
CPU Scheduling Daniel Mosse (Most slides are from Sherif Khattab and Silberschatz, Galvin and Gagne 2013) Basic Concepts Maximum CPU utilization obtained with multiprogramming CPU I/O Burst Cycle Process
More informationFMCAD 2011 (Austin, Texas) Jonathan Kotker, Dorsa Sadigh, Sanjit Seshia University of California, Berkeley
FMCAD 2011 (Austin, Texas) Jonathan Kotker, Dorsa Sadigh, Sanjit Seshia University of California, Berkeley 1 Cyber-Physical = Computation + Physical Processes Quantitative analysis of programs is crucial:
More informationECE 612: Embedded and Real-Time Systems
ECE 612: Embedded and Real-Time Systems Instructor: A. Cyrus Sabzevari Last updated: 1/16/2013 Email: asabzeva@gmu.edu Spring 2013 Monday 7:20-10 PM Office Hours: Monday 6:10 7:10 in the adjunct faculty
More informationCSE 237A Timing and scheduling. Tajana Simunic Rosing Department of Computer Science and Engineering University of California, San Diego.
CSE 237A Timing and scheduling Department of Computer Science and Engineering University of California, San Diego. 1 Where we are now n What we covered thus far: Introduction to design process and models
More informationSimulation of Priority Driven Algorithms to Schedule Real-Time Systems T.S.M.Priyanka a*, S.M.K.Chaitanya b
International Journal of Current Science, Engineering & Technology Original Research Article Open Access Simulation of Priority Driven Algorithms to Schedule Real-Time Systems T.S.M.Priyanka a*, S.M.K.Chaitanya
More informationFinal Examination. Thursday, December 3, :20PM 620 PM. NAME: Solutions to Selected Problems ID:
CSE 237B EMBEDDED SOFTWARE, FALL 2009 PROF. RAJESH GUPTA Final Examination Thursday, December 3, 2009 5:20PM 620 PM NAME: Solutions to Selected Problems ID: Problem Max. Points Points 1 20 2 25 3 35 4
More informationReal-Time Component Software. slide credits: H. Kopetz, P. Puschner
Real-Time Component Software slide credits: H. Kopetz, P. Puschner Overview OS services Task Structure Task Interaction Input/Output Error Detection 2 Operating System and Middleware Application Software
More informationMultiprocessor and Real-Time Scheduling. Chapter 10
Multiprocessor and Real-Time Scheduling Chapter 10 1 Roadmap Multiprocessor Scheduling Real-Time Scheduling Linux Scheduling Unix SVR4 Scheduling Windows Scheduling Classifications of Multiprocessor Systems
More informationChapter 5: CPU Scheduling. Operating System Concepts 9 th Edit9on
Chapter 5: CPU Scheduling Operating System Concepts 9 th Edit9on Silberschatz, Galvin and Gagne 2013 Chapter 6: CPU Scheduling 1. Basic Concepts 2. Scheduling Criteria 3. Scheduling Algorithms 4. Thread
More informationChapter 6: CPU Scheduling. Operating System Concepts 9 th Edition
Chapter 6: CPU Scheduling Silberschatz, Galvin and Gagne 2013 Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Thread Scheduling Multiple-Processor Scheduling Real-Time
More informationLast Time. Response time analysis Blocking terms Priority inversion. Other extensions. And solutions
Last Time Response time analysis Blocking terms Priority inversion And solutions Release jitter Other extensions Today Timing analysis Answers a question we commonly ask: At most long can this code take
More information1.1 CPU I/O Burst Cycle
PROCESS SCHEDULING ALGORITHMS As discussed earlier, in multiprogramming systems, there are many processes in the memory simultaneously. In these systems there may be one or more processors (CPUs) but the
More informationA Capacity Sharing and Stealing Strategy for Open Real-time Systems
A Capacity Sharing and Stealing Strategy for Open Real-time Systems Luís Nogueira, Luís Miguel Pinho CISTER Research Centre School of Engineering of the Polytechnic Institute of Porto (ISEP/IPP) Rua Dr.
More informationScheduling Algorithm for Hard Real-Time Communication in Demand Priority Network
Scheduling Algorithm for Hard Real-Time Communication in Demand Priority Network Taewoong Kim, Heonshik Shin, and Naehyuck Chang Department of Computer Engineering Seoul National University, Seoul 151-742,
More informationBut this will not be complete (no book covers 100%) So consider it a rough approximation Last lecture OSPP Sections 3.1 and 4.1
ADRIAN PERRIG & TORSTEN HOEFLER ( 252-0062-00 ) Networks and Operating Systems Chapter 3: Scheduling Source: slashdot, Feb. 2014 Administrivia I will try to indicate book chapters But this will not be
More informationProcesses. Overview. Processes. Process Creation. Process Creation fork() Processes. CPU scheduling. Pål Halvorsen 21/9-2005
INF060: Introduction to Operating Systems and Data Communication Operating Systems: Processes & CPU Pål Halvorsen /9-005 Overview Processes primitives for creation and termination states context switches
More information