メモリバリアとは
コンピューティングでは、メモリバリアは、さまざまなコマンドや機能の処理に使用できるメモリの需要のバランスをとるのに役立つ一種の順序制約です。 「membar」または「メモリフェンス」とも呼ばれるこのアイデアは、そのメモリの使用に関係するすべての保留中のタスクへの何らかの階層順序または進行を作成することです。 そうすることで、これらのタスクを論理的な順序で実行し、システムのメモリ容量を永久に損なう可能性のあるメモリの過負荷の可能性を防ぐことができます。
実際には、メモリバリアは、そのメモリの実際の機能を損なう可能性のある何らかの方法で利用可能なメモリの使用を防ぐように設計されたクラスまたは命令のセットです。 バリアまたはフェンスはハードウェアベースであるため、これは通常、中央処理装置(CPU)または他のデバイスの機能に関連付けられていることを意味します。 これは、メモリが複数のマシンまたはデバイスよりも多く使用されており、そのメモリへのアクセスを何らかの論理的な方法で割り当てる必要がある場合に必要になることがよくあります。 このタイプのメモリバリアを作成して機能を論理的な順序に保つことなく、さまざまなタスクが順不同で実行されたり、保存されたデータを損傷する可能性が大幅に向上します。
この用語自体は、実際に発生することを示しています。 フェンスは通常、2つの機能を同時に実行し、何かを内部に保持し、外部から何かが空間に侵入するのを防ぎます(何らかのゲートを経由する場合を除く)。 このようにして、内部にあるものへのアクセスはゲートキーパーによって制御され続けます。 メモリバリアを使用すると、命令はそのゲートキーパーとして機能し、順序付けられた命令に従ってメモリへのアクセスのみを許可します。 最終結果は、データが論理的にアクセスされ、タスクが正確に完了し、過負荷の可能性が合理的な制限内に維持されることです。
コンピュータシステムがより強力になり、その機能をメモリに依存するより広範な外部デバイスを駆動するために使用されるにつれて、何らかのメモリバリアの必要性がますます明らかになっています。 バリアに使用される命令のクラスが適切に準備されると、それに応じてハードウェアが応答し、すべてのデバイスが正常に機能します。 バリアが壊れたり機能しなくなったりした場合、最も単純な注文でさえ実行するのが非常に困難になる可能性があります。