0

学校の上級プロジェクト用にコンパイラを開発しており、AS (GNU Assembler) を使用してアセンブルしています。私のテストはすべてかなり成功しましたが、私が見た割り込みリストはどれも機能していないようで、テスト コードと一致しているようには見えませんでした。

AS のこのバージョンの関連情報:

GNU アセンブラ 2.17 Debian GNU/Linux Copyright 2005 Free Software Foundation, Inc. このプログラムはフリー ソフトウェアです。GNU General Public License の条件の下で再配布することができます。このプログラムは無保証です。このアセンブラは、「i486-linux-gnu」のターゲット用に構成されています。

4

3 に答える 3

3

Linux では、80h という 1 つの割り込みを使用します。その割り込みが対応するシステムコールは、この表にあります。

于 2010-01-06T02:53:34.480 に答える
2

Linux は、DOS のようにシステム コールに割り込みを使用しません。アーキテクチャに依存する方法を使用してシステム コールを作成します。x86 では int 0x80 にすることができますが、最近の (Pentium+) CPU では代わりに SYSENTER 命令を使用する必要があります。その他のソフトウェア割り込みは使用しません。

通常、これについて心配する必要はありません。アセンブリ言語であっても、これらをラップする C ライブラリを使用する必要があるからです。

于 2009-04-07T08:43:49.643 に答える
0

私見割り込みが接続される方法は、ハードウェア固有です。ターゲットにしているハードウェアの割り込みを Linux カーネルがどのように処理するかを調べることは、教育的なことかもしれません。

于 2009-04-07T04:30:05.777 に答える