日本-日本語 |
|
|
|
OpenVMS マニュアル |
|
HP OpenVMS
|
目次 | 索引 |
ANALYZE/IMAGE |
OpenVMS Alpha システムの実行可能イメージ・ファイルや共用可能イメージ・ファイルと, OpenVMS Integrity サーバ・システムの ELF (Executable and Linkable Format) イメージ・ファイルや共用可能イメージ・ファイルの内容を分析し,ファイル中のエラーを見つけます。分析には,Integrity サーバおよび Alpha システム上で変換されたイメージも含まれます。 /IMAGE 修飾子は必須です。イメージ・ファイルに関する一般的な情報については,『OpenVMS Linker Utility Manual』のリンカの説明を参照してください。オブジェクト・ファイルの内容を分析する場合は, ANALYZE/OBJECT コマンドを使用します。
ANALYZE/IMAGE ファイル指定[,...]
ファイル指定[,...]
分析したいイメージ・ファイル名を 1 つまたは複数指定します。少なくとも 1 つはファイル名を指定しなければなりません。複数のファイル名を指定する場合は,ファイル名をコンマ (,) またはプラス記号 (+) で区切ります。省略時のファイル・タイプは .EXE です。ファイル指定でアスタリスク (*) およびパーセント記号 (%) ワイルドカード文字を使用することができます。
ANALYZE/IMAGE コマンドは,OpenVMS Alpha システムの実行可能イメージ・ファイルや共用可能イメージ・ファイル,および OpenVMS Integrity サーバ・システムの ELF (Executable and Linkable Format) イメージ・ファイルや共用イメージ・ファイルの構成要素の説明を提供します。また,イメージ・ファイルの主な部分の構造が正しいかどうか確認します。ただし,ANALYZE/IMAGE コマンドでエラーが検出されなくても,プログラムの実行時にエラーが発生する可能性はあります。OpenVMS Integrity サーバ・システムでは,ANALYZE/IMAGE コマンドは,ヘッダ情報を調べることで,自動的に Integrity と Alpha のイメージを区別します。
複数のエラーが検出された場合は,最も重大なレベルの最初のエラーが返されます。たとえば警告 (A) と 2 つのエラー (B および C) が検出された場合は,イメージ終了状態として最初のエラー (B) が返されます。イメージ終了状態は,イメージ終了時に DCL シンボル $STATUS に置かれます。
注意
Integrity のイメージとオブジェクトでは,Analyze ユーティリティは,分析対象のファイルがイメージ・ファイルなのかオブジェクト・ファイルなのかを判断します。 ELF イメージ・ファイル対して ANALYZE/OJBECT コマンドを使用することもできますが,ELF イメージ・ファイルには ANALYZE/IMAGE を使用し,ELF オブジェクト・ファイルには ANALYZE/OJBECT を使用するようにしてください。ANALYZE/IMAGE の出力を解析する際には,ELF イメージの出力形式が変わる可能性がある点に注意してください。
ANALYZE を修飾子なしで使用すると,省略時の設定は /OBJECT となります。したがって,この省略時の設定を使用して出力ファイル中のイメージを分析すると,ユーティリティはそれを正しく「オブジェクト・ファイルの分析」として判断します。
OpenVMS Alpha バージョンの ANALYZE/IMAGE では,自プラットフォーム以外のすべてのイメージを分析できるわけではありません。
Integrity プラットフォーム上で Integrity イメージを分析する場合でも, ANALYZE/IMAGE は Alpha だけで有効な修飾子を受け付けますが,そのような修飾子は無視されます。
プラットフォームに依存して,ANALYZE/IMAGE コマンドは,メタ情報 (たとえば,ELF,EIHD,IHDなど) を調べることで, Integrity イメージと Alpha イメージを区別します。
ANALYZE/IMAGE コマンドを実行すると,イメージファイルに関する次に示す情報が分かります。
- イメージのアーキテクチャと種別 --- OpenVMS のプラットフォームと,イメージが実行可能であるか,共用可能であるか
- イメージ名 --- イメージまたは共用可能イメージの名前
- イメージの識別情報 --- リンク操作で指定した識別情報
- 作成リンカの識別情報 --- イメージを生成したリンカ
- リンク日付と時刻 --- リンク操作の日付と時刻
- イメージ変換アドレス --- イメージ実行時に制御を渡すアドレス
- イメージ・バージョン --- イメージの更新レベル (メジャーID およびマイナーID)
- イメージ・シンボル・ベクタの位置およびサイズ (Alpha および Integrity のみ)
- 必要な共用可能イメージのリスト --- 共用可能イメージの依存関係
- デバッガ・シンボル・テーブル (DST) の位置 --- イメージ・ファイル中の DST の位置。/DEBUG または /TRACEBACK コマンド修飾子でリンクされている実行可能イメージ中でのみ,DST 情報が得られます (Alpha のみ)。
- デバッグ情報とトレースバック情報の位置と解釈方法 --- データの情報と形式が格納されているセクション (DWARF) (Integrity のみ)
- グローバル・シンボル・テーブル(GST)の位置 --- イメージ・ファイル中の GST の位置。共用可能イメージ・ファイル中でのみ,GST 情報が得られます (Alpha のみ)。
- グローバル・シンボル・テーブル(.symtab)の位置 --- イメージ・ファイル中の GST の位置。共用可能イメージ・ファイル中でのみ,GST 情報が得られます (Integrity のみ)。
- パッチ情報 --- イメージがパッチされている (再コンパイル,または再アセンブルおよび再リンクなしに変更されている) かどうか。パッチされている場合は,実際のパッチ・コードが表示されます (Alpha のみ)。
- イメージ・セクション記述子 (ISD) --- 属性に基づいて OpenVMS Cluster システムにグループ化されたイメージ・バイナリ部分。 ISD は,イメージのアドレス領域を初期化する時に,イメージ・アクティベータが必要とする情報を含んでいます。たとえば,ISD は ISD が共用可能であるかどうか,ISD が読み込み可能または書き込み可能であるかどうか,ISD が基底または位置独立であるかどうか,および割り当てられるメモリ量などの情報が含まれています。
- 内部テーブルの要約 --- イメージに含まれるプログラム・セグメントとセクションの一覧 (Integrity のみ)
- フィックスアップ・ベクタ --- 共用可能イメージ参照が位置独立であることを保証するために,イメージ・アクティベータが必要とする情報 (Alpha のみ)。
- フィックスアップ情報 --- 共用可能イメージの参照の位置独立性を保障するために,イメージ・アクティベータが必要とする情報 (Integrity のみ)
- システム・バージョン・カテゴリ --- エグゼクティブ (Integrity および Alpha のシステム共用可能イメージ) に対してリンクされたイメージについて,イメージが最初にリンクされた時のシステム・バージョン・カテゴリの値,および現在実行中のシステムの値を表示します。イメージは最後にリンクされたので,これらの値を使用するとシステムの変更が分かります。
ANALYZE/IMAGE コマンドには,コマンド修飾子と位置修飾子があります。 Alpha のイメージでの省略時の設定では,位置修飾子 (たとえば /GST や /HEADER) を指定しないと,イメージ全体が分析されます。位置修飾子を指定すると, (いつも有効な) /HEADER 修飾子を除いた他のすべての位置修飾子,およびユーザが明示的に要求したすべての修飾子を,分析から除外します。
ELF イメージを分析する際の省略時の動作は,Alpha のイメージを分析する際の動作とは異なります。 ELF イメージの場合,主要な ELF テーブルの要約が表示されます。この情報を使用して,分析するセグメントまたはセクション (あるいはその両方) を選択することができます。エラーを見つけるには,すべてのセクションとセグメントを選択して,イメージ全体を分析します。
/FIXUP_SECTION (Alpha のみ)
位置修飾子イメージのフィックスアップ・セクション中のすべての情報を分析することを指定します。
ANALYZE/IMAGE コマンドの後に /FIXUP_SECTION 修飾子を指定すると,パラメータ・リスト中の各イメージ・ファイルのフィックスアップ・セクションが分析されます。
ファイル指定の後に /FIX_SECTION 修飾子を指定すると,そのイメージ・ファイルのフィックス・セクションのみが分析されます。
/FLAGVALUES=(キーワード[,...]) (Integrity のみ)
ELF モジュールのいくつかのフィールドは,ビット・フラグになっています。可能な場合,これらのビット・フラグ値が調べられ,個別に表示されます。省略時には,1 (オン) に設定されているフラグ値だけが表示されます。キーワードは以下のとおりです。
キーワード 説明 ON キーワード ON を指定すると,値が 1 のフラグがすべて表示されます。 OFF キーワード OFF を指定すると,値が 0 のフラグがすべて表示されます。 ALL キーワード ALL を指定すると,すべてのフラグが表示されます。これに対しキーワード ON と OFF は,各フラグ・ビットの値を示します。
/GST (Alpha のみ)
位置修飾子すべてのグローバル・テブル・レコードを分析することを指定します。この修飾子は,共用可能イメージに対してのみ有効です。
ANALYZE/IMAGE コマンドの後に /GST 修飾子を指定すると,パラメータ・リスト中の各イメージ・ファイルのグローバル・シンボル・テーブルが分析されます。
ファイル指定の後に /GST 修飾子を指定すると,そのファイルのグローバル・シンボル・テーブルのみが分析されます。
/HEADER (Alpha のみ)
位置修飾子すべてのヘッダ・アイテムおよびセクション記述子を分析することを指定します。
/INTERACTIVE
/NOINTERACTIVE (省略時の設定)
分析を会話型で行うかどうかを指定します。会話型モードでは,各アイテムを分析するたびに画面に結果が表示され,継続するかどうか質問が表示されます。/MODULE [=(モジュール名[,...]) ] (Integrity のみ)
指定したモジュールに対するデバッグ情報やトレースバック情報だけを出力します。 /SECTIONS 修飾子にキーワード ALL,DEBUG,または TRACE を指定して,デバッグ情報やトレースバック情報を要求する必要があります。デバッグ情報やトレースバック情報を選択して出力する場合は,さらにモジュール名も指定することができます。モジュール名を指定しないと,指定可能なモジュールに関するデバッグ・メタ情報またはトレースバック・メタ情報だけが出力されます。その場合,それ以外のデバッグ選択またはトレースバック選択は無効になります。
注意
この修飾子は,ANALYZE/IMAGE だけで有効です。 ANALYZE/OBJECT では Integrity イメージの情報も出力できますが, /MODULE 修飾子は指定できません。
/OUTPUT=ファイル指定
イメージを分析した結果を格納する出力ファイルを指定します。アスタリスク (*) やパーセント記号 (%) ワイルドカード文字を,ファイル指定に使用することはできません。ファイル・タイプを指定しファイル名を省略した場合は,省略時の設定によりファイル名は ANALYZE になります。省略時のファイル・タイプは .ANL です。この修飾子を省略した場合は,分析結果は現在の SYS$OUTPUT 装置に出力されます。/PAGE_BREAK=キーワード (Integrity のみ)
レポート・ファイルにページ・ブレーク (改ページ) を入れるかどうかと,入れる位置を指定します。この修飾子は,/OUTPUT を使用してレポート・ファイルを出力する場合にだけ有用です。 /INTERACTIVE を指定して会話型の分析を行う場合には無視されます。キーワードは以下のとおりです。
キーワード 説明 NONE ページ・ブレークなしのレポートを作成します。 PRINTABLE_REPORT ページ・ブレークを含む印刷可能なレポートをリスティング・ファイルとして作成します。ページごとの行数は,プリンタ・ページの省略時の行数になります。この動作は,修飾子を指定しない場合の ANALYZE_IMAGE の省略時の動作です。 SEPARATE_INFORMATION セクション情報ごとにページ・ブレークを挿入します。 /SECTIONS [=(キーワード[,...])] (Integrity のみ)
表示対象の個々のプログラム・セクションまたはセクション種別を選択します。
注意
この修飾子とキーワードは,表示対象セクションのリストに含めるものを指定することしかできません。この修飾子を否定の目的で使用したり,除外リストを指定するのに使用することはできません。値を指定しない場合,省略時のキーワードは HEADERS です。
キーワードは以下のとおりです。
キーワード 説明 ALL モジュール内の全セクションの詳細な分析結果を表示する。このキーワードを指定すると,大量の出力が生成されることがある点に注意すること。 CODE 種別が SHT_PROGBITS で,実行可能フラグ (セクション・ヘッダ内の SHDR$M_SHF_EXECINSTR) が設定されているすべてのセクションの全内容を表示する。セクション・データは機械語命令として表示される。 DEBUG
[=(接尾辞[,...])]デバッグ情報を含むセクションを分析して表示する。 さらに,デバッグ・セクション名の接尾辞のリストを使用して, DEBUG 情報を選択的に出力することができる。デバッグ・セクション名は,要約テーブル中に ".debug_suffix" として表示される。接尾辞は以下のものが指定できる。
- ABBREV---DEBUG の短縮形の出力
- ARANGES---DEBUG のアドレス・ルックアップ・テーブルの出力
- FRAME---アンワインド用の DEBUG フレーム・ディスクリプタの出力
- INFO---DEBUG シンボルの出力
- LINE---DEBUG ソース・ライン情報の出力
- PUBNAMES---DEBUG 名前ルックアップ・テーブルの出力
- PUBTYPES---DEBUG タイプ・ルックアップ・テーブルの出力
EXTENSIONS 種別が SHT_IA64_EXT のセクションを分析して表示する。データは16進形式で表示される。 GROUP 種別が SHT_GROUP のセクションを分析して表示する。この種別のセクションは,そのグループに属する各セクションのセクション番号のリストからなる。 HEADERS 省略時のキーワード。 ELF ヘッダとセクション・ヘッダの詳細が表示される。 LINKAGES 種別が SHT_VMS_LINKAGES のセクションを分析して表示する。データはリンケージ・ディスクリプタのリストとして表示される。 NOBITS 種別が SHT_NOBITS のセクションを分析して表示する。この種別のセクションに関連付けられたモジュール・データはない。 NOTE 種別が SHT_NOTE のセクションを分析して表示する。このセクションのデータは,フォーマットされた OpenVMS ノート・エントリのリストとして表示される。 NULL 種別が PT_NULL のセクションをすべて表示する。この種別のセグメントについては,データは表示されない。 NUMBERS=
(番号 [,...])以下のように個別のセクションを表示する。
- 選択されたセクションは,ヘッダと内容が詳しく表示される。セクション番号がモジュール内に存在しない場合は,情報メッセージが表示される。
- 1 つ以上の番号を指定することができる。
- セクション番号は,10 進,8 進 (%O 接頭辞を使用),または 16 進 (%X 接頭辞を使用)で指定可能。
STRTAB 種別が SHT_STRTAB のセクションを分析して表示する。このセクション・データは,文字列テーブルとして表示される。 SYMTAB 種別が SHT_SYMTAB のセクションを表示する。このセクションのデータは,シンボル・テーブルとして表示される。 SYMBOL_VECTOR この種別のセクションは,共用可能イメージ・ファイルにだけ現れる。存在する場合,動的なセグメント DT_VMS_SYMVEC タグと同じデータを指す。 TRACE
[=(接尾辞[,...])]トレースバック情報を含むセクションを分析して表示する。 さらに,トレース・セクション名の接尾辞のリストを使用して, TRACE情報を選択的に出力できる。トレース・セクション名は,要約テーブル中に ".trace_suffix" として表示される。接尾辞は以下のものが指定できる。さらに,デバッグ・セクションとトレースバック・セクションで共通のセクション ".debug_line" が 1 つあるため,以下のように接尾辞 "line" も指定できる。
- ABBREV---TRACE の短縮形の出力
- ARANGES---TRACE のアドレス・ルックアップ・テーブルの出力
- INFO---TRACE シンボルの出力
- LINE---TRACE ソース・ライン情報の出力
UNWIND 種別が SHT_IA64_UNWIND のセクションを分析して表示する。この種別のセクションには,それぞれ種別が SHT_PROGBITS のアンワインド情報セクションが関連付けられており,このセクションも表示される。
/SEGMENTS [=(キーワード[,...])] (Integrity のみ)
個別のプログラム・セグメントまたは指定した種別のプログラム・セグメントを選択して表示します。
注意
この修飾子とキーワードは,表示対象セグメントのリストに含めるものを指定することしかできません。この修飾子を否定の目的で使用したり,除外リストを指定するのに使用することはできません。値を指定しない場合の省略時のキーワードは HEADERS です。
キーワードは以下のとおりです。
キーワード 説明 ALL すべてのプログラム・セグメントの情報を分析して表示する。出力が大量になることがある点に注意すること。 CODE すべての実行可能セグメント (セグメント・ヘッダで PHDR$M_PF_X ビットが設定されているセグメント) を分析して表示する。セグメント・データは,機械語命令として表示される。 DYNAMIC 種別が PT_DYNAMIC のセグメントを分析して表示する。 EXTENSIONS 種別が IA_64_ARCHEXT のセグメントを分析して表示する。 HEADERS 省略時のキーワード。 ELF ヘッダおよびセグメント・ヘッダの詳細を分析して表示する。 LOAD 種別が PT_LOAD のセグメントを分析して表示する。セグメント・ヘッダが,このセグメントが実行可能セグメントであることを示す (セグメント・ヘッダで PHDR$M_PF_X ビットが設定されている) 場合は,内容は機械語命令として表示される。そうでない場合は,内容が 16 進データとしてフォーマットされる。 NULL 種別が PT_NULL のセグメントを分析して表示する。この種別のセグメントについては,データは表示されない。 NUMBERS=
(番号 [,...])以下のように,個別のセグメントを分析して表示する。
- 選択されたセグメントは,ヘッダと内容が詳しく表示される。セクション番号がモジュール内に存在しない場合は,情報メッセージが表示される。
- 1 つ以上の番号を指定することができる。
- セグメント番号は,10 進,8 進 (%O 接頭辞を使用),または 16 進 (%X 接頭辞を使用)で指定する。
/SELECT=(キーワード[,...])
特定のイメージ・ファイルまたはオブジェクト・ファイルの情報を収集し,選択されたキーワード項目を指定された順序で表示します。
目次 索引
|