IPC
「Interprocess Communication」の略です。IPCは、プロセス同士が通信できるようにする、最新のオペレーティングシステムの機能です。複数のプロセスがシステムリソースを効率的に共有できるため、パフォーマンスが向上します。
プロセス間通信の主な方法は、メモリ共有とメッセージパッシングの2つです。メモリ共有では、OSがRAMの使用と割り当てを管理するため、間接的に通信します。メッセージパッシングでは、プロセス間で能動的に通信する必要があります。たとえば、あるプロセスが別のプロセスに対して、ファイルなどの特定のリソースへの排他的なアクセスを要求する場合があります。メッセージパッシングは、2つのアプリケーションが同じデータブロックに同時にアクセスしないようにする効果的な方法です。
IPCの例
オペレーティングシステムがプロセス間通信を使用する一般的な方法を、以下に示します。
- ファイルアクセス - ローカルまたはリモートのストレージデバイス上にあるファイルへのアクセスを、一度に1つのプロセスに制限する
- ネットワーク通信 - ネットワークソケットを通じて送信されるデータが重複しないようにする
- 共有メモリ - 多数のプロセスが同じメモリブロックを使用できるようにする。多くの場合、空きメモリを動的に割り当てるバッファーを使用する
- シグナル - 割り込みと同様に、イベントを通知するシステムメッセージをプロセスに送信する
知識をテストする