CprE 458/558: Real-Time Systems

Slides:



Advertisements
Similar presentations
Real Time Scheduling.
Advertisements

EE5900 Advanced Embedded System For Smart Infrastructure
Introduction to Embedded Systems Resource Management - III Lecture 19.
Courseware Scheduling of Distributed Real-Time Systems Jan Madsen Informatics and Mathematical Modelling Technical University of Denmark Richard Petersens.
Real-time concepts Lin Zhong ELEC424, Fall Real time Correctness – Logical correctness – Timing Hard vs. Soft – Hard: lateness is intolerable Pass/Fail.
Model for Supporting High Integrity and Fault Tolerance Brian Dobbing, Aonix Europe Ltd Chief Technical Consultant.
Architecture Modeling and Analysis for Embedded Systems Oleg Sokolsky CIS700 Fall 2005.
Real-Time Systems Introduction
Soft Timers: Efficient Microsecond Software Timer Support For Network Processing Mohit Aron and Peter Druschel Rice University Presented by Reinette Grobler.
Strategic Directions in Real- Time & Embedded Systems Aatash Patel 18 th September, 2001.
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.
Misconceptions About Real-time Computing : A Serious Problem for Next-generation Systems J. A. Stankovic, Misconceptions about Real-Time Computing: A Serious.
CprE 458/558: Real-Time Systems
Real-Time Operating System Chapter – 8 Embedded System: An integrated approach.
EMBEDDED SOFTWARE Team victorious Team Victorious.
An Introduction and Practical approach to RTOS concepts.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 15 Slide 1 Real-time Systems 1.
Distributed Real-Time systems 1 By: Mahdi Sadeghizadeh Website: Sadeghizadeh.ir Advanced Computer Networks.
Real-Time Software Design Yonsei University 2 nd Semester, 2014 Sanghyun Park.
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Binghamton University EngiNet™ State University of New York
Introduction to Real-Time Systems
Real Time Operating Systems Scheduling & Schedulers Course originally developed by Maj Ron Smith 8-Oct-15 Dr. Alain Beaulieu Scheduling & Schedulers- 7.
1 소프트웨어공학 강좌 Chap 11. Real-time software Design - Designing embedded software systems whose behaviour is subject to time constraints -
© Oxford University Press 2011 DISTRIBUTED COMPUTING Sunita Mahajan Sunita Mahajan, Principal, Institute of Computer Science, MET League of Colleges, Mumbai.
Scheduling policies for real- time embedded systems.
Real-Time Operating Systems for Embedded Computing 李姿宜 R ,06,10.
Chapter 101 Multiprocessor and Real- Time Scheduling Chapter 10.
Real-Time Systems Mark Stanovich. Introduction System with timing constraints (e.g., deadlines) What makes a real-time system different? – Meeting timing.
Reference: Ian Sommerville, Chap 15  Systems which monitor and control their environment.  Sometimes associated with hardware devices ◦ Sensors: Collect.
1 Introduction to Software Engineering Lecture 1.
Real Time Scheduling Telvis Calhoun CSc Outline Introduction Real-Time Scheduling Overview Tasks, Jobs and Schedules Rate/Deadline Monotonic Deferrable.
Slide 1 Chapter 11 Real –time Software Designs. Slide 2 Real-time systems l Systems which monitor and control their environment l Inevitably associated.
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
CprE 458/558: Real-Time Systems (G. Manimaran)1 CprE 458/558: Real-Time Systems Introduction to Real-Time Systems.
5 May CmpE 516 Fault Tolerant Scheduling in Multiprocessor Systems Betül Demiröz.
Real Time Systems Real-Time Schedulability Part I.
©Ian Sommerville, Robin Abraham 2004CS 361, Summer 2004 Slide 1 Real-time Software Design.
CprE 458/558: Real-Time Systems (G. Manimaran)1 CprE 458/558: Real-Time Systems RMS and EDF Schedulers.
Real-time Software Design King Saud University College of Computer and Information Sciences Department of Computer Science Dr. S. HAMMAMI.
KUKUM Real Time System 1/21 Module 2 Real Time System Scheduling Lecture 05.
Real Time Operating Systems Michael Thomas Date: Rev. 1.00Date.
Operating Systems 1 K. Salah Module 1.2: Fundamental Concepts Interrupts System Calls.
CprE 458/558: Real-Time Systems (G. Manimaran)1 CprE 458/558: Real-Time Systems Distributed Real-Time Systems.
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.
Real-Time Systems, Events, Triggers. Real-Time Systems A system that has operational deadlines from event to system response A system whose correctness.
Lecture 2, CS52701 The Real Time Computing Environment I CS 5270 Lecture 2.
Introduction to Real-Time Systems
Real-Time Operating System Design
For a good summary, visit:
From Use Cases to Implementation 1. Structural and Behavioral Aspects of Collaborations  Two aspects of Collaborations Structural – specifies the static.
1.  System Characteristics  Features of Real-Time Systems  Implementing Real-Time Operating Systems  Real-Time CPU Scheduling  An Example: VxWorks5.x.
Low Overhead Real-Time Computing General Purpose OS’s can be highly unpredictable Linux response times seen in the 100’s of milliseconds Work around this.
Unit - I Real Time Operating System. Content : Operating System Concepts Real-Time Tasks Real-Time Systems Types of Real-Time Tasks Real-Time Operating.
Embedded Real-Time Systems Processing interrupts Lecturer Department University.
From Use Cases to Implementation 1. Mapping Requirements Directly to Design and Code  For many, if not most, of our requirements it is relatively easy.
Lecture 6: Real-Time Scheduling
Distributed Process Scheduling- Real Time Scheduling Csc8320(Fall 2013)
Real-time Software Design
REAL-TIME OPERATING SYSTEMS
Wayne Wolf Dept. of EE Princeton University
Unit OS9: Real-Time and Embedded Systems
EEE 6494 Embedded Systems Design
Real-time Software Design
CprE 458/558: Real-Time Systems
CSCI1600: Embedded and Real Time Software
CSCI1600: Embedded and Real Time Software
From Use Cases to Implementation
Presentation transcript:

CprE 458/558: Real-Time Systems Basic Concepts (Contd.) CprE 458/558: Real-Time Systems (G. Manimaran)

Real-Time Systems - Issues Resource Management (RM) Issues Scheduling, Fault-tolerance, Resource reclaiming, Communication Architectural Issues Computing subsystem, Communication subsystem, I/O subsystem Software Issues Requirements, specification, and verification, Real-time languages, Real-time databases CprE 458/558: Real-Time Systems (G. Manimaran)

Real-time Scheduling Paradigms – RM Issue Allocate time slots for tasks onto processor(s). [i.e., Where and When a given task executes] Objective: predictably meeting task deadlines. (schedulability check, schedule construction) CprE 458/558: Real-Time Systems (G. Manimaran)

Preemptive vs Non-preemptive scheduling Task execution is preempted and resumed later Preemption occurs to execute higher priority task. Offers higher schedulability Involves higher scheduling overhead due to context switching Non-preemptive Scheduling Once a task starts executing, it completes its full execution Offers lower schedulability Less overhead due to less context switching CprE 458/558: Real-Time Systems (G. Manimaran)

Optimal scheduling -- definition A static scheduling algorithm is said to be optimal if, for any set of tasks, it always produces a feasible schedule (i.e., a schedule that satisfies the constraints of the tasks) whenever any other algorithm can do so. A dynamic scheduling algorithm is said to be optimal if it always produces a feasible schedule whenever a static algorithm with complete prior knowledge of all the possible tasks can do so. Static scheduling is used for scheduling periodic tasks, whereas dynamic scheduling is used to schedule both periodic and aperiodic tasks. CprE 458/558: Real-Time Systems (G. Manimaran)

CprE 458/558: Real-Time Systems (G. Manimaran) Architectural Issues Predictability in: Instruction execution time, Memory access, Context switching, Interrupt handling. RT systems usually avoid caches and superscalar features. Support for error handling (self-checking circuitry, voters, system monitors). Support for fast and reliable communication (routing, priority handling, buffer and timer management). CprE 458/558: Real-Time Systems (G. Manimaran)

Architectural Issues (contd..) Support for scheduling algorithms (fast preemptability, priority queues). Support for RTOS (multiple contexts, memory management, garbage collection, interrupt handling, clock synchronization). Support for RT language features (language constructs for estimating worst-case execution time of tasks). CprE 458/558: Real-Time Systems (G. Manimaran)

Requirement, Specification, Verification Functional requirements: Operation of the system and their effects. Non-Functional requirements: e.g., timing constraints. F & NF requirements must be precisely defined and together used to construct the specification of the system. CprE 458/558: Real-Time Systems (G. Manimaran)

Requirement, Specification, Verification (contd..) A specification is a mathematical statement of the properties to be exhibited by a system. It is abstracted such that it can be checked for conformity against the requirement. its properties can be examined independently of the way in which it will be implemented. The usual approaches for specifying computing system behavior entail enumerating events or actions that the system participates in and describing orders in which they can occur. It is not well understood how to extend such approaches for real-time systems. CprE 458/558: Real-Time Systems (G. Manimaran)

CprE 458/558: Real-Time Systems (G. Manimaran) Real-time Languages Support for the management of time Language constructs for expressing timing constraint, keeping track of resource utilization. Schedulability analysis Aid compile-time schedulability check. Reusable real-time software modules Object-oriented methodology. Support for distributed programming and fault-tolerance CprE 458/558: Real-Time Systems (G. Manimaran)

CprE 458/558: Real-Time Systems (G. Manimaran) Real-time Databases Conventional database systems Disk-based. Use transaction logging and two-phase locking protocols to ensure transaction atomicity and serializability. These characteristics preserve data integrity, but they also result in relatively slow and unpredictable response times. Real-time database system, issues include: transaction scheduling to meet deadlines. explicit semantics for specifying timing and other constraints. checking the database system’s ability of meeting transaction deadlines during application initialization. CprE 458/558: Real-Time Systems (G. Manimaran)

Introduction: Summary Real-time systems require logical correctness and timeliness. Real-time system consists of a controlling system, controlled system, and the environment. Real-time systems are classified as: hard, firm, and soft RT systems. Workload (tasks) are periodic, aperiodic, sparodic. The notion of predictability is very important in real-time systems. Important issues include: scheduling, resource reclaiming, fault-tolerance, communication, architectural issues, system specification and verification, programming languages, and databases. CprE 458/558: Real-Time Systems (G. Manimaran)