1
私はLinuxがシステムコールにトラップするためのint 0x80
を提供していると知っていますが、他には何があり、その用途は何ですか?x86チップでは、0x80以外のINT命令はありますか?
私はLinuxがシステムコールにトラップするためのint 0x80
を提供していると知っていますが、他には何があり、その用途は何ですか?x86チップでは、0x80以外のINT命令はありますか?
これはかなり広い質問ですが、はい、x86チップはさまざまなソフトウェア割り込みを許可します。
Linuxは、そのシステムコール機構にint 80
を使用していますが、それはいくつかのケースでは、より効率的なので、カーネルのそれ以降のバージョンがSYSENTER
ではなくint 80
を使用できることに注意する必要があります。
リアルモードでは、割り込みベクタテーブルがメモリ内の特定の場所に配置されていました。 「Ralf Brown」のためにGoogleが行うことができるようなことの詳細について知りたい場合は、彼は伝説的な「Interrupt List」を維持しています。
プロテクトモードでは、特殊なプロセッサレジスタIDTR(IDTは割り込み記述子テーブルです)を使用して検出できます。
いずれの場合も、256個の割り込みを自由に使用できます。
starersの場合、どのプラットフォームですか?これはC#、C++、C、gccと何が関係していますか? – GManNickG