アカウント名:
パスワード:
割り込みをされる側の方が難しいですね。データを壊されないように割り込み禁止にして守ってやらないといけないし。
一般的にはアトミック又はリアルタイムな処理でだけ割り込み禁止して、割り込む側が他のステートを維持(又は保存&復元)する事が多い気がするけど。メインフレームだと違うんかな?
(ARM の cortex-M3 とかのイメージなんだけど)パイプラインなRISC CPUで(core側の)割り込み禁止命令を置いたら次の命令行ではもうホントに割り込み禁止になってるの?ブランチ命令の遅延スロットみたいに継続の1命令も実行されちゃうんじゃないの?って疑問を持ちつつ割り込みまわり書いてるけど明白に記述されたドキュメントにはまだ巡りあってない。(まあそれで問題になったわけでもないんだが)「割り込み禁止はこの命令を使え」っていう記述はあるんだけどね。
周辺レジスタ側での割り込み禁止ビットの書き込みはたぶん実際に書き込まれるのは数クロック後だからアレよね?
「次の命令」でなく、「次のバスサイクル」になってないかな? CISCでさえ「次のバスサイクルが始まるときにフェッチされる」で、数クロックかかっていたはず。 確か「割り込み禁止しても次の命令のまえに割り込みが発生することがあります」って書いてあったのは見た気がする。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
192.168.0.1は、私が使っている IPアドレスですので勝手に使わないでください --- ある通りすがり
割り込みは (スコア:0)
割り込みをされる側の方が難しいですね。
データを壊されないように割り込み禁止にして守ってやらないといけないし。
Re: (スコア:0)
一般的にはアトミック又はリアルタイムな処理でだけ割り込み禁止して、
割り込む側が他のステートを維持(又は保存&復元)する事が多い気がするけど。
メインフレームだと違うんかな?
Re: (スコア:0)
(ARM の cortex-M3 とかのイメージなんだけど)
パイプラインなRISC CPUで(core側の)割り込み禁止命令を置いたら
次の命令行ではもうホントに割り込み禁止になってるの?
ブランチ命令の遅延スロットみたいに継続の1命令も実行されちゃうんじゃないの?
って疑問を持ちつつ割り込みまわり書いてるけど明白に記述されたドキュメントには
まだ巡りあってない。(まあそれで問題になったわけでもないんだが)
「割り込み禁止はこの命令を使え」っていう記述はあるんだけどね。
周辺レジスタ側での割り込み禁止ビットの書き込みは
たぶん実際に書き込まれるのは数クロック後だからアレよね?
Re:割り込みは (スコア:1)
「次の命令」でなく、「次のバスサイクル」になってないかな? CISCでさえ「次のバスサイクルが始まるときにフェッチされる」で、数クロックかかっていたはず。 確か「割り込み禁止しても次の命令のまえに割り込みが発生することがあります」って書いてあったのは見た気がする。