Tasklet 方 式 に よ る Linux の リアルタイム 性 向 上
Tasklet 方 式 に よ る Linux の リアルタイム 性 向 上 Tasklet 方 式 に よ る Linux の リアルタイム 性 向 上
リアルタイム優先度に応じたソフト割込みのマスク リアルタイムタスク実行中は tasklet 保留 ↓ リアルタイムタスクで通信・ファイル入出力したい ↓ 所定のリアルタイム優先度 ( デフォルト 90) 以上の リアルタイムタスク実行中は NET の tasklet 保留 所定のリアルタイム優先度 ( デフォルト 10) 以上の リアルタイムタスク実行中は IDE の tasklet 保留 cf .リアルタイム優先度は1〜99 Copyright(C) 2004 r2linux developer team 通常の Linux プロセスのリアルタイム優先度は0 20
Tasklet 化の効果 すべての負荷で最大起動遅れ 200usec 以下を実現 usec QT-PIDS 以外の評価ボードも 500usec 以下を実現 2000 1750 1500 1250 1000 750 500 250 0 532 411 アプリ起動 ファイル I/O Ftp get Ftp put メモリ確保 解放 Copyright(C) 2004 r2linux developer team 6432 1514 1418 147 150 168 173 142 Preemption + Low Latency Patch Tasklet 化等の改良 評価ボード オムロン QT-PIDS 21
- Page 1 and 2: Linux Conference 2004 Tasklet 方
- Page 3 and 4: なぜ、リアルタイム性向
- Page 5 and 6: リアルタイム性の測定方
- Page 7 and 8: 測定結果(1) リアルタイム
- Page 9 and 10: 測定結果(2) Low Latency Patch +
- Page 11 and 12: イベントログによる遅れ
- Page 13 and 14: イベントログの例( Ftp get )
- Page 15 and 16: IDE ドライバの tasklet 化 問
- Page 17 and 18: Ethernet ドライバの tasklet
- Page 19: デバイスドライバの tasklet
- Page 23 and 24: 起動遅れヒストグラム (Tas
- Page 25: まとめ デバイスドライバ
<strong>リアルタイム</strong>優先度<strong>に</strong>応じたソフト割込み<strong>の</strong>マスク<br />
<strong>リアルタイム</strong>タスク実行中は tasklet 保留<br />
↓<br />
<strong>リアルタイム</strong>タスクで通信・ファイル入出力したい<br />
↓<br />
所定<strong>の</strong><strong>リアルタイム</strong>優先度 ( デフォルト 90) 以<strong>上</strong><strong>の</strong><br />
<strong>リアルタイム</strong>タスク実行中は NET <strong>の</strong> tasklet 保留<br />
所定<strong>の</strong><strong>リアルタイム</strong>優先度 ( デフォルト 10) 以<strong>上</strong><strong>の</strong><br />
<strong>リアルタイム</strong>タスク実行中は IDE <strong>の</strong> tasklet 保留<br />
cf .<strong>リアルタイム</strong>優先度は1〜99<br />
Copyright(C) 2004 r2linux developer team<br />
通常<strong>の</strong> <strong>Linux</strong> プロセス<strong>の</strong><strong>リアルタイム</strong>優先度は0<br />
20