パスワードを忘れた? アカウント作成
15805120 journal
日記

nodocumentsの日記: 貴様はこれまでに出したバグの数を覚えているか? 5

日記 by nodocuments

無茶を言うな

メインフレームの割り込みハンドラの中で割り込み発行して無限ループに陥らせたことがあるが
割り込み処理は優先度が高いので他の処理が全部止まって大騒ぎになったっけなぁ(トオイメ…

  • でも大きなミスは・・・・・う゛っ
    ここに返信
  • by Anonymous Coward on 2022年09月29日 10時43分 (#4335179)

    割り込みをされる側の方が難しいですね。
    データを壊されないように割り込み禁止にして守ってやらないといけないし。

    ここに返信
    • by Anonymous Coward

      一般的にはアトミック又はリアルタイムな処理でだけ割り込み禁止して、
      割り込む側が他のステートを維持(又は保存&復元)する事が多い気がするけど。
      メインフレームだと違うんかな?

    • by Anonymous Coward

      (ARM の cortex-M3 とかのイメージなんだけど)
      パイプラインなRISC CPUで(core側の)割り込み禁止命令を置いたら
      次の命令行ではもうホントに割り込み禁止になってるの?
      ブランチ命令の遅延スロットみたいに継続の1命令も実行されちゃうんじゃないの?
      って疑問を持ちつつ割り込みまわり書いてるけど明白に記述されたドキュメントには
      まだ巡りあってない。(まあそれで問題になったわけでもないんだが)
      「割り込み禁止はこの命令を使え」っていう記述はあるんだけどね。

      周辺レジスタ側での割り込み禁止ビットの書き込みは
      たぶん実際に書き込まれるのは数クロック後だからアレよね?

      • by Anonymous Coward on 2022年09月29日 20時32分 (#4335694)

        「次の命令」でなく、「次のバスサイクル」になってないかな? CISCでさえ「次のバスサイクルが始まるときにフェッチされる」で、数クロックかかっていたはず。 確か「割り込み禁止しても次の命令のまえに割り込みが発生することがあります」って書いてあったのは見た気がする。

typodupeerror

未知のハックに一心不乱に取り組んだ結果、私は自然の法則を変えてしまった -- あるハッカー

読み込み中...