Skip to main content

This documentation is for an older version of this product. See the latest version of this content.Opens in a new tab

memlock

共有メモリまたはテキスト・セグメントをメモリ内でロックするよう指定します。

Synopsis

[config]    memlock=n

n は、ビット・フラグのセットです。既定では、n は 0 です (すべてのフラグが false に設定されています)。

説明

memlock は、InterSystems IRIS® Data Platform が共有メモリを割り当てる方法を制御するビット・フラグのセットです。InterSystems IRIS は、制御構造、グローバル・バッファ、ルーチン・バッファ、および共有メモリ・ヒープで使用する共有メモリ・セグメントを起動時に割り当てます。memlock パラメータを使用することで、その割り当て方法を詳細に制御できます。

既定 (n = 0) では、InterSystems IRIS は、ラージ・ページをサポートするプラットフォーム (Windows、Linux、および AIX) では、以下のようにラージ・ページから共有メモリを割り当てようとします。

  1. 可能な場合は、ラージ・ページを要求します。ラージ・ページは、オペレーティング・システム・レベルで物理メモリに自動でロックされます。

  2. 構成されているすべてのメモリ容量をラージ・ページで割り当てることができない場合、標準のページ (スモール・ページ) を要求します。標準のページは物理メモリにロックされません。

  3. 構成されているすべてのメモリ容量をスモール・ページで割り当てることができない場合は、割り当て量を 1/8 減らして、手順 1 から再実行します。

以下のビット・フラグは、下記のようにこのプロセスを変更します。

1 (LockSharedMemory)

この memlock フラグは、ラージ・ページが使用されていない場合に共有メモリを物理メモリにロックするかどうかを指定します。既定では、ロックしません。これは、Microsoft Windows と macOS を除くすべてのオペレーティング・システムに適用されます。

8 (LockTextSegment)

この memlock フラグは、テキスト・セグメント (InterSystems IRIS の実行可能コード・スペース) を物理メモリにロックするかどうかを指定します (一部の UNIX プラットフォームが対象)。既定では、ロックしません。

32 (LargePagesDisabled)

この memlock フラグは、ラージ/ヒュージ・ページをサポートするプラットフォームで、共有メモリに対してラージ/ヒュージ・ページを無効にするかどうかを指定します。既定では、ラージ/ヒュージ・ページは使用されません。

ラージ・ページをサポートするプラットフォームでこのフラグがオフになっている場合、InterSystems IRIS はラージ・ページでメモリを割り当てようと試み、要求されたサイズでラージ・ページを割り当てることができない場合は標準のページに切り替えます。専門的に言えば、これは、InterSystems IRIS がページ・サイズに対して中立的な処置をとり、ラージ・ページを要求するアクションを実行しないことを意味します。

64 (LargePagesRequired)

この memlock フラグは、ラージ/ヒュージ・ページをサポートするプラットフォーム (Windows、AIX、および Linux) で、共有メモリに対してラージ/ヒュージ・ページの使用を必須にするかどうかを指定します。既定では、必須ではありません。このフラグは、その他のプラットフォームの場合、または LargePageDisabled フラグによってラージ・ページが無効になっている場合は無視されます。

LargePagesRequired が True で (かつ無視されていない状態で)、ラージ/ヒュージ・ページでメモリを割り当てることができない場合、スモール・ページを代わりに使用せずに起動が中止されます。InterSystems IRIS はメモリ・サイズを少し減らして再試行しますが、このフラグが存在しないときほどは減らしません。

128 (BackoffDisabled)

この memlock は、メモリの割り当てに失敗した場合に、容量を減らして再試行するかどうかを指定します。既定では、再試行しません。このフラグが True の場合に、構成されたサイズでメモリを割り当てることができないときは、起動は中止されます。

このパラメータの変更

管理ポータルの [メモリ詳細] ページ ([システム管理] > [構成] > [追加設定] > [メモリ詳細]) で、[BackoffDisabled][LargePagesDisabled][LargePagesRequired][LockSharedMemory]、および [LockTextSegment] で True または False を選択します。

管理ポータルを使用する代わりに、Config.configOpens in a new tab クラスで (クラスリファレンスを参照)、または CPF をテキスト・エディタで編集することで (このドキュメントの “構成パラメータ・ファイルの概要” の章にある "アクティブな CPF の編集" のセクションを参照)、memlock を変更できます。

この設定を編集した場合、変更内容を適用するには、InterSystems IRIS を再起動する必要があります。

FeedbackOpens in a new tab