Jump to content 日本-日本語

製品 >  ソフトウェア >  HP- UX Developer Edge

HP-UX 11i 構成可能カーネル・パラメータ(HP-UX 11.0 用)

共有メモリの処理の概要
HP-UX/Integrityサーバー お問い合せ
コンテンツに進む

共有メモリ


共有メモリは、互いに連携して動作する複数のプロセスの間で共有されるデータ構造およびデータを記憶するための予約メモリ・スペースです。同じメモリ・スペースを共有すれば、あるプロセスが使用したデータをほかのプロセスが使用するときにデータを別の場所にコピーしたり移動する必要がなくなるので、メモリ消費、プロセッサー時間、およびオーバーヘッドを抑えることができます。

共有メモリのアクセスと使用


共有メモリの管理は、メッセージの管理およびセマフォの管理と多くの点で共通しています。プロセスが共有メモリ・セグメントの割り当てを要求するときには、shmget()システム・コールが使用され、この関数のパラメータの一つを経由してセグメント・サイズが指定されます。 ( HP-UX Reference の shmget(2) を参照)。いったん割り当てられたセグメントには、1つまたは複数のプロセスを結び付けることができます。プロセスを結び付けるには、shmat()システム・コールを使います。また、結び付けられたプロセスは、終了時に shmdt()システム・コールによって切り離すことができます ( shmop(2) を参照)。shmctl()を使用すると、セグメントの情報を取得したり、不要になったセグメントを削除することができます ( shmctl(2) を参照)。

セマフォを使用すると、共有メモリへの読み取り/書き込みアクセスが衝突するのを防止できます。しかし、共有メモリ・セグメントへの書き込みを1つのプロセスで行い、そのセグメントからの読み取りを1つ以上のプロセスで行う方式 (write once/read many方式) の方がよく使われます。この方式では、新たな書き込みを行うときには、書き込みプロセスが新しいセグメントを割り当てます。そして、新しいセグメントが利用可能になった時点で、読み取りプロセスがそのセグメントに結び付けられます。

共有メモリの管理


共有メモリは、スワップ可能な共有メモリ・スペース内で割り当てられます。共有メモリ管理用のデータ構造は、カーネル内に格納されます。共有メモリの制御に関するカーネル構成パラメータには、以下のパラメータがあります。

  • 共有メモリ・セグメントの最大許容サイズ。
  • システム全体において同時に割り当てられる共有メモリ・セグメントの最大許容数。
  • 単一のプロセスに結び付けられる共有メモリ・セグメントの最大許容数。

付加情報


共有メモリに関するカーネル・パラメータの説明一覧
  構成可能カーネル・パラメータ・ヘルプのブラウズ
最初のページへ    

お問い合わせ

ご購入前のお問い合わせ


ご購入後のお問い合わせ

HPEサポートセンター
製品の標準保証でご利用いただける無償のサービスです。

ショールーム

ショールーム 導入をご検討のお客様へ
業務アプリケーションの継続・標準化・開発性とシステム担当者様、システム開発者様が抱える悩み・疑問に対する解決策実体験して頂けます。
印刷用画面へ
プライバシー ご利用条件・免責事項