4.45.5 セクション・エスケープ機能のサポート |
|
OpenVMS V8.3 では,Analyze ユーティリティは,65,280 を超えるセクションを持つオブジェクト・モジュールを解析すると,完了しませんでした。セクション・ヘッダ・テーブルの表示で,ループに陥っていました。
この問題は,OpenVMS V8.3-1H1 で修正されました。
INSTALL ユーティリティは,常駐イメージのコード・セグメントを 64 ビット S2 アドレス空間へインストールする機能をサポートするようになりました。ただしすべてのコードが,完全な 64 ビット・アドレス空間 (P2 または S2) で実行できるわけではありません。たとえば,例外を処理するためには,コードは 64 ビット PC に対応していなければなりません。また,一部のコンパイラでは,64 ビット・アドレス空間用のコードを生成するときには,/POINTER_SIZE=64 コマンド修飾子を指定する必要があります。
対応していないコードを S2 空間にマッピングするのを避けるために, INSTALL ユーティリティは,省略時の指定では,コード・セグメントを S0/S1 空間にマッピングします。 INSTALL ユーティリティが常駐イメージのコード・セグメントを S2 空間にマッピングするのは,以下の条件が満たされた場合だけです。
- 開発者がイメージをリンクする際に /SEGMENT_ATTRIBUTE=CODE=P2 修飾子を使うことにより,コードが 64 ビット対応であることを明示的に指定した場合。
- S2 空間の常駐コード領域に,コード・セグメントをマッピングできるだけの大きさの割り当て済みの空間がある場合。領域のサイズは,システム・パラメータ GH_RES_CODE_S2 (ページ数) で決まります。省略時の値は 0 です。つまり,デフォルトでは,64 ビット対応の常駐イメージであっても,コードは S0/S1 空間にマッピングされます。