2.3.5.1 F$GETDVI レキシカル関数: 負の数値
F$GETDVI レキシカル関数の項目 MAXBLOCK,FREEBLOCKS,EXPSIZE,および VOLSIZE は,ターゲット・ディスク・サイズに依存した情報を返すのによく利用されます。 OpenVMS Version 8.4 では,ターゲット・ディスクのサイズが 1 TB を超える場合,これらの F$GETDVI 項目は負の数値を返すことができます。これは,DCL が 32 ビットの符号付き整数で計算および比較を行うためです。これらの項目コードと一緒に F$GETDVI() 使用するコマンド・プロシージャは, 1 TBを超えるボリュームと動作するように修正する必要があります。
DCL 整数表現の範囲を超える数値の処理については,『OpenVMS DCL ディクショナリ』を参照してください。
OpenVMS Version 8.4 では,最大 2 TB のディスク・ボリュームをサポートします。新しい最大ボリューム・サイズの正確なサイズは,以下のとおりです。
(65534 * 255 * 255) ブロック = 4,261,348,350 ブロック, (すなわち約 1.98 TB)
論理ブロック数 (LBN) あるいは仮想ブロック数 (VBN) に関する計算や比較を行なうアプリケーションは, 1 TB を超えるボリュームでの使用に関してテストしておく必要があります。修正されていないアプリケーションは, 1 TB を超えないボリュームでは以前と同じように動作します。
DCL 整数表現の範囲を超える数値の処理については,『OpenVMS DCL ディクショナリ』を参照してください。
OpenVMS V8.4 で 1 TB を超えるサイズをサポートするのは SCSI ディスクの場合のみです。
2.4.1 2 TB サポートに関する制限事項 |
|
OpenVMS V8.4 より前のバージョンでは, 1 TB を超えるサイズのボリュームのサポートしておらず,そのようなディスクのマウントはサポートしていません。古いバージョンの OpenVMS で間違ってマウントするのを防ぐために, MOUNT の最新パッチではそのようなシステムでは 1 TB を超えるサイズのボリュームのマウントを明示的に許可しません。
| 注意
HP Disk File Optimizer (DFO) for OpenVMS は,現在のところ 1 TB を超えるサイズのファイルあるいはボリュームはサポートしていません。そのようなファイルあるいはボリュームでは,機能が拡張されるまで DFO は使用しないことをお勧めします。
|
2.4.2 BACKUP の 2TB ボリューム・サポート |
|
OpenVMS BACKUP ユーティリティは,最大 2 TB のボリュームをサポートするように拡張されています。
詳細は『OpenVMS システム管理ユーティリティ・リファレンス・マニュアル』を参照してください。
この機能は,プロセスで作成可能なカーネル・スレッド数を制限するために追加されています。 SYSGEN の MULTITHREAD パラメータの現在値と等しい,あるいはそれ以下の値に設定することができます。 OpenVMS は,プロセス毎にカーネル・スレッド制限を制御できるように機能拡張されてます。
| 注意
プロセスごとのカーネル・スレッド制限の変更は,すでに実行中のイメージに対しては適用されません。制限を変更した後にそのプロセスで起動されたスレッド・イメージに対して,新しい制限が適用されます。
|
プロセス毎のカーネル・スレッド制限は,以下のいずれかの方法で制御することができます。
- DCLの使用。以下に例を示します。
$ SET PROCESS/KERNEL_THREAD_LIMIT=n
$ RUN/KERNEL_THREAD_LIMIT=n
$ SPAWN/KERNEL_THREAD_LIMIT=n
|
- $CREPRC システム・サービスの使用。新しい引数 PRC$M_KT_LIMIT が stsflg に追加されています。これは,作成したプロセスに指定したカーネル・スレッド制限を設定します。 PRC$M_KT_LIMIT フラグを設定し,オプションの kt_limit 引数を追加します。
- $SET_PROCESS_PROPERTIESW システム・サービスの使用。プロセスに対し PPROP$C_KERNEL_THREAD_LIMIT プロパティを設定し, value 引数に数値を指定します。
プロセス毎のカーネル・スレッドの制限は,次のいずれかの方法で表示できます。
-
$ SHOW PROCESS
-
$ F$GETJPI("pid", "KT_LIMIT")
- $GETJPI システム・サービスで JPI$_KT_LIMIT 項目コードを使用
- LIB$GETJPI ランタイム・ライブラリ・ルーチンで JPI$_KT_LIMIT 項目コードを使用
OpenVMS Version 8.4 では,マウント済みのボリュームに対するデータ・キャッシュ (XFC) の設定を動的に有効あるいは無効にすることができるように拡張されています。以前のバージョンでは,ボリュームの XFC キャッシュ属性はボリューム・マウント時に指定されていました。このため,XFC キャッシュ属性の変更には,適切な XFC キャッシュ属性に変更した後,ボリュームを再マウントすることが必要でした。
本バージョンでは,ボリュームのディスマウントを行なわずにボリュームの XFC キャッシュ属性を動的に変更することができます。以下に例を示します。
- SET VOL V1/CACHE=DATA
このコマンドはボリューム V1 の XFC キャッシュ機能を有効にします。キャッシュ内のボリューム V1 の内容は影響を受けません。
- SET VOL V1/CACHE=NODATA
このコマンドはボリューム V1 の XFC キャッシュ機能を無効にします。キャッシュ内のボリューム V1 の内容は影響を受けません。
- SET VOL V1/CACHE=FLUSH
このコマンドはキャッシュ内のボリューム V1 の内容を捨てます。ボリューム V1 のキャッシュ属性は影響を受けません。
- SET VOL V1/CACHE=(DATA,FLUSH)
このコマンドは,ボリューム V1 の XFC キャッシュ機能を有効にし,キャッシュ内のボリューム V1 の内容を捨てます。
- SET VOL V1/CACHE=(NODATA,FLUSH)
このコマンドは,ボリューム V1 の XFC キャッシュ機能を無効にし,キャッシュ内のボリューム V1 の内容を捨てます。