Linuxカーネルに関する技術情報を集めていくプロジェクトです。現在、Linuxカーネル2.6解読室の第2章までを公開中。
Intel CPUは例外種別毎に独立したエントリを設けることができる。linuxでは、起動する例外ハンドラをセットした後は、全て同じ例外エントリルーチンを共用する。上記ページフォルトもこのルーチンを共用している。
Linuxにとって特に意味を持たない例外は、例外を発生させたプロセスに送るシグナルを生成するだけである。
各種例外エントリ() 例外ハンドラ情報をセット goto error_code error_code: レジスタのセーブ(割込み発生時と同じように積み替える) 例外種別に応じた例外ハンドラを呼び出す ret_from_exception: if(BHハンドラがある) BHハンドラ実行(do_bottom_half関数) if(ユーザモードへの復帰) goto ret_with_reschedule (system_callの戻りの途中へジャンプ) レジスタのリカバ
(NIS)HirokazuTakahashi
2000年06月11日 (日) 22時29分57秒 JST1
[PageInfo]
LastUpdate: 2008-08-27 14:45:45, ModifiedBy: hiromichi-m
[Permissions]
view:all, edit:login users, delete/config:members