Linux でゼロ除算の例外処理を理解したいと思っています。ゼロ除算操作が実行されると、トラップが生成されます。つまりINT0
、プロセッサに送信され、最終的SIGFPE
に操作を実行したプロセスにシグナルが送信されます。
ご覧のとおり、ゼロ除算例外は次のようにtrap_init()
関数に登録されています
set_trap_gate(0, ÷_error);
INT0
詳細を知りたいのですが、生成SIGFPE
されてからプロセスに送信されるまでの間に何が起こるのでしょうか?