Tweet


* bottom half と top half [#x05d6feb]
Linux カーネルの場合,
:top half|割り込みコンテキスト
:bottom half|割り込みの後に実行される,非割り込みコンテキスト.現在ではソフト割り込み or タスクレットで実行される.

という切り分けだと思ったが,他の UNIX 系 OS では

:top half|非割り込みコンテキスト
:bottom half|割り込みコンテキスト

というような使いかたをされているようである
(例えば[http://www.tsukune.org/skk/pukiwiki/index.php?%5B%5BFreeBSD%5D%5D#content_1_7 ここらへん]).

ところで,一般的なデバイスドライバでは,ドライバの開始処理と終了処理を除けば

+ システムコール
+ 割り込み処理
+ 割り込みの後処理

の3つのコンテキストがある.

ここに上記の Linux と FreeBSD の場合を当てはめてみると

|コンテキスト|Linux|FreeBSD|h
|システムコール|(名無し)|top half|
|割り込み処理|top half|bottom half|
|割り込みの後処理|bottom half|(名無し)|

ということになるのかなぁ?

おしえて,えらいひと.

*本日のツッコミ [#ybacfa55]
- 今日はお目にかかれて感激です.一般的にシステムコールからカーネルに突入するのをプロセスコンテキスト,割り込みからカーネルに突入するのを割り込みコンテキストと言うのだと思っています.BSDの場合の遅延処理(割り込みの後処理)はソフトウェア割り込みと呼ぶ気がします.用語がややこしい. -- [[りょうせい]] &new{2006-05-26 (金) 18:11:45};

#comment


トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS