niranjan rao julapelly real-time scheduling [ chapter 5.5]

13
Niranjan Rao Julapelly Real-Time Scheduling [Chapter 5.5]

Upload: gervase-logan

Post on 11-Jan-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Niranjan Rao Julapelly Real-Time Scheduling [ Chapter 5.5]

Niranjan Rao Julapelly

Real-Time Scheduling

[Chapter 5.5]

Page 2: Niranjan Rao Julapelly Real-Time Scheduling [ Chapter 5.5]

Topics of Discussion

• Real-time Computing• Synchronous Programming Languages• Real-time Operating Systems• Real-time System Types• Real-time System Methodologies• Real-time Scheduling Algorithms• Real-time Scheduling Implementation Issues

Page 3: Niranjan Rao Julapelly Real-Time Scheduling [ Chapter 5.5]

Real –time Computing

• 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.

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.

Page 4: Niranjan Rao Julapelly Real-Time Scheduling [ Chapter 5.5]

• Examples: Embedded Systems (Appliance Controller, Spacecraft, Robots, Industrial Control.

• “Control Program” – American Airlines, IBM – Later called “Sabre Airline Reservation System”.

Real-Time Operating System (RTOS)

Early Real-time Systems

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.

Page 5: Niranjan Rao Julapelly Real-Time Scheduling [ Chapter 5.5]

Hard Real Time vs. Soft Real Time [McObject, 2006]

• Critical real-time systems such as nuclear power plants or fly-by-wire airplanes are Hard Real Time

• Non-critical real time systems where missed transactions only degrade system quality are Soft Real Time

• Firm real-time systems are similar to soft real-time, except late tasks are discarded.

• Scheduling algorithm depends on real time system characteristics

Page 6: Niranjan Rao Julapelly Real-Time Scheduling [ Chapter 5.5]

Hard deadline

Page 7: Niranjan Rao Julapelly Real-Time Scheduling [ Chapter 5.5]

Soft deadline

Page 8: Niranjan Rao Julapelly Real-Time Scheduling [ Chapter 5.5]

• 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]

Real-time System Design Methodologies

Page 9: Niranjan Rao Julapelly Real-Time Scheduling [ Chapter 5.5]

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

Page 10: Niranjan Rao Julapelly Real-Time Scheduling [ Chapter 5.5]

• Communication Delay - worst case execution time, non-deterministic• RPC - Remote blocking

Real-time Implementation issues in Distributed Systems [Kasavant, ‘88]

Page 11: Niranjan Rao Julapelly Real-Time Scheduling [ Chapter 5.5]

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/

•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

RT Technical Commitees

Page 12: Niranjan Rao Julapelly Real-Time Scheduling [ Chapter 5.5]

RT Scientific conferences

Event Website

IEEE Real-time Technology and Applications Symposium, St. Louis, Missouri, USA - April 22-24, 2008

http://www.rtas.org/

ECRTS – Euromicro Conference on Real-time Systems http://www.ecrts.org/

IEEE Real-time Systems Symposium, Tuscon, Arizona, USA – Dec 3-6, 2007

http://www.rtss.org/

International Symposium on Object oriented Real-time Distributed systems

http://ise.gmu.edu/isorco7

IEEE International Conference on Embedded and Real-time Computing systems and Applications

http://ssl.snu.ac.kr/~rtcsa2007/

Page 13: Niranjan Rao Julapelly Real-Time Scheduling [ Chapter 5.5]

References

1. http://en.wikipedia.org/wiki/Real-time_operating_system2. 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).

3. 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).

4. A. Burns, ‘‘Scheduling Hard Real-Time Systems: A Review’’, Software Engineering Journal 6(3), pp. 116-128 (1991).

5. K. Ramamritham and J.A. Stankovic, ‘‘Dynamic Task Scheduling in Hard Real-Time Distributed Systems’’, IEEE Software 1(3), pp. 65-75 (July 1984).

6. McObject LLC, “Real-time Databases for Embedded Systems”, Precision Data Management, 2006