RedHawk Linux User's Guide version 6.3 æ¥æ¬èªç
RedHawk Linux User's Guide version 6.3 æ¥æ¬èªç
RedHawk Linux User's Guide version 6.3 æ¥æ¬èªç
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
<strong>RedHawk</strong> <strong>Linux</strong> User’s <strong>Guide</strong>概 要#include #include #include int semget (key_t key, int nsems, int semflg);上 記 の 全 てのインクルードファイルは、オペレーティング・システムの/usr/includeサブディレクトリにあります。key_t はヘッダーファイルの 中 で 整 数 型 にするためにtypedefによって 定義 されています(このヘッダーファイルは 内 部邪 に 含 まれています)。 正 常 終 了 した場 合 にこのシステムコールから 返 される 整 数 は、key の 値 に 対 応 するセマフォ 集 合 識 別 子 (semid)です。semid は 本 章 の「System Vセマフォの 利 用 」セクション 内 で 説 明 されています。セマフォ 集 合 およびデータ 構 造造 体 に 対 応 する 新 しいsemid は 以 下 の 条 件 に1つでも 該 当 する 場 合に 作 成 されます。• key が IPC_PRIVATE• セマフォ 集 合 およびデータ 構 造造 体 に 対 応 するsemid が 存 在 しないkey 、かつsemflgとIPC_CREAT の 論 理 積 がゼロではないsemflg 値 の 組 み 合 わせ:• 制 御 コマンド (フラグ)• 操 作 パーミッション制 御 コマンドはあらかじめ 定 義 された 定 数 です。 以 下 の 制 御 コマンドはsemgetシステムコールに 適遚 用 され、ヘッダーファイル 内 部邪 に 含 まれるヘッダーファイル 内 に 定義 されています。IPC_CREATIPC_EXCL新 しいセグメントをセマフォ 集 合 するために 使 用 されます。もし 使 用されない 場 合 、semgetはkey に 対 応 するセマフォ 集 合 の 検 出 し、アクセス 許 可 の 確 認 します。IPC_CREATと 一 緒 の 使 用 は、 指 定 されたkey に 対 応 するセマフォ 集合 識 別 子 が 既 に 存 在 している 場 合 、このシステムコールはエラーを 引き 起 こします。これは 新 しい(ユニークな) 識 別 子 を 受 け 取 らなかった時 に 受 け 取 ったと 考 えてしまうことからプロセスを 守 るために 必 要です。パーミッション 操 作 はユーザー、グループ、その 他 のために 読 み 取 り/ 書 き 込 み 属 性 を 定 義 します。表 5-1は 有 効 な 操 作 パーミッションコードの(8 進逭 数 で 示 す) 数 値 を 示 します。5-32