エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
Assembly Programming on ARM Linux(06)
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
Assembly Programming on ARM Linux(06)
6. システムコールとその他の命令 これまで演算命令、分岐命令、 ロード/ストア命令、複数レジスタのロ... 6. システムコールとその他の命令 これまで演算命令、分岐命令、 ロード/ストア命令、複数レジスタのロード/ストア命令を見てきましたが、 今回はそれ以外の命令の概要です。まず、非常に重要な Linuxのシステムコールを呼び出すために使用する SVC命令(SWI から名前が変更されました)から始めましょう。 ソフトウェア割り込み命令 ソフトウェア割り込み命令は、Linux ではカーネルのシステムコールの呼び出しに使用されます。 SVC が実行されるとスーパーバイザモード(カーネルモード)に移行し、CPSR は SPSR_svc に待避され、 プログラムカウンタ(PC) に メモリアドレス 0x00000008 に保存されたSVC 例外ベクタ (例外処理ルーチンの先頭アドレス) がロードされます。 「SVC命令を実行するとカーネルのシステムコール処理ルーチンに制御が渡る」と覚えておきましょう。