読者です 読者をやめる 読者になる 読者になる

by shigemk2

当面は技術的なことしか書かない

11 プロセス間通信

FreeBSD

P475

  • 分散マルチプロセスプログラム
  • IPC
  • セマフォ
  • メッセージキュー
  • 共有メモリ
  • ソケットインターフェイス

11.1 プロセス間通信モデル

ソケットがなかったのでオレオレプログラムで互換性がないため、特殊かつ使いにくいインターフェース

4.2BSDプロセス間通信機能 一般的なインターフェースを意図

パイプ forkして分岐(親プロセスから派生)

分散UNIXシステム

サポートする機能

  • 透過性
  • 効率性
  • 互換性

UNIXが成功した最大の理由はモジュール性を提供したこと

通信ドメイン

  • 通信と名前管理のための標準的なセマンティクスを提供
  • TCPがデファクトスタンダードではなかったので、いろんなプロトコルがごちゃごちゃあった

ソケット

メッセージを送受するための抽象オブジェクト

  • 高信頼バイトストリーム(TCP)
  • 低信頼バイトストリーム(UDP)

  • 順序を保存するデータ伝送

  • 重複のないデータ伝送
  • 信頼性のあるデータ転送
  • 接続指向型の通信
  • メッセージ境界の保存
  • 帯域外メッセージのサポート

パイプ

データグラムソケット 信頼性を保証しない非接続型のパケット通信 ストリームソケット 信頼性のある、接続指向型のバイトストリーム通信

ソケットに対してつけられた名前をアドレスと呼ぶことにする