RedHawk Linux User's Guide version 6.3 æ¥æ¬èªç
RedHawk Linux User's Guide version 6.3 æ¥æ¬èªç
RedHawk Linux User's Guide version 6.3 æ¥æ¬èªç
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
メモリ・マッピングusermap(3)の の 利 用 9/procファイル・システムのmmap(2)システムサービスコールのサポートに 加 え、<strong>RedHawk</strong> <strong>Linux</strong>はモニタリング・プロセスの 仮 想 アドレス 空 間 の 中 へターゲット・プロセスのアドレス 空 間 の 一部邪 をマッピングするための 代 替 え 方 法 としてusermap(3)ライブラリ・ルーチンも 提 供 します。このルーチンはlibccur_rtライブラリの 中 に 備 わっています。usermapライブラリ・ルーチンはターゲット・アドレス 空 間 のマッピングを 作 成 するための/procmmapシステムサービスコール・インターフェースを 基 本 に 内 部邪 的 に 使 用 する 一 方 、usermapは以 下 の 特 別 な 機 能 を 提 供 します:• 呼 び 出 し 元 プロセスは 仮 想 アドレスとターゲット・プロセスのアドレス 空 間 内 の 当 該 仮 想 空間 の 長 さを 指 定 する 必 要 があります。usermapルーチンは、mmapの 呼 び 出 しの 前 にこの 要求 の 変 換 内 容 を 整 列 した 開 始 アドレスのページとページ・サイズの 倍 数 の 長 さに 処 理 します。• usermapルーチンは 複 数 のターゲット・プロセスのデータ 項 目 をマッピングするために 使 用されることを 目 的 としており、 従 ってこれは 重 複 するmmapマッピングの 作 成 を 回 避遪 するるために 書 かれました。usermapは 既 存 の 全 てのマッピングに 関 するmmap 情 報 を 内 部邪 的 に 保持 し、 要 求 されたデータ 項 目 のマッピングが 既 に 存 在 するマッピングのレンジ 内 に 収 まる 時 、重 複 する 新 しいマッピングを 作 成 する 代 わりにこの 既 存 のマッピングを 再 利 用 します。• mmapを 呼 び 出 す 時 、 既 に 開 かれているファイル 記 述 子 を 提 供 する 必 要 があります。 適遚 切 なタイミングでターゲット・プロセスのファイル 記 述 子 を 開 くおよび 閉 じることは 義 務 となります。usermapを 使 用 する 時 、 呼 び 出 し 元 プロセスはターゲット・プロセスのプロセスID (pid_t)を 指 定 する 必 要 があります。usermapルーチンは/proc/pid/memファイルを 正 確 に 開 く 処 理をします。 同 じターゲット・プロセスIDに 対 して 更 なるusermap(3)の 呼 び 出 しは、この/procファイル 記 述 子 を 再 度 開 く 必 要 がないため、このファイル 記 述 子 は 開 いた 状 態 にしておきます。ファイル 記 述 子 を 開 いたままにしておくことは 全 ての 場 合 において 適遚 切 ではない 可 能 性 が 或ことに 注 意 してください。しかしながら、 明 示 的 にファイル 記 述 子 を 閉 じて“len”パラメータの 値 が0でルーチンを 呼 び 出 すことによりusermapが 使 用 している 内 部邪 マッピング 情 報 をフラッシュすることが 可 能 です。 呼 び 出 し 元 プロセスがusermapに 組 み 込 まれている 最 適遚 化 機能 を 続 いて 利 用 する 可 能 性 があるため、モニタリング・プロセスは 全 てのターゲット・マッピングが 作 成 された 後 にのみこのclose-and-flush 機 能 を 使 うことを 推 奨 します。 詳 細 な 情 報についてはusermap(3)のmanページを 参 照 してください。usermapライブラリ・ルーチンもまた 同 じ/proc/pid/mem mmap(2)システムコール・サポートを基 に 内 部邪 的 に 使 用 するため、もはや 有 効 ではないモニタリング・プロセスのマッピングに 関 して「mmap(2)の 利 用 」で 説 明 した 同 じ 制 限 をusermapマッピングにも 適遚 用 されることに 注 意 してください。usermap(3)ルーチンの 使 用 に 関 する 詳 細 な 情 報 についてはusermap(3)のmanページを 参 照 してください。9-3