A Comparison of Scheduling Latency in Linux, PREEMPT_RT, and LITMUS RT. Felipe Cerqueira and Björn Brandenburg
|
|
- Stephany Hall
- 6 years ago
- Views:
Transcription
1 A Comparison of Scheduling Latency in Linux, PREEMPT_RT, and LITMUS RT Felipe Cerqueira and Björn Brandenburg July 9th,
2 Linux as a Real-Time OS 2
3 Linux as a Real-Time OS Optimizing system responsiveness 3
4 Linux as a Real-Time OS Optimizing system responsiveness PREEMPT_RT (Linux) 4
5 Linux as a Real-Time OS Optimizing system responsiveness Algorithmic changes based on real-time systems research PREEMPT_RT (Linux) 5
6 Linux as a Real-Time OS Optimizing system responsiveness Algorithmic changes based on real-time systems research PREEMPT_RT (Linux) 6
7 PREEMPT_RT Main real-time branch of Linux Goal: decrease scheduling latency through the use of low-level hacks Convert in-kernel spinlocks into (preemptable) mutexes Limit the extent of non-preemptable sections Commonly evaluated with cyclictest Single, easy-to-compare measure of scheduling latency as output 7
8 Testbed for applied real-time systems research Goal Allow implementation and evaluation of novel multiprocessor schedulers and synchronization protocols NOT to reduce scheduling latency Evaluated with Feather-Trace Flexible, fine-grained measurement of different overheads 8
9 Testbed for applied real-time systems research Goal How do LITMUS RT and PREEMPT_RT compare? Allow implementation and evaluation of novel multiprocessor schedulers and synchronization protocols NOT to reduce scheduling latency Evaluated with Feather-Trace Flexible, fine-grained measurement of different overheads 9
10 Testbed for applied real-time systems research Goal How do LITMUS RT and PREEMPT_RT compare? Allow implementation and evaluation of novel multiprocessor schedulers and synchronization protocols NOT to reduce scheduling latency It is not straightforward to Evaluated with Feather-Trace compare them! Flexible, fine-grained measurement of different overheads 10
11 Objective vs. PREEMPT_RT (Linux) Direct comparison of scheduling latency between LITMUS RT and PREEMPT_RT 11
12 Background 12
13 How is LITMUS RT evaluated? Evaluated with Lightweight tracing framework for measuring fine-grained overheads (e.g., IPI latency, context-switching overhead, etc.) Extensively used (20+ publications) Suitable for schedulability analysis Check if a task is going to miss a deadline 13
14 How is PREEMPT_RT evaluated? Evaluated with cyclictest Standard benchmark for assessing real-time responsiveness Creator: Thomas Gleixner Current maintainer: Clark Williams Reports scheduling latency as a single measure Treats hardware and OS as a black-box 14
15 Scheduling Latency Time until the highest-priority task is scheduled brake sensor HP task interrupt! ECU! ISR called 15
16 Scheduling Latency Time until the highest-priority task is scheduled interrupt! wake up task Z Z Z Z T T T! s ISR called scheduler invoked 16
17 Scheduling Latency Time until the highest-priority task is scheduled interrupt! wake up task T T T! s P ISR called scheduler invoked task picked 17
18 Scheduling Latency Time until the highest-priority task is scheduled interrupt! wake up task T T T Perform context switch! s P C ISR called scheduler invoked task picked switched 18
19 Scheduling Latency Time until the highest-priority task is scheduled interrupt! wake up task T T T Perform context switch scheduling latency! s P C ISR called scheduler invoked task picked switched 19
20 How does cyclictest measure Scheduling Latency? Init Measure Exit 20
21 How does cyclictest measure Scheduling Latency? POSIX sched_setscheduler( ) Init Measure Exit Measuring thread is granted real-time status. 21
22 How does cyclictest measure Scheduling Latency? Init Measure Exit 22
23 How does cyclictest measure Scheduling Latency? Init Measure Exit Periodically setup one-shot timers with nanosleep. Calculate delta between the instant the task starts executing and the instant the timer should have fired. 23
24 How does cyclictest measure Scheduling Latency? Init Measure Exit 24
25 How does cyclictest measure Scheduling Latency? POSIX sched_setscheduler( ) Init Measure Exit Measuring thread returns to best-effort status. 25
26 cyclictest on LITMUS RT Init Measure Exit LITMUS RT does not use POSIX API to setup real-time tasks! 26
27 cyclictest on LITMUS RT Init Measure Exit LITMUS RT does not use POSIX API to setup real-time tasks! cyclictest works, but does not measure what we expect... 27
28 Porting cyclictest to LITMUS RT POSIX sched_setscheduler( ) POSIX sched_setscheduler( ) Init Measure Exit LITMUS RT does not use POSIX API to setup real-time tasks! cyclictest works, but does not measure what we expect... 28
29 Porting cyclictest to LITMUS RT POSIX sched_setscheduler( ) POSIX sched_setscheduler( ) Init Measure Exit LITMUS RT does not use POSIX API to setup real-time tasks! cyclictest works, but does not measure what we expect... 29
30 Porting cyclictest to LITMUS RT LITMUS RT API task_mode() LITMUS RT API task_mode() LITMUS RT Init Measure LITMUS RT Exit No changes in the measurement phase, no bias. 30
31 Study 31
32 Questions that We Address Stock Linux Userspace Scheduler + Dispatcher Linux (core) 32
33 Questions that We Address Stock Linux Userspace Scheduler + Dispatcher Linux (core) 32
34 The Cost of LITMUS RT LITMUS RT Stock Linux Userspace Scheduler + Dispatcher Linux (core) Userspace Scheduling Policy Plugins Dispatcher Linux (core) 33
35 The Cost of LITMUS RT LITMUS RT Stock Linux Userspace Scheduler + Dispatcher Linux (core) Userspace Scheduling Policy Plugins Dispatcher Linux (core) Question 1 How much latency does the scheduling policy interface add to the system? 34
36 LITMUS RT vs. PREEMPT_RT LITMUS RT Stock Linux Userspace Scheduler + Dispatcher Linux (core) Userspace Scheduling Policy Plugins Dispatcher Linux (core) PREEMPT_RT Userspace Scheduler + Dispatcher Linux (core) 35
37 LITMUS RT vs. PREEMPT_RT LITMUS RT Stock Linux Userspace Scheduler + Dispatcher Linux (core) Userspace Scheduling Policy Plugins Dispatcher Linux (core) PREEMPT_RT Userspace Scheduler + Dispatcher Linux (core) 36
38 LITMUS RT vs. PREEMPT_RT LITMUS RT Stock Linux Userspace Scheduler + Dispatcher Linux (core) Userspace Scheduling Policy Plugins Dispatcher Linux (core) PREEMPT_RT Userspace Scheduler + Dispatcher Linux (core) 36
39 LITMUS RT vs. PREEMPT_RT LITMUS RT Question 2 What is the penalty for LITMUS RT not being based on PREEMPT_RT? Userspace Scheduling Policy Plugins Dispatcher Linux (core) PREEMPT_RT Userspace Scheduler + Dispatcher Linux (core) 37
40 Evaluation Userspace Scheduler + Dispatcher Linux (core) 38
41 Evaluation Userspace Scheduler + Dispatcher Linux (core) 38
42 Evaluation cyclictest background Userspace + workload Scheduler + Dispatcher Linux (core) 39
43 Background Workloads NO background tasks CPU-bound background tasks I/O-bound background tasks 40
44 Experimental Setup Different kernels: 1.LITMUS RT (Linux 3.0) Partitioned Fixed Priority (P-FP), Partitioned EDF with synchronization support (PSN-EDF), Global EDF with synchronization support (GSN-EDF) 2.PREEMPT_RT (Linux ) 3.Unpatched Linux 3.0 and Linux } SCHED_FIFO 41
45 Experimental Setup 16-core Intel Xeon platform cyclictest s standard setup: one real-time task per processor periods: {1000, 1500, 2000,...} μs Duration: 20 minutes per experiment Almost 6 million samples for each case Results shown in microseconds 42
46 First Scenario NO background tasks 43
47 No Background Tasks Scheduling Latency (!s) 20 Average (99% conf.) Maximum P-FP (LITMUS^RT) Linux 3.0 PREEMPT_RT 44
48 No Background Similar max. and Tasks avg. latency for Linux 3.0 and LITMUS RT. Scheduling Latency (!s) 20 Average (99% conf.) Maximum P-FP (LITMUS^RT) Linux 3.0 PREEMPT_RT 45
49 No Background Similar max. and Tasks avg. latency for Linux 3.0 and LITMUS RT. Improved max. latency for PREEMPT_RT Scheduling Latency (!s) 20 Average (99% conf.) Maximum P-FP (LITMUS^RT) Linux 3.0 PREEMPT_RT 46
50 Second Scenario CPU-bound background tasks Tasks running an infinite loop accessing memory (read/write) Working set larger than L2 cache size 47
51 Second Scenario CPU-bound background tasks Tasks running an infinite loop accessing memory (read/write) Working set larger than L2 cache size Generates memory traffic and cache contention! 48
52 CPU-bound Background Tasks Scheduling Latency (!s) 80 Average (99% conf.) 72.7 Maximum P-FP (LITMUS^RT) Linux 3.0 PREEMPT_RT 49
53 CPU-bound Background Tasks Scheduling Latency (!s) Average (99% conf.) Maximum Latency under PREEMPT_RT is significantly lower P-FP (LITMUS^RT) Linux 3.0 PREEMPT_RT 50
54 CPU-bound Background Tasks LITMUS RT s latency lower than on Linux 3.0? Scheduling Latency (!s) Average (99% conf.) 72.7 Maximum Latency under PREEMPT_RT is significantly lower P-FP (LITMUS^RT) Linux 3.0 PREEMPT_RT 51
55 LITMUS RT vs. Linux 3.0:! CPU-bound Background Tasks log scale! number of samples 1e+07 1e Linux 3.0: scheduling latency (CPU-bound bg tasks) Linux 3.0 P-FP(LITMUS min=2.04us max=72.73us avg=4.22us median=3.86us stdev=1.37us RT ) avg=4.22!s max=72.73!s avg=5.17!s max=47.59!s samples: total= Scheduling Latency (!s) (Bin size = 1!s) overhead in microseconds (bin size = 1.00us) 52
56 LITMUS RT vs. Linux 3.0:! CPU-bound Background Tasks number of samples 1e+07 1e Linux 3.0: scheduling latency (CPU-bound bg tasks) Linux 3.0 P-FP(LITMUS min=2.04us max=72.73us avg=4.22us median=3.86us stdev=1.37us RT ) avg=4.22!s max=72.73!s avg=5.17!s max=47.59!s samples: total= samples out of ~6 million Scheduling Latency (!s) (Bin size = 1!s) overhead in microseconds (bin size = 1.00us) 53
57 LITMUS RT vs. Linux 3.0:! CPU-bound Background Tasks number of samples 1e+07 1e Linux 3.0: scheduling latency (CPU-bound bg tasks) Linux 3.0 P-FP(LITMUS min=2.04us max=72.73us avg=4.22us median=3.86us stdev=1.37us RT ) avg=4.22!s max=72.73!s avg=5.17!s max=47.59!s Slightly worse latencies on average Scheduling Latency (!s) (Bin size = 1!s) overhead in microseconds (bin size = 1.00us) samples: total=
58 LITMUS RT vs. Linux 3.0:! CPU-bound Background Tasks number of samples 1e+07 1e Linux 3.0: scheduling latency (CPU-bound bg tasks) Linux 3.0 P-FP(LITMUS min=2.04us max=72.73us avg=4.22us median=3.86us stdev=1.37us RT ) avg=4.22!s max=72.73!s avg=5.17!s max=47.59!s Scheduling Latency (!s) (Bin size = 1!s) overhead in microseconds (bin size = 1.00us) samples: total= extra spinlock lack of low-level optimizations 55
59 CPU-bound Background Tasks LITMUS RT incurs slightly Scheduling more latency Latency (!s) than 80Linux 3.0 on average Average (99% conf.) 72.7 Maximum Latency under PREEMPT_RT is significantly lower P-FP (LITMUS^RT) Linux 3.0 PREEMPT_RT 56
60 Third Scenario I/O-bound background tasks hackbench: Linux scheduler stress tool bonnie++: Disk and file system benchmark wget: Network activity 57
61 Third Scenario I/O-bound background tasks Causes a lot of system calls and interrupts hackbench: Linux scheduler stress tool bonnie++: Disk and file system benchmark wget: Network activity 58
62 I/O-bound Background Tasks log scale! Scheduling Latency (!s) 10, Average (99% conf.) Maximum 1, P-FP (LITMUS^RT) Linux 3.0 PREEMPT_RT 59
63 Huge impact on I/O-bound Background scheduling Tasks latency under standard Linux. Scheduling Latency (!s) Average (99% conf.) Maximum 10, , P-FP (LITMUS^RT) Linux 3.0 PREEMPT_RT 60
64 Huge impact on I/O-bound Background scheduling Tasks latency under standard Linux. Scheduling Latency (!s) Average (99% conf.) Maximum 10, ,000 PREEMPT_RT is not affected by the interrupt load! P-FP (LITMUS^RT) Linux 3.0 PREEMPT_RT 61
65 Summary 1.Cost of the scheduling plugin layer 2.LITMUS RT vs. PREEMPT_RT 62
66 Summary 1.Cost of the scheduling plugin layer The overhead introduced by LITMUS RT is small 2.LITMUS RT vs. PREEMPT_RT 63
67 Summary 1.Cost of the scheduling plugin layer The overhead introduced by LITMUS RT is small 2.LITMUS RT vs. PREEMPT_RT PREEMPT_RT significantly decreases scheduling latency. 64
68 Importance of Feather-Trace cyclictest was ported to LITMUS RT. Should it become the standard tool for evaluating LITMUS RT? 65
69 Importance of Feather-Trace cyclictest was ported to LITMUS RT. Should it become the standard tool for evaluating LITMUS RT? NO! 66
70 Interference? OOPS... a higher priority task interrupt! wake up task T T T! s ISR called scheduler invoked 67
71 Interference? interrupt! wake up task T T T! s? ISR called scheduler invoked another task picked 68
72 Interference? interrupt! wake up task T T T! s?... P ISR called scheduler invoked another task picked task picked 69
73 Interference? interrupt! wake up task T This length of this interval depends on the execution of other tasks... T T! s?... P ISR called scheduler invoked another task picked task picked 70
74 Interference?..., which depends on other kinds of overhead, preemptions, context switches, etc. interrupt! wake up task T This length of this interval depends on the execution of other tasks... T T! s?... P ISR called scheduler invoked another task picked task picked 71
75 Interference?..., which depends on other kinds of overhead, preemptions, context switches, etc. interrupt! wake up task This length of this interval depends on the execution of other tasks... T T T Overhead-aware schedulability analysis is required!! s?... P ISR called scheduler invoked another task picked task picked 72
76 cyclictest or Feather-Trace? BOTH! cyclictest LITMUS RT /Feather-Trace Practical, easy-tounderstand measure Can easily compare responsiveness between kernels. For tasks other than the highest-priority ones, schedulability analysis is necessary. Only with Feather-Trace we obtain the data required for the analysis. 73
77 Conclusion LITMUS RT : small overheads in comparison with stock Linux PREEMPT_RT is highly necessary for Linux as a RTOS LITMUS RT will be ported to PREEMPT_RT soon Scheduling latency should not be used as the sole metric for quantifying real-time guarantees 74
78 Thank You! We also have a patch that implements Feather-Trace on top of standard Linux, enabling fine-grained measurements. 75
79 Appendix 76
80 Linux 3.0 vs. Linux
81 No Background Tasks Scheduling Latency (!s) Average Maximum Linux 3.0 Linux
82 No Background Tasks Scheduling Latency (!s) 25 Average Maximum 20 Similar averages Linux 3.0 Linux
83 No Background Tasks number of samples number of samples 1e+07 1e e+07 1e Linux 3.0 Linux 3.0: scheduling latency (no bg tasks) min=1.87us max=13.89us avg=2.89us median=2.77us stdev=0.51us avg=2.89!s max=13.89!s Linux samples: total= Linux : scheduling latency (no bg tasks) min=1.52us overhead max=19.73us in microseconds avg=2.89us (bin median=2.58us size = 1.00us) stdev=0.69us avg=2.89!s max=19.73!s samples: total= Similar shapes
84 CPU-bound Background Tasks Scheduling Latency (!s) Average Maximum Linux 3.0 Linux
85 CPU-bound Background Tasks Scheduling Latency (!s) Similar averages 40 Average Maximum Linux 3.0 Linux
86 CPU-bound Background Tasks number of samples number of samples 1e+07 1e e+07 1e Linux 3.0 Linux 3.0: scheduling latency (CPU-bound bg tasks) min=2.04us max=72.73us avg=4.22us median=3.86us stdev=1.37us avg=4.22!s max=72.73!s Linux samples: total= Linux : scheduling latency (CPU-bound bg tasks) min=2.14us overhead max=64.47us in microseconds avg=4.02us (bin median=3.67us size = 1.00us) stdev=1.20us avg=4.02!s max=64.47!s samples: total= Similar shapes
87 I/O-bound Background Tasks log scale! Scheduling Latency (!s) 10, Average Maximum , Linux 3.0 Linux
88 I/O-bound Background Tasks Scheduling Latency (!s) 10, ,000 Similar averages 100 Average Maximum Linux 3.0 Linux
89 I/O-bound Background Tasks number of samples number of samples 1e+07 1e e+07 1e Linux 3.0 Linux 3.0: scheduling latency (IO-bound bg tasks) min=1.85us max= us avg=6.39us median=4.98us stdev=13.25us avg=6.39!s max= !s Linux samples: total= Linux : scheduling latency (IO-bound bg tasks) min=1.85us max= us overhead in microseconds avg=6.23us (bin median=4.60us size = 1.00us) stdev=15.91us avg=6.23!s max= !s samples: total= Similar shapes
90 LITMUS RT s plugins 87
91 No Background Tasks Scheduling Latency (!s) Average 26.2 Maximum P-FP PSN-EDF GSN-EDF 88
92 No Background Tasks Similar shapes 1e+07 1e LITMUS^RT G-EDF: scheduling latency (no bg tasks) min=1.59us max=14.34us avg=3.06us median=2.56us stdev=1.18us 1e+07 samples: total= e number of samples LITMUS^RT P-EDF: scheduling latency (no bg tasks) min=1.76us max=26.17us avg=3.45us median=2.87us stdev=1.24us overhead in microseconds (bin size = 1.00us) overhead in microseconds (bin size = 1.00us) LITMUS^RT P-FP: scheduling P-FPlatency (no bg tasks) min=1.96us max=15.13us avg=3.45us median=3.10us stdev=1.03us number of samples GSN-EDF avg=3.06!s max=14.34!s 1e+07 1e avg=3.45!s max=15.13!s samples: total= overhead in microseconds (bin size = 1.00us) PSN-EDF avg=3.45!s max=26.17!s samples: total=
93 No Background Tasks Similar shapes 1e+07 1e LITMUS^RT G-EDF: scheduling latency (no bg tasks) min=1.59us max=14.34us avg=3.06us median=2.56us stdev=1.18us 1e+07 samples: total= e+06 number of samples LITMUS^RT P-EDF: scheduling latency (no bg tasks) min=1.76us max=26.17us avg=3.45us median=2.87us stdev=1.24us overhead in microseconds (bin size = 1.00us) overhead in microseconds (bin size = 1.00us) LITMUS^RT P-FP: scheduling P-FPlatency (no bg tasks) min=1.96us max=15.13us avg=3.45us median=3.10us stdev=1.03us number of samples GSN-EDF avg=3.06!s max=14.34!s 1e+07 1e avg=3.45!s max=15.13!s samples: total= overhead in microseconds (bin size = 1.00us) PSN-EDF avg=3.45!s max=26.17!s 2 samples samples: total=
94 CPU-bound Background Tasks Scheduling Latency (!s) 80 Average 73.3 Maximum P-FP PSN-EDF GSN-EDF 91
95 CPU-bound Background Tasks 1e+07 1e LITMUS^RT G-EDF: scheduling latency (CPU-bound bg tasks) min=1.91us max=60.20us avg=5.81us median=5.39us stdev=2.51us samples: total= e+07 1e+06 number of samples LITMUS^RT P-EDF: scheduling latency (CPU-bound bg tasks) min=2.40us max=73.27us avg=5.14us median=4.21us stdev=2.95us samples: total= overhead in microseconds (bin size = 1.00us) overhead in microseconds (bin size = 1.00us) LITMUS^RT P-FP: scheduling P-FP latency (CPU-bound bg tasks) min=2.10us max=47.59us avg=5.17us median=4.37us stdev=2.75us number of samples GSN-EDF avg=5.81!s max=60.20!s 1e+07 1e avg=5.17!s max=47.59!s overhead in microseconds (bin size = 1.00us) samples: total= PSN-EDF avg=5.14!s max=73.27!s Similar shapes 92
96 CPU-bound Background Tasks 1e+07 1e LITMUS^RT G-EDF: scheduling latency (CPU-bound bg tasks) min=1.91us max=60.20us avg=5.81us median=5.39us stdev=2.51us samples: total= e+07 1e+06 number of samples LITMUS^RT P-EDF: scheduling latency (CPU-bound bg tasks) min=2.40us max=73.27us avg=5.14us median=4.21us stdev=2.95us samples: total= samples overhead in microseconds (bin size = 1.00us) overhead in microseconds (bin size = 1.00us) LITMUS^RT P-FP: scheduling P-FP latency (CPU-bound bg tasks) min=2.10us max=47.59us avg=5.17us median=4.37us stdev=2.75us number of samples GSN-EDF avg=5.81!s max=60.20!s 1e+07 1e avg=5.17!s max=47.59!s overhead in microseconds (bin size = 1.00us) samples: total= PSN-EDF avg=5.14!s max=73.27!s Similar shapes 93
97 I/O-bound Background Tasks log scale! Scheduling Latency (!s) 10, Average Maximum , P-FP PSN-EDF GSN-EDF 94
98 I/O-bound Background Tasks Scheduling Latency (!s) 10, Similar results 1,000for P-FP and PSN-EDF 100 Average Maximum P-FP PSN-EDF GSN-EDF 95
99 I/O-bound Background Tasks Scheduling Latency (!s) 10, Similar results 1,000for P-FP and PSN-EDF 100 Average Maximum Higher average for GSN-EDF P-FP PSN-EDF GSN-EDF 96
100 I/O-bound Background Tasks 1e+07 1e LITMUS^RT G-EDF: scheduling latency (IO-bound bg tasks) min=2.26us max= us avg=10.95us median=7.38us stdev=14.11us 1e+07 samples: total= e number of samples LITMUS^RT P-EDF: scheduling latency (IO-bound bg tasks) min=1.98us max= us avg=6.56us median=5.11us stdev=12.66us overhead in microseconds (bin size = 1.00us) overhead in microseconds (bin size = 1.00us) LITMUS^RT P-FP: scheduling P-FP latency (IO-bound bg tasks) min=1.89us max= us avg=6.60us median=5.17us stdev=12.76us number of samples GSN-EDF avg=10.95!s max= !s 1e+07 1e avg=6.60!s max= !s overhead in microseconds (bin size = 1.00us) samples: total= PSN-EDF avg=6.56!s max= !s samples: total= Similar shapes 97
101 I/O-bound Background Tasks 1e+07 1e LITMUS^RT G-EDF: scheduling latency (IO-bound bg tasks) min=2.26us max= us avg=10.95us median=7.38us stdev=14.11us 1e+07 samples: total= e number of samples LITMUS^RT P-EDF: scheduling latency (IO-bound bg tasks) min=1.98us max= us avg=6.56us median=5.11us stdev=12.66us overhead in microseconds (bin size = 1.00us) overhead in microseconds (bin size = 1.00us) LITMUS^RT P-FP: scheduling P-FP latency (IO-bound bg tasks) min=1.89us max= us avg=6.60us median=5.17us stdev=12.76us number of samples GSN-EDF avg=10.95!s max= !s Higher average 1e+07 1e avg=6.60!s max= !s overhead in microseconds (bin size = 1.00us) samples: total= PSN-EDF avg=6.56!s max= !s samples: total= Similar shapes 98
102 threadirqs in Linux
103 No Background Tasks number of samples number of samples Linux threadirqs Linux : scheduling latency (no bg tasks) min=1.60us max=25.15us avg=2.82us median=2.65us stdev=0.47us avg=2.82!s max=25.15!s 1e+07 samples: total= e Linux : scheduling Linux latency (no bg tasks) min=1.52us overhead max=19.73us in microseconds avg=2.89us (bin median=2.58us size = 1.00us) stdev=0.69us avg=2.89!s max=19.73!s 1e+07 samples: total= e
104 CPU-bound Background Tasks number of samples number of samples 1e+07 1e e+07 1e Linux threadirqs Linux : scheduling latency (CPU-bound bg tasks) min=1.95us max=40.90us avg=3.67us median=3.29us stdev=1.19us avg=3.67!s max=40.90!s Linux samples: total= Linux : scheduling latency (CPU-bound bg tasks) min=2.14us overhead max=64.47us in microseconds avg=4.02us (bin median=3.67us size = 1.00us) stdev=1.20us avg=4.02!s max=64.47!s samples: total=
105 I/O-bound Background Tasks number of samples number of samples 1e+07 1e e+07 1e Linux threadirqs Linux : scheduling latency (IO-bound bg tasks) min=1.51us max= us avg=5.89us median=4.67us stdev=14.33us avg=5.89!s max= !s Linux samples: total= Linux : scheduling latency (IO-bound bg tasks) min=1.85us max= us overhead in microseconds avg=6.23us (bin median=4.60us size = 1.00us) stdev=15.91us avg=6.23!s max= !s samples: total=
Improved Analysis and Evaluation of Real-Time Semaphore Protocols for P-FP Scheduling
Improved Analysis and Evaluation of Real-Time Semaphore Protocols for P-FP Scheduling RTAS 13 April 10, 2013 Björn B. bbb@mpi-sws.org Semaphores + P-FP Scheduling Used in practice: VxWorks, QNX, ThreadX,
More informationEvaluation of Real-time Performance in Embedded Linux. Hiraku Toyooka, Hitachi. LinuxCon Europe Hitachi, Ltd All rights reserved.
Evaluation of Real-time Performance in Embedded Linux LinuxCon Europe 2014 Hiraku Toyooka, Hitachi 1 whoami Hiraku Toyooka Software engineer at Hitachi " Working on operating systems Linux (mainly) for
More informationFast on Average, Predictable in the Worst Case
Fast on Average, Predictable in the Worst Case Exploring Real-Time Futexes in LITMUSRT Roy Spliet, Manohar Vanga, Björn Brandenburg, Sven Dziadek IEEE Real-Time Systems Symposium 2014 December 2-5, 2014
More informationRealtime BoF Session RealTime Testing Best Practice of RealTime WG YungJoon Jung
Realtime BoF Session RealTime Testing Best Practice of RealTime WG YungJoon Jung April 15th, 2008 CE Linux Forum 1 Contents Introduction Current RealTime Testing Methods Plan April 15th, 2008 CE Linux
More informationEvaluation of uclinux and PREEMPT_RT for Machine Control System
Evaluation of uclinux and PREEMPT_RT for Machine Control System 2014/05/20 Hitachi, Ltd. Yokohama Research Lab Linux Technology Center Yoshihiro Hayashi yoshihiro.hayashi.cd@hitachi.com Agenda 1. Background
More informationReal Time Linux patches: history and usage
Real Time Linux patches: history and usage Presentation first given at: FOSDEM 2006 Embedded Development Room See www.fosdem.org Klaas van Gend Field Application Engineer for Europe Why Linux in Real-Time
More informationLITMUS RT : A Hands-On Primer
LITMUS RT : A Hands-On Primer Manohar Vanga, Mahircan Gül, Björn Brandenburg MPI-SWS, Kaiserslautern, Germany Goals A whirlwind tour of LITMUS RT Working with scheduler plugins. Running real-time tasks
More informationComputer Science Window-Constrained Process Scheduling for Linux Systems
Window-Constrained Process Scheduling for Linux Systems Richard West Ivan Ganev Karsten Schwan Talk Outline Goals of this research DWCS background DWCS implementation details Design of the experiments
More informationMeasuring the impacts of the Preempt-RT patch
Measuring the impacts of the Preempt-RT patch maxime.chevallier@smile.fr October 25, 2017 RT Linux projects Simulation platform : bi-xeon, lots ot RAM 200µs wakeup latency, networking Test bench : Intel
More informationReal-Time Performance of Linux. OS Latency
Real-Time Performance of Linux Among others: A Measurement-Based Analysis of the Real- Time Performance of Linux (L. Abeni, A. Goel, C. Krasic, J. Snow, J. Walpole) [RTAS 2002] OS Latency Definition [OS
More informationHow Linux RT_PREEMPT Works
How Linux RT_PREEMPT Works A common observation about real time systems is that the cost of the increased determinism of real time is decreased throughput and increased average latency. This presentation
More informationLITMUS RT : A Hands-On Primer
LITMUS RT : A Hands-On Primer Manohar Vanga, Mahircan Gül, Björn Brandenburg MPI-SWS, Kaiserslautern, Germany Goals A whirlwind tour of LITMUS RT Working with scheduler plugins. Running real-time tasks
More informationEmpirical Approximation and Impact on Schedulability
Cache-Related Preemption and Migration Delays: Empirical Approximation and Impact on Schedulability OSPERT 2010, Brussels July 6, 2010 Andrea Bastoni University of Rome Tor Vergata Björn B. Brandenburg
More information10 th AUTOSAR Open Conference
10 th AUTOSAR Open Conference Yuchen Zhou, Thomas E Fuhrman, Prathap Venugopal General Motors Scheduling Techniques for Automated Driving Systems using the AUTOSAR Adaptive Platform AUTOSAR Nov-2017 Agenda
More informationLatency on preemptible Real-Time Linux
Appendix 1 Latency on preemptible Real-Time Linux on DCP-SH7780 Contents 1.1 Getting Started.......................................... 1 1.2 Rtrtc Driver........................................... 2 1.3
More informationEECS 571 Principles of Real-Time Embedded Systems. Lecture Note #10: More on Scheduling and Introduction of Real-Time OS
EECS 571 Principles of Real-Time Embedded Systems Lecture Note #10: More on Scheduling and Introduction of Real-Time OS Kang G. Shin EECS Department University of Michigan Mode Changes Changes in mission
More informationHardware Latencies How to flush them out (A use case) Steven Rostedt Red Hat
Hardware Latencies How to flush them out (A use case) Steven Rostedt Red Hat Here s a story, of a lovely lady... No this isn t the Brady Bunch Nor is it about a lovely lady But it probably could have been
More informationDevelopment of Real-Time Systems with Embedded Linux. Brandon Shibley Senior Solutions Architect Toradex Inc.
Development of Real-Time Systems with Embedded Linux Brandon Shibley Senior Solutions Architect Toradex Inc. Overview Toradex ARM-based System-on-Modules Pin-Compatible SoM Families In-house HW and SW
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 informationRT extensions/applications of general-purpose OSs
EECS 571 Principles of Real-Time Embedded Systems Lecture Note #15: RT extensions/applications of general-purpose OSs General-Purpose OSs for Real-Time Why? (as discussed before) App timing requirements
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 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 informationAdaptive Clustered EDF in LITMUS RT
Adaptive Clustered EDF in LITMUS RT Aaron Block,. Sherman, Texas William Kelley, BAE Systems. Ft. Worth, Texas Adaptable System: Whisper Whisper is a motion tracking system Speakers are placed on users
More informationPath analysis vs. empirical determination of a system's real-time capabilities: The crucial role of latency tests
Path analysis vs. empirical determination of a system's real-time capabilities: The crucial role of latency tests Carsten Emde Open Source Automation Development Lab (OSADL) eg Issues leading to system
More informationAbstract. Testing Parameters. Introduction. Hardware Platform. Native System
Abstract In this paper, we address the latency issue in RT- XEN virtual machines that are available in Xen 4.5. Despite the advantages of applying virtualization to systems, the default credit scheduler
More informationOperating Systems. Process scheduling. Thomas Ropars.
1 Operating Systems Process scheduling Thomas Ropars thomas.ropars@univ-grenoble-alpes.fr 2018 References The content of these lectures is inspired by: The lecture notes of Renaud Lachaize. The lecture
More informationRt-tests Status report
Rt-tests Status report Quick overview of the tests in the suite Discussion of recent changes and new features Ideas for the future Discussion / Open the floor to a wishlist for the future. rt-tests Suite
More informationScaling Global Scheduling with Message Passing
Scaling Global Scheduling with Message Passing Felipe Cerqueira Manohar Vanga Björn B. Brandenburg Max Planck Institute for Software Systems (MPI-SWS) Abstract Global real-time schedulers have earned the
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. 5. Operating Systems. Lothar Thiele. Computer Engineering and Networks Laboratory
Embedded Systems 5. Operating Systems Lothar Thiele Computer Engineering and Networks Laboratory Embedded Operating Systems 5 2 Embedded Operating System (OS) Why an operating system (OS) at all? Same
More informationShielded Processors: Guaranteeing Sub-millisecond Response in Standard Linux
Shielded Processors: Guaranteeing Sub-millisecond Response in Standard Linux Steve Brosky and Steve Rotolo Concurrent Computer Corporation 2881 Gateway Drive, Pompano Beach, FL 33069 Abstract The low latency
More informationProcesses and Threads
OPERATING SYSTEMS CS3502 Spring 2018 Processes and Threads (Chapter 2) Processes Two important types of dynamic entities in a computer system are processes and threads. Dynamic entities only exist at execution
More informationAdventures In Real-Time Performance Tuning, Part 2
Adventures In Real-Time Performance Tuning, Part 2 The real-time for Linux patchset does not guarantee adequate real-time behavior for all target platforms. When using real-time Linux on a new platform
More informationTuned Pipes: End-to-end Throughput and Delay Guarantees for USB Devices. Ahmad Golchin, Zhuoqun Cheng and Richard West Boston University
Tuned Pipes: End-to-end Throughput and Delay Guarantees for USB Devices Ahmad Golchin, Zhuoqun Cheng and Richard West Boston University Motivations Cyber-physical applications Sensor-actuator loops Ubiquity
More informationANALYSIS OF A DYNAMIC FREQUENCY SCALING ALGORTIHM ON XSCALE.
ANALYSIS OF A DYNAMIC FREQUENCY SCALING ALGORTIHM ON XSCALE. Group 9 Ishdeep Singh Sawhney (issawhne@unity.ncsu.edu) Shobhit Kanaujia (sokanauj@unity.ncsu.edu) Prasanth Ganesan (pganesa@unity.ncsu.edu)
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 informationCommercial Real-time Operating Systems An Introduction. Swaminathan Sivasubramanian Dependable Computing & Networking Laboratory
Commercial Real-time Operating Systems An Introduction Swaminathan Sivasubramanian Dependable Computing & Networking Laboratory swamis@iastate.edu Outline Introduction RTOS Issues and functionalities LynxOS
More informationCEC 450 Real-Time Systems
CEC 450 Real-Time Systems Lecture 6 Accounting for I/O Latency September 28, 2015 Sam Siewert A Service Release and Response C i WCET Input/Output Latency Interference Time Response Time = Time Actuation
More informationPerformance Evaluation of Xenomai 3
Performance Evaluation of Xenomai 3 Ching-Chun (Jim) Huang **, Chan-Hsiang Lin **, and Che-Kang Wu * * Department of Computer Science and Information Engineering, National Cheng Kung University, Taiwan
More informationExtending RTAI Linux with Fixed-Priority Scheduling with Deferred Preemption
Extending RTAI Linux with Fixed-Priority Scheduling with Deferred Preemption Mark Bergsma, Mike Holenderski, Reinder J. Bril, Johan J. Lukkien System Architecture and Networking Department of Mathematics
More informationA TimeSys Perspective on the Linux Preemptible Kernel Version 1.0. White Paper
A TimeSys Perspective on the Linux Preemptible Kernel Version 1.0 White Paper A TimeSys Perspective on the Linux Preemptible Kernel A White Paper from TimeSys Corporation Introduction One of the most basic
More informationUNIT -3 PROCESS AND OPERATING SYSTEMS 2marks 1. Define Process? Process is a computational unit that processes on a CPU under the control of a scheduling kernel of an OS. It has a process structure, called
More informationEfficient Implementation of IPCP and DFP
Efficient Implementation of IPCP and DFP N.C. Audsley and A. Burns Department of Computer Science, University of York, York, UK. email: {neil.audsley, alan.burns}@york.ac.uk Abstract Most resource control
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 informationBy Arjan Van De Ven, Senior Staff Software Engineer at Intel.
Absolute Power By Arjan Van De Ven, Senior Staff Software Engineer at Intel. Abstract: Power consumption is a hot topic from laptop, to datacenter. Recently, the Linux kernel has made huge steps forward
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 informationReal-time in embedded Linux systems
Real-time in embedded Linux systems Michael Opdenacker Copyright 2004-2011, Free Electrons. Creative Commons BY-SA 3.0 license Latest update: Nov 2, 2011, Document sources, updates and translations: http://free-electrons.com/docs/realtime
More informationMultiprocessor Systems. Chapter 8, 8.1
Multiprocessor Systems Chapter 8, 8.1 1 Learning Outcomes An understanding of the structure and limits of multiprocessor hardware. An appreciation of approaches to operating system support for multiprocessor
More informationCSE 120 Principles of Operating Systems
CSE 120 Principles of Operating Systems Spring 2018 Lecture 15: Multicore Geoffrey M. Voelker Multicore Operating Systems We have generally discussed operating systems concepts independent of the number
More informationSchedulability Analysis of the Linux Push and Pull Scheduler with Arbitrary Processor Affinities
Schedulability Analysis of the Linux Push and Pull Scheduler with Arbitrary Processor Affinities Arpan Gujarati, Felipe Cerqueira, and Björn Brandenburg Multiprocessor real-time scheduling theory Global
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 informationRealtime Tuning 101. Tuning Applications on Red Hat MRG Realtime Clark Williams
Realtime Tuning 101 Tuning Applications on Red Hat MRG Realtime Clark Williams Agenda Day One Terminology and Concepts Realtime Linux differences from stock Linux Tuning Tools for Tuning Tuning Tools Lab
More informationTimers 1 / 46. Jiffies. Potent and Evil Magic
Timers 1 / 46 Jiffies Each timer tick, a variable called jiffies is incremented It is thus (roughly) the number of HZ since system boot A 32-bit counter incremented at 1000 Hz wraps around in about 50
More informationRT- Xen: Real- Time Virtualiza2on. Chenyang Lu Cyber- Physical Systems Laboratory Department of Computer Science and Engineering
RT- Xen: Real- Time Virtualiza2on Chenyang Lu Cyber- Physical Systems Laboratory Department of Computer Science and Engineering Embedded Systems Ø Consolidate 100 ECUs à ~10 multicore processors. Ø Integrate
More informationCSE398: Network Systems Design
CSE398: Network Systems Design Instructor: Dr. Liang Cheng Department of Computer Science and Engineering P.C. Rossin College of Engineering & Applied Science Lehigh University February 23, 2005 Outline
More information* There are more than 100 hundred commercial RTOS with memory footprints from few hundred kilobytes to large multiprocessor systems
Presented material is based on ü Laura Carnevali: Formal Methods in the Development Life Cycle of Realtime Systems. PhD-Thesis, Univ. of Florence (IT) 2010. (Ch. 1.1-1.3) ü Doug Abbott: Linux for Embedded
More informationSMD149 - Operating Systems
SMD149 - Operating Systems Roland Parviainen November 3, 2005 1 / 45 Outline Overview 2 / 45 Process (tasks) are necessary for concurrency Instance of a program in execution Next invocation of the program
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 informationQoS support for Intelligent Storage Devices
QoS support for Intelligent Storage Devices Joel Wu Scott Brandt Department of Computer Science University of California Santa Cruz ISW 04 UC Santa Cruz Mixed-Workload Requirement General purpose systems
More informationPaul E. McKenney, Distinguished Engineer IBM Linux Technology Center
Ottawa Linux Symposium Real Time vs. Real Fast : How to Choose? Paul E. McKenney, Distinguished Engineer July 23, 2008 Overview 2008 Ottawa Linux Symposium What is Real Time and Real Fast, Anyway??? Example
More informationA Fully Preemptive Multiprocessor Semaphore Protocol for Latency-Sensitive Real-Time Applications
A Fully Preemptive Multiprocessor Semaphore Protocol for Latency-Sensitive Real-Time Applications ECRTS 13 July 12, 2013 Björn B. bbb@mpi-sws.org A Rhetorical Question On uniprocessors, why do we use the
More informationReal-Time Internet of Things
Real-Time Internet of Things Chenyang Lu Cyber-Physical Systems Laboratory h7p://www.cse.wustl.edu/~lu/ Internet of Things Ø Convergence of q Miniaturized devices: integrate processor, sensors and radios.
More informationEvaluation of an RTOS on top of a hosted virtual machine system
Evaluation of an RTOS on top of a hosted virtual machine system Mehdi Aichouch, Jean-Christophe Prevotet, Fabienne Nouvel To cite this version: Mehdi Aichouch, Jean-Christophe Prevotet, Fabienne Nouvel.
More informationUniprocessor Scheduling. Basic Concepts Scheduling Criteria Scheduling Algorithms. Three level scheduling
Uniprocessor Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Three level scheduling 2 1 Types of Scheduling 3 Long- and Medium-Term Schedulers Long-term scheduler Determines which programs
More informationECE 7650 Scalable and Secure Internet Services and Architecture ---- A Systems Perspective. Part I: Operating system overview: Processes and threads
ECE 7650 Scalable and Secure Internet Services and Architecture ---- A Systems Perspective Part I: Operating system overview: Processes and threads 1 Overview Process concept Process scheduling Thread
More informationReal-Time Technology in Linux
Real-Time Technology in Linux Sven-Thorsten Dietrich Real-Time Architect Introductions MontaVista Software is a leading global supplier of systems software and development tools for intelligent connected
More informationThreads. Raju Pandey Department of Computer Sciences University of California, Davis Spring 2011
Threads Raju Pandey Department of Computer Sciences University of California, Davis Spring 2011 Threads Effectiveness of parallel computing depends on the performance of the primitives used to express
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 informationUnderstanding Real Time Linux. Alex Shi
Understanding Real Time Linux Alex Shi Agenda What s real time OS RTL project status RT testing and tracing Reasons of latency and solutions for them Resources Summary What s real time OS Real time and
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 informationEvaluation of Real-time operating systems for FGC controls
Evaluation of Real-time operating systems for FGC controls Konstantinos Chalas, CERN, Geneva, Switzerland September 2015 Abstract Power Converter Control for various experiments at CERN, is conducted using
More informationThreads. CS3026 Operating Systems Lecture 06
Threads CS3026 Operating Systems Lecture 06 Multithreading Multithreading is the ability of an operating system to support multiple threads of execution within a single process Processes have at least
More informationLecture Topics. Announcements. Today: Advanced Scheduling (Stallings, chapter ) Next: Deadlock (Stallings, chapter
Lecture Topics Today: Advanced Scheduling (Stallings, chapter 10.1-10.4) Next: Deadlock (Stallings, chapter 6.1-6.6) 1 Announcements Exam #2 returned today Self-Study Exercise #10 Project #8 (due 11/16)
More informationScheduling Mar. 19, 2018
15-410...Everything old is new again... Scheduling Mar. 19, 2018 Dave Eckhardt Brian Railing Roger Dannenberg 1 Outline Chapter 5 (or Chapter 7): Scheduling Scheduling-people/textbook terminology note
More informationIX: A Protected Dataplane Operating System for High Throughput and Low Latency
IX: A Protected Dataplane Operating System for High Throughput and Low Latency Belay, A. et al. Proc. of the 11th USENIX Symp. on OSDI, pp. 49-65, 2014. Reviewed by Chun-Yu and Xinghao Li Summary In this
More informationhrtimers and beyond transformation of the Linux time(r) system OLS 2006
hrtimers and beyond transformation of the Linux time(r) system Thomas Gleixner Douglas Niehaus OLS 2006 Original time(r) system Arch 1 Timekeeping TOD Clock source Tick ISR Clock event source Process acc.
More informatione-ale-rt-apps Building Real-Time Applications for Linux Version c CC-BY SA4
e-ale-rt-apps Building Real-Time Applications for Linux Version 20181023 ii The E-ALE (Embedded Apprentice Linux Engineer) is a series of seminars held at existing conferences covering topics which are
More informationChapter 5: CPU Scheduling. Operating System Concepts 8 th Edition,
Chapter 5: CPU Scheduling Operating System Concepts 8 th Edition, Hanbat National Univ. Computer Eng. Dept. Y.J.Kim 2009 Chapter 5: Process Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms
More informationArachne. Core Aware Thread Management Henry Qin Jacqueline Speiser John Ousterhout
Arachne Core Aware Thread Management Henry Qin Jacqueline Speiser John Ousterhout Granular Computing Platform Zaharia Winstein Levis Applications Kozyrakis Cluster Scheduling Ousterhout Low-Latency RPC
More informationAnalysis and Implementation of Global Preemptive Fixed-Priority Scheduling with Dynamic Cache Allocation
Analysis and Implementation of Global Preemptive Fixed-Priority Scheduling with Dynamic Cache Allocation Meng Xu Linh Thi Xuan Phan Hyon-Young Choi Insup Lee Department of Computer and Information Science
More informationReal-Time Operating Systems Design and Implementation. LS 12, TU Dortmund
Real-Time Operating Systems Design and Implementation (slides are based on Prof. Dr. Jian-Jia Chen) Anas Toma, Jian-Jia Chen LS 12, TU Dortmund October 19, 2017 Anas Toma, Jian-Jia Chen (LS 12, TU Dortmund)
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 informationData Processing on Modern Hardware
Data Processing on Modern Hardware Jens Teubner, TU Dortmund, DBIS Group jens.teubner@cs.tu-dortmund.de Summer 2014 c Jens Teubner Data Processing on Modern Hardware Summer 2014 1 Part V Execution on Multiple
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 informationEmbedded Systems. 6. Real-Time Operating Systems
Embedded Systems 6. Real-Time Operating Systems Lothar Thiele 6-1 Contents of Course 1. Embedded Systems Introduction 2. Software Introduction 7. System Components 10. Models 3. Real-Time Models 4. Periodic/Aperiodic
More informationNuttX Realtime Programming
NuttX RTOS NuttX Realtime Programming Gregory Nutt Overview Interrupts Cooperative Scheduling Tasks Work Queues Realtime Schedulers Real Time == == Deterministic Response Latency Stimulus Response Deadline
More informationInterrupt response times on Arduino and Raspberry Pi. Tomaž Šolc
Interrupt response times on Arduino and Raspberry Pi Tomaž Šolc tomaz.solc@ijs.si Introduction Full-featured Linux-based systems are replacing microcontrollers in some embedded applications for low volumes,
More informationButtress: A toolkit for flexible and high fidelity I/O benchmarking
Appears in the Proceedings of the 3rd Conference on File and Storage Technologies (FAST 4). (31 Mar 2 Apr 24, San Francisco, CA). Published by USENIX, Berkeley, CA. Buttress: A toolkit for flexible and
More informationCPU Scheduling. Operating Systems (Fall/Winter 2018) Yajin Zhou ( Zhejiang University
Operating Systems (Fall/Winter 2018) CPU Scheduling Yajin Zhou (http://yajin.org) Zhejiang University Acknowledgement: some pages are based on the slides from Zhi Wang(fsu). Review Motivation to use threads
More informationOutline. Introduction. Survey of Device Driver Management in Real-Time Operating Systems
Survey of Device Driver Management in Real-Time Operating Systems Sebastian Penner +46705-396120 sebastian.penner@home.se 1 Outline Introduction What is a device driver? Commercial systems General Description
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 informationRT- Xen: Real- Time Virtualiza2on from embedded to cloud compu2ng
RT- Xen: Real- Time Virtualiza2on from embedded to cloud compu2ng Chenyang Lu Cyber- Physical Systems Laboratory Department of Computer Science and Engineering Real- Time Virtualiza2on for Cars Ø Consolidate
More informationCS140 Operating Systems Midterm Review. Feb. 5 th, 2009 Derrick Isaacson
CS140 Operating Systems Midterm Review Feb. 5 th, 2009 Derrick Isaacson Midterm Quiz Tues. Feb. 10 th In class (4:15-5:30 Skilling) Open book, open notes (closed laptop) Bring printouts You won t have
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 informationMultiprocessor System. Multiprocessor Systems. Bus Based UMA. Types of Multiprocessors (MPs) Cache Consistency. Bus Based UMA. Chapter 8, 8.
Multiprocessor System Multiprocessor Systems Chapter 8, 8.1 We will look at shared-memory multiprocessors More than one processor sharing the same memory A single CPU can only go so fast Use more than
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 informationTowards Partitioned Hierarchical Real-Time Scheduling on Multi-core Processors
Towards Partitioned Hierarchical Real-Time Scheduling on Multi-core Processors Mikael Åsberg Mälardalen Real-Time Research Center Mälardalen University Västerås, Sweden mikael.asberg@mdh.se Thomas Nolte
More informationReal Time BoF ELC 2012
Real Time BoF ELC 2012 This session provides a forum to discuss Real Time Linux, share how you are using it, and learn from the experiences of others. Please come prepared to discuss your experiences with
More informationTesting real-time Linux: What to test and how.
Testing real-time Linux: What to test and how. Sripathi Kodi sripathik@in.ibm.com Agenda IBM Linux Technology Center What is a real-time Operating System? Enterprise real-time Real-Time patches for Linux
More informationProcess Characteristics
Threads 1 Chapter 4 2 Process Characteristics We ve mentioned a process as having two characteristics Unit of resource ownership: processes have their own dedicated memory address space processes temporarily
More information