1 / 16

Real-Time Scheduling [ Chapter 5.5]

Real-Time Scheduling [ Chapter 5.5]. Aravind Venkataraman. Topics of Discussion. Real-time Computing Synchronous Programming Languages Real-time Operating Systems Real-time System Types Real-time System Key factors, terminology Real-time System Methodologies

biana
Télécharger la présentation

Real-Time Scheduling [ Chapter 5.5]

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Real-Time Scheduling[Chapter 5.5] Aravind Venkataraman

  2. Topics of Discussion • Real-time Computing • Synchronous Programming Languages • Real-time Operating Systems • Real-time System Types • Real-time System Key factors, terminology • Real-time System Methodologies • Real-time Scheduling Algorithms • Real-time Scheduling Implementation Issues • Real-time Computing Research Key People

  3. Real –time Computing [1] • Software & hardware for systems which have real-time constraints and are interrupted often. • Comprises of: • Synchronous Programming Language. • Real-time Operating System. • Real-time Design Methodologies.

  4. Synchronous Programming Language • Provides abstract modules for scheduling algorithms, parallelism, pre-emption. • Finite state (execution time predictable), deterministic, synchronous dataflow. • Declarative and Imperative Languages. • Examples: Lustre, Quartz, SOL, Esterel.

  5. Real-Time Operating System (RTOS) • Examples: Embedded Systems (Appliance Controller, Spacecraft, Robots, Industrial Control. Early Real-time Systems • “Control Program” – American Airlines, IBM – Later called “Sabre Airline Reservation System”. Recent Important Real-time Systems • DSOS (Deep Six OS) – Geophysical Services Division, Texas Instruments. • Ptolemy Project, University of California, Berkeley [8]. • MARS (MAintainable Real-time System). • ARTS Kernel. • Spring Kernel. • CHAOS Kernel. • Alpha Kernel . • Dragon Kernel.

  6. Real-time System Types • ‘Hard’ Real-time System - Guaranteed, deterministic behaviour. • - Critical Jobs. • - Eg. Nuclear Power Plant controller. • ‘Soft’ Real-time System - High Throughput. • - Concurrent access, Large demand. • - Eg. Airline Reservation System.

  7. Hard deadline

  8. Soft deadline

  9. Real-Time System Key Factors[Burns, ‘91] • Minimal Interrupt Latency • Minimal Thread switching Latency Other Terminology • Task Deadline • Maximum Response Time • Worst case Execution Time • Timing Analysis • Priority Inversion • Priority Inheritance • Priority Ceiling Protocol. Important Real-time System Property[Stankovic, ‘84] • System Deadline => Process Deadline • Periodic, Aperiodic Process.

  10. Real-time System Design Methodologies • MASCOT (Modular Approach to Software Construction Operation and Test) • - Architecture Oriented (RT Control & interface definition between concurrent processes) • - British ground-air missile system. • HOOD (Hierarchic Object-Oriented Design) • - Hierarchical decomposition. • - European Space Agency – Aerospace project. • AADL (Architecture Analysis and Design Language) [6] - Automotive, aerospace industry. • RTSJ (Real-Time Specification for Java) [7]

  11. Real-time Scheduling Algorithms [Stankovic,’88] • Classification • Static vs Dynamic • Preemptive vs Non-preemptive • Global vs Local • Examples • Static: • - Fixed-priority Rate-monotonic algorithm • - Fixed-priority Deadline-monotonic algorithm • - Graph based Approach • Dynamic: • - Earliest Deadline First • - Least Laxity

  12. Real-time Implementation issues in Distributed Systems [Kasavant, ‘88] • Communication Delay - worst case execution time, non-deterministic • RPC - Remote blocking

  13. Key People in Real-time Computing • Edward Lee - UC Berkeley, Ptolemy Project • - http://ptolemy.eecs.berkeley.edu/~eal/ • Alan Burns, Andy Wellings - Univ of York, RT Systems Research group • - http://www.cs.york.ac.uk/rts/ • David Dill - Stanford University - Formal verification in RT Systems design • - http://verify.stanford.edu/dill/ • Rajeev Alur - Univ of Pennsylvania - Hybrid systems, formal modeling, verification of reactive systems; Automata Theory • - http://www.cis.upenn.edu/~alur/ • Nicolas Halbwachs - Grenoble University, Critical embedded systems, data flow synchronous programming languages • - http://www-verimag.imag.fr/~halbwach/

  14. RT Research Groups • RT computing lab: http://www.eecs.umich.edu/RTCL/ • RT computation and communication group: http://www.cs.bu.edu/groups/realtime/ • RT and embedded systems laboratory: http://www.cs.virginia.edu/~control/ • Supercomputing and Parallel computing research group: http://www.cs.cmu.edu/~scandal/research-groups.html • Systems Research group: http://www.cc.gatech.edu/systems/ • Distributed systems research group: http://www-dsg.stanford.edu/ • Institute for systems engineering, RT Systems group: http://www.rts.uni-hannover.de/index.php/Main_Page/index.htm • Institute for computer engineering, RT Systems group: http://www.vmars.tuwien.ac.at/ RT Technical Commitees • IEEE Technical Committee on Real-Time Systems:http://cs-www.bu.edu/pub/ieee-rts/ • Euromicro Technical Committee on Real-time Systems: http://www.ecrts.org

  15. RT Scientific conferences

  16. References http://en.wikipedia.org/wiki/Real-time_operating_system S. Cheng, J.A. Stankovic and K. Ramamritham, ‘‘Scheduling Algorithms for Hard Real-Time Systems: A Brief Survey’’, pp. 150-173 in Hard Real-Time Systems: Tutorial, IEEE (1988). T. L. Casavant and J. G. Kuhl, ‘‘A Taxonomy of Scheduling in General Purpose Distributed Computing Systems’’, IEEE Transactions on Software Engineering 14(2), pp. 141-154 (February 1988). A. Burns, ‘‘Scheduling Hard Real-Time Systems: A Review’’, Software Engineering Journal 6(3), pp. 116-128 (1991). K. Ramamritham and J.A. Stankovic, ‘‘Dynamic Task Scheduling in Hard Real-Time Distributed Systems’’, IEEE Software 1(3), pp. 65-75 (July 1984). http://www.aadl.info/ http://www.rtsj.org/ http://ptolemy.eecs.berkeley.edu/

More Related