タグ

kernelと割り込みに関するrin51のブックマーク (3)

  • 割り込みの後半部、Softirq、Tasklet、Work Queue

    2011年02月15日 情報科学類 オペレーティングシステム II 筑波大学 システム情報工学研究科 コンピュータサイエンス専攻, 電子・情報工学系 新城 靖 <yas@is.tsukuba.ac.jp> このページは、次の URL にあります。 http://www.coins.tsukuba.ac.jp/~yas/coins/os2-2010/2011-02-15 あるいは、次のページから手繰っていくこともできます。 http://www.coins.tsukuba.ac.jp/~yas/ http://www.cs.tsukuba.ac.jp/~yas/ ■今日の大事な話 割り込みの前半部と後半部の分離 Softirq Tasklet Work Queue 後半部の仕組みの選択 ■割り込み、後半部 割り込みの問題点 より優先度の高い処理よりも、優先度の低い割り込み処理が先に実行され

  • ワークキュー - Linuxの備忘録とか・・・(目次へ)

    ワークキューはタスクレットと並んで遅延処理を行う手法です。タスクレットはそれをタスクとして起動するksoftirqdがすべてのタスクレット(他のソフト割り込みも)を担っていました。従ってどれか一つのタスクレットで遅延が発生すると、すべてに影響してしまうということです。それを回避する手段としてワークキュが誕生してということでしょうか。(たぶん) IBMのワークキューの使い方のサンプルです。どのようになっているかと言うと、ワークキューを使用するにあたって、まずユーザが定義したworkqueue_structでcreate_workqueue関数でワークキューを作成します。そして遅延したい処理をwork_struct構造体にまとめてワークキューに登録していくと言う具合です。タスクレットではワークキューに相当するものが無く、いきなりタスクレットのリストに登録しています。ここが大きな違いで、実はワー

  • workqueue ‐ 通信用語の基礎知識

    workqueueはtaskletの問題を改善するもので、専用のカーネルスレッドを作って実行する。また、指定した時間経過後に処理を呼び出すことが可能である。 予め用意されているシステム共有のカーネルスレッドとキューを用いても良いし、create_workqueue()関数で独自のカーネルスレッドとキューを作成し使用することもできる。 ワークキュー内でsleepした場合などは、その影響はそのワークキューが持つ全てのワークに及ぶ。

  • 1