Tasklet 方 式 に よ る Linux の リアルタイム 性 向 上
Tasklet 方 式 に よ る Linux の リアルタイム 性 向 上 Tasklet 方 式 に よ る Linux の リアルタイム 性 向 上
タスク切り替えの遅延原因は割り込みそのもの 短い割り込みが何度も入ることが原因 Patch の改良だけでは割り込みをコントロールできないため 改善できない 割り込み処理=ハード割り込み処理+ソフト割り込み処理 ハード割り込み処理の大部分をソフト割り込みへ移行( tas klet 化)すれば、割り込みをコントロールできる リアルタイムタスク実行中に割り込みが発生した場合、ソ フト割り込みを保留後、再スケジュールし、ソフト割り込 み完了までハード割り込みを禁止する リアルタイムタスク→非リアルタイムタスク切替え時に保 留したソフト割り込みを実行する Copyright(C) 2004 r2linux developer team 14
IDE ドライバの tasklet 化 問題点 IDE 割込み処理が他の処理をブロック 割込み中にデータ転送するため時間がかかる 対策 IDE ドライバを tasklet 化 リアルタイムタスク実行中は、 tasklet を保留 Copyright(C) 2004 r2linux developer team 15
- 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: イベントログの例( Ftp get )
- Page 17 and 18: Ethernet ドライバの tasklet
- Page 19 and 20: デバイスドライバの tasklet
- Page 21 and 22: Tasklet 化の効果 すべての
- Page 23 and 24: 起動遅れヒストグラム (Tas
- Page 25: まとめ デバイスドライバ
IDE ドライバ<strong>の</strong> tasklet 化<br />
問題点<br />
IDE 割込み処理が他<strong>の</strong>処理をブロック<br />
割込み中<strong>に</strong>データ転送す<strong>る</strong>ため時間がかか<strong>る</strong><br />
対策<br />
IDE ドライバを tasklet 化<br />
<strong>リアルタイム</strong>タスク実行中は、 tasklet を保留<br />
Copyright(C) 2004 r2linux developer team<br />
15