タグ

interruptとcontrol-flowに関するnabinnoのブックマーク (5)

  • 第8回 割り込み処理に見る2つの工夫

    「割り込み」とは、プログラムで制御しているハードウェアから、実行中のプロセスに対して処理を要求する仕組みです。 たとえば、プリンタで印刷している途中でミスに気づき、中断しようとストップキーを押したとき、プリンタからプロセスに対して割り込みが発生します。割り込みを受け取ったプロセス側では、その時点で実行中の処理を中断して、割り込みに応じた処理(この場合は印刷を中断する処理)を行います。 割り込みが発生してから印刷が中断されるまでに何十秒もかかると、その分だけミスのある印刷物が無駄に出力されてしまうので、割り込みはできるだけ早く処理しなければなりません。1枚の用紙を印字する時間が秒単位だとすると、1~2秒以内には印刷が中断されるように処理する必要があります。逆に言うと、1~2秒なら許容できる範囲であり、通常はマイクロ秒のようにごく短い単位の処理は不要です。 これが自動車のエアバッグだったらどう

    第8回 割り込み処理に見る2つの工夫
  • プリエンプション - Wikipedia

    プリエンプション(英: preemption)は、マルチタスクのコンピュータシステムが実行中のタスクを一時的に中断する動作であり、基的にそのタスク自体の協力は不要で、後でそのタスクを再実行するという意味も含む。このような動作をコンテキストスイッチと呼ぶ。通常、保護されたタスクか、システムの一部であるプリエンプティブスケジューラが行う。それらは、システム内の他のタスクに割り込み、後でそれらタスクを再開させることができる。「プリエンプト」とは「先取りする、差し替える」の意。 どんなシステム設計でも、プリエンプション不可能な操作が存在する。それは通常カーネルの機能や割り込み処理であり、それらを完了まで実行できるようにしておかないと、競合状態が発生しやすくなり、デッドロックを誘発する。タスクがカーネル機能を処理中は、スケジューラがプリエンプションできないようにすることで、システムの反応性を若干犠

  • Programmable interrupt controller - Wikipedia

  • Interrupt priority level - Wikipedia

  • 割り込み (コンピュータ) - Wikipedia

    割り込み(わりこみ、英: interrupt)とは、コンピュータがその周辺機器などから受け取る要求の一種である。現在の多くのCPUは、割り込みを処理するための機能を備えている。 割り込みの主な目的は、「周辺機器からの情報を、他の作業をしながらも取り落とすことなく受け取ること」であり、以下のような具体的な効果がある。 CPU資源の有効利用 周辺機器の速度はCPUの処理速度より格段に遅いため、周辺機器が処理を行っている間、CPUが他の処理を行ったほうが効率がよい。その場合、周辺機器の処理の終了をCPU側から定期的にチェックする(ポーリングと呼ぶ)のは、他の処理の効率を落とすため望ましくない。このため、周辺機器の側から割り込みによって処理の終了を通知する方法がとられる。しかしながら、近年のCPUの高速化に伴い、GHz クラスのCPUを利用した場合は、1msec単位程度の周期的なポーリングを行う方

    割り込み (コンピュータ) - Wikipedia
  • 1