タグ

IPCに関するryochackのブックマーク (3)

  • Linuxのプロセス間通信 - Qiita

    この記事について LinuxのIPC(プロセス間通信)を紹介します。 プロセス間通信とは Inter Process Communication(IPC)はプログラムの実行単位であるプロセスの間で行われるデータ交換のことを指します。プロセスの依存関係は可能な限り疎結合になるようOSで管理されています。そのため、IPCLinux OSの機能を経由して行う必要があります。 OSがプロセスに提供するデータ交換の方法はひとつだけではありません。それぞれ特徴のある多彩な方法を提供しています。 ここで紹介するのは以下の5つです。 共有メモリー セマフォ マップドメモリー パイプ ソケット通信 (他にありましたらコメントで教えていただければ幸いです。) それでは、見ていきましょう。 共有メモリ プロセス間で同じメモリを共有します。 共有メモリの最大の利点はそのアクセススピードにあります。 一度共有メモ

    Linuxのプロセス間通信 - Qiita
  • プロセス間通信の比較 - ka2yanの日記

    デバイスドライバによるプロセス間通信 - ka2yanの日記のデバイスドライバは、既存のプロセス間通信と比べて当に早いのか、を測定した。 調べること 100バイト程度のメッセージ(画像データ等の大容量データを対象にしているのではない)をやりとりするプロセス間通信で一番早いのは何か? 測定するプロセス間通信は、前回の日記に書いたデバイスドライバ(共有メモリ方式)とデバイスドライバ(メッセージRead/Write)、そして、メッセージキュー(POSIX)、UNIXドメインソケット、名前付パイプ(FIFO)の5種類。 メッセージキュー(System V)は、fd として扱えないので、測定しない。 測定プログラムの概要 −2プロセス間で128バイトのメッセージを送受信を繰り返すプログラム −2プロセスは、NON_BLOCKING でメッセージをread/write −read/writeする前に

    プロセス間通信の比較 - ka2yanの日記
  • QNX - Wikipedia

    QNX(キューエヌエックス、またはキューニックスと発音)は商用のリアルタイムUnix系オペレーティングシステムであり、POSIXとPOSIX 1003.1bに対応している。主に組み込みシステム向けに販売されている。元々はカナダの企業QNXソフトウェアシステムズが開発していたが、同社は後にリサーチ・イン・モーション(現ブラックベリー)が取得した。 詳細[編集] マイクロカーネルOSとして、QNXではOSのほとんどが「サーバ」と呼ばれる小さなタスクとして動作する。この点は従来からのモノリシックなカーネルを採用したOSと大きく異なる。モノリシックカーネルOSでは機能の大部分はひとつの大きなプログラムに含まれ、例えば不要な機能をOFFにしたい時などにはOS自体を変更(再リンクなど)する必要がある。それに対しQNXではユーザや開発者はサーバを停止させることで簡単に不要な機能をOFFにすることができる

    ryochack
    ryochack 2014/07/24
    QNXのプロセス間通信は、受信プロセスがメッセージを待っていた場合、同時に受信側プロセスにCPUの制御が渡され、この際にスケジューラを経由しない。そのため、全く無駄な点がない。
  • 1