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>bt_bind rem_addr_pパラメータパラメータ15ローカル・メモリ 15bt_bind() 呼 び 出 しの’rem_addr_p’ パラメータは 呼 び 出 し 元 がカーネル・バインド・バッファをバインドしたい 遠遒 隔 のVMEバス・スレーブ・ウィンドウ 内 のオフセットを 指 定 します。この 値 はオフセットであり、 絶 対 的 なVMEバスの 物 理 アドレスではないことに 注 意 して 下 さい。このオフセット 値 は、SBS VMEアダプター・カード 上 にあるREM-RAM LOのジャンパー 設 定 により 定 義 されたVMEバスアドレスの 基 点 からとなります。実 際 の’rem_addr_p’ オフセット 値 を 指 定 、もしくは’rem_addr_p’ パラメターにBT_BIND_NO_CARE 値 を 使 用 してbtpドライバに 適遚 切 なバインド・アドレス 位 置 を 見 つけさせることのどちらでも 可 能 です。この 値 が 使 われる 場 合 、bt_bind() 呼 び 出 しから 正 常 に 戻 った 時の’rem_addr_p’ メモリ 位 置 はカーネルbtpドライバがバインド・バッファにバインドしたオフセット 値 を 含 みます。例 として、もしREM-RAM LOのジャンパー 設 定 が0xC0000000の 値 に 設 定 されオフセット 値 が0x10000の 場 合 、VMEバスからアクセス 可 能 なこのバッファの 実 際 のバインド・アドレスは0xC0010000となるでしょう。カーネル・バインド・バッファのサポートとは 別 に、btpドライバもまたローカル・メモリのコンセプトをサポートします。バインド・バッファ 機 能 のために 通 常 使 用 されるBT_DEV_A32,BT_DEV_A24, 他 のVMEバス・デバイス・タイプの 変 わりにBT_DEV_LMデバイス・タイプの 使用 を 通 じてこの 機 能 が 利 用 可 能 となります。ローカル・メモリ・バッファは、btpドライバがロードされた 時 にVMEバス・スレーブ・ウィンドウ 領 域 へ 割 り 当 たられバインドされたローカルiHawkメモリから 構 成 されます。このメモリの 割り 当 てとバインドはbtpドライバがロードされている 限 り 実 施 されたままとなります。もしbtpドライバが“/etc/init.d/sbsvme stop” コマンドによりアンロードされた 場 合 、このローカル・メモリ・バッファはVMEバス 空 間 からアンロードされ、 他 のカーネルで 使 用 するために 解 放 されます。ローカル・メモリ・バッファは、VMEアダプター・カード 上 のREM-RAM LOジャンパー 設 定 にて 定 義 されたとおりに 常 にVMEバス・スレーブ・ウィンドウの 底 辺 領 域 にバインドします。 例 えば、もしローカル・メモリのサイズが64KB、REM-RAM LOジャンパー 設 定 が0xC0000000の 値 へ設 定 された 場 合 、ローカル・メモリ・バッファは 物 理 VMEバス・アドレスの0xC0000000から0xC0000FFFまでのVMEバスへバインドされます。ローカル・メモリ・バッファは 常 にVMEバス・リモート・スレーブ・ウィンドウの 底 辺 領 域 を 占有 するため、カーネル・バインド・バッファはローカル・メモリ・サポートが 有 効 の 時 はいつでもこの 領 域 へバインドされるとは 限 らないことに 注 意 して 下 さい。 既 定 値 で、ローカル・メモリ・サポートは、(REM-RAM LOジャンパー 設 定 が16MBをカバーする 範 囲 に 設 定 されていると 仮 定 して)バインド・バッファ 用 に16 MB - 64 KB のVMEバス・スレーブ・ウィンドウ 空 間 を 残 して、64KBのローカル・メモリ・バッファ・サイズで 有 効 となっています。ローカル・メモリ・バッファのサイズは、/etc/sysconfig/sbsvme 構 成 ファイル( 本 章 の「 構 成 」セクションを 参 照 して 下 さい) 内 の’lm_size’ パラメータを 変 更 することにより 増 やすことが 可 能です。サポートされる’lm_size’ の 値 の 最 大 は4MBであることに 注 意 して 下 さい。もしより 大 きな値 が 指 定 された 場 合 、btpドライバのバッファ 割 り 当 ては 成 功 せず、ローカル・メモリ 機 能 はbtpドライバのロード 時 に 無 効 となります。ローカル・メモリ・サポートは、’lm_size’ btpモジュール・パラメータをゼロへ 設 定 することにより 無 効 にすることが 可 能 です。ゼロへ 設 定 した 場 合 、btpドライバはローカル・メモリ・バッファは 割 り 当 てず、VMEバス・スレーブ・ウィンドウ 領 域 全 体 はカーネル・バインド・バッファを 使用 するために 解 放 されます。15-12