Real Time Systems - IIT Delhi
Transcript of Real Time Systems - IIT Delhi
![Page 1: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/1.jpg)
Real Time Systems
Real-Time Systems
Jane W. S. Liu, University of Ilinois at Urbana-Champaign
![Page 2: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/2.jpg)
Real Time Types
![Page 3: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/3.jpg)
![Page 4: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/4.jpg)
Real time is not necessarily fast
● Fast means low average latency● Real time needs predictable worst case performance● One needs to mathematically prove that all deadlines
will be met even in the worst case– For uniprocessor system and periodic tasks, mathematical
proofs were given in 1970-1990. Now one has to perform some schedulability tests, and if the tests pass, the deadlines are guaranteed to be met.
– Linux real time patch is designed to be real time, but is not real time, as the code base is too complex for giving mathematical guarantees
– It has a number of changes to improve reliability/predictability
![Page 5: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/5.jpg)
Other real time system classifications● Based on where it runs
– Uniprocessor
– Multicore
– Distributed
● Based on time characteristics of tasks– Periodic
– Aperiodic
– Sporadic
● Based on when scheduling decisions are taken– Clock based
– Event based
– Hybrid
![Page 6: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/6.jpg)
![Page 7: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/7.jpg)
![Page 8: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/8.jpg)
![Page 9: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/9.jpg)
( )
![Page 10: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/10.jpg)
![Page 11: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/11.jpg)
![Page 12: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/12.jpg)
![Page 13: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/13.jpg)
![Page 14: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/14.jpg)
![Page 15: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/15.jpg)
![Page 16: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/16.jpg)
![Page 17: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/17.jpg)
![Page 18: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/18.jpg)
![Page 19: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/19.jpg)
![Page 20: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/20.jpg)
![Page 21: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/21.jpg)
![Page 22: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/22.jpg)
Schedulability Tests
![Page 23: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/23.jpg)
![Page 24: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/24.jpg)
![Page 25: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/25.jpg)
Data structure space and insertion times are too high for typical embedded real time platforms and applications
![Page 26: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/26.jpg)
![Page 27: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/27.jpg)
![Page 28: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/28.jpg)
![Page 29: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/29.jpg)
![Page 30: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/30.jpg)
![Page 31: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/31.jpg)
![Page 32: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/32.jpg)
![Page 33: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/33.jpg)
![Page 34: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/34.jpg)
![Page 35: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/35.jpg)
![Page 36: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/36.jpg)
![Page 37: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/37.jpg)
![Page 38: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/38.jpg)
![Page 39: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/39.jpg)
![Page 40: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/40.jpg)
![Page 41: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/41.jpg)
![Page 42: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/42.jpg)
![Page 43: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/43.jpg)
![Page 44: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/44.jpg)
![Page 45: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/45.jpg)
![Page 46: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/46.jpg)
![Page 47: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/47.jpg)
![Page 48: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/48.jpg)
![Page 49: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/49.jpg)
![Page 50: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/50.jpg)
![Page 51: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/51.jpg)
![Page 52: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/52.jpg)
![Page 53: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/53.jpg)
![Page 54: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/54.jpg)
![Page 55: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/55.jpg)
![Page 56: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/56.jpg)
![Page 57: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/57.jpg)
![Page 58: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/58.jpg)
![Page 59: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/59.jpg)
![Page 60: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/60.jpg)
![Page 61: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/61.jpg)
![Page 62: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/62.jpg)
![Page 63: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/63.jpg)
![Page 64: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/64.jpg)
![Page 65: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/65.jpg)
![Page 66: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/66.jpg)
![Page 67: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/67.jpg)
![Page 68: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/68.jpg)
![Page 69: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/69.jpg)
![Page 70: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/70.jpg)
![Page 71: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/71.jpg)
![Page 72: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/72.jpg)
![Page 73: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/73.jpg)
![Page 74: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/74.jpg)
Bounded Priority Inversion
![Page 75: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/75.jpg)
Unbounded Priority Inversion
![Page 76: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/76.jpg)
Priority Inheritence
![Page 77: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/77.jpg)
Transitive Priority Inheritence
![Page 78: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/78.jpg)
Ceiling Priority Protocol
● In the ceiling priority protocol, the priority of every task is known, as are the resources required by every task.
● For a given resource, the priority ceiling is the highest priority of all possible tasks that might require the resource.
● For example, if a resource R is required by four tasks (T1 of priority 4, T2 of priority 9, T3 of priority 10, and T4 of priority 8), the priority ceiling of R is 10, which is the highest priority of the four tasks.
● With the ceiling priority protocol, the task inherits the priority ceiling of the resource as soon as the task acquires the resource even when no other higher priority tasks contend for the same resource.
● This rule implies that all critical sections from every sharing task have the same criticality level. The idea is to finish the critical section as soon as possible to avoid possible conflicts.
![Page 79: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/79.jpg)
Ceiling Priority Protocol Rules
![Page 80: Real Time Systems - IIT Delhi](https://reader031.fdocuments.us/reader031/viewer/2022012916/61c6f3b57631ae478e5a50c4/html5/thumbnails/80.jpg)
Next week classes
● Commercial and free RTOS– Hard real time guarantees
● Linux Real Time patch– No guarantee, but design for more predictability
● Minor 2 (due on Oct 11):– Build raspbian from source (CFS scheduler)
– Apply BFS patch
– Apply Preempt RT patch
– Run same benchmark with three different schedulers and report average and worst case latencies