03 後期勉強会一年の部【川合】
- 1. 割り込みと例外
割り込み
信号の出所による分類
+-非同期割り込み(割り込み) :CPU 外から生成
+-マスカブル割り込み :INTRpin eflags の IF クリアで遮断可能
+-ノンマスカブル割り込み :NMI(NonMaskable Interrupt)pin.遮断不可
+同期割り込み(例外) :CPU 内から生成
+-ハードウェア例外
+-フォルト :例外処理が終わると例外を発生させた命令から再開
+-トラップ :例外処理が終わると例外を発生させた命令の次の命令から再開
+-アボード :まずい例外
+-ソフトウェア割り込み :トラップをプログラムにより発生
信号の重要性による分類
+-トップハーフ :すぐに実行
+-クリティカル :IRQ を遮断する.緊急
+-ノンクリティカル :IRQ を遮断しない
+-ボトムハーフ :後で実行.キューに保管
+-ノンクリティカル延滞可能 :
ベクタ :割り込み,例外の識別子.intel 8bit
例外,ノンマスカブル割り込み0~31
マスカブル割り込み 32~47
ソフトウェア割り込み 48~255
IRQ(Interrupt ReQuest) :マスカブル割り込みの要求
割り込みコントローラ :割り込み要求のベクタ変換、遮断
PIC(Programable Interrupt Controller):
割り込みディスクリプタテーブル IDT:ベクタとハンドラの対を登録
+-タスクゲート :Linux では使われない.
+-割り込みゲート :同期割り込みのベクタ,ハンドラ対
+-トラップゲート :非同期割り込みのベクタ,ハンドラ対
++-システムゲート :ソフトウェア割り込みに使うベクタ,ハンドラ対.ユーザ
ーモードで使用可
カーネル実行パス :カーネルモードで実行される命令列
カーネルの同期処理
同期方法
+-ノンプリエイティブ性 :システムコール中にシステムコールできない
+-アトミック操作 :1 つのアセンブリ命令に対応する関数
+-割り込みの禁止 :IRQ を無視
+-ロック :使用中の資源を使えなくする
+-カーネルセフォマ :ユニ,マルチプロセッサ用
+-スピンロック :マルチプロセッサ用
対称型マルチプロセッサ :複数の CPU を対等とすること
スワップ処理
スワップ領域 :メモリとして使われるディスク領域