XLVIII. セマフォおよび共有メモリ関数

このモジュールは、システム V セマフォを用いてセマフォ関数を提供します。 セマフォは、マシーン上のリソースへの排他的アクセス機能や、 同時にあるリソースを使用することができるプロセスの数を制限するために 使用することができます。

このモジュールは、システム V 共有メモリを使用して共有メモリ関数も 提供します。共有メモリは、グローバル変数へのアクセス手段を提供するために 使用することが可能です。別の httpd デーモンおよび (PErl, C, ... のような)他のプログラムさえ、グローバルデータ交換を 提供するこのデータにアクセスすることが可能です。 共有メモリは、同時アクセスに関して安全ではないということを覚えておいて 下さい。 同期をとるには、セマフォを使用して下さい。

表 1. Unix OS による共有メモリの制限

SHMMAX共有メモリの最大サイズ。通常は 131072 バイト
SHMMIN共有メモリの最小サイズ。通常は 1 バイト
SHMMNI共有メモリセグメントの最大数。通常は 100
SHMSEGプロセス毎の共有メモリの最大数。通常は 6

目次
sem_get ? セマフォ ID を得ます
sem_acquire ? セマフォを得ます
sem_release ? セマフォを解放します
shm_attach ? 共有メモリセグメントを作成またはオープンします
shm_detach ? 共有メモリセグメントへの接続を閉じます
shm_remove ? UNIX システムから共有メモリを削除する
shm_put_var ? 共有メモリの変数を挿入または更新します
shm_get_var ? 共有メモリから変数を返す
shm_remove_var ? 共有メモリから変数を削除します