HP OpenVMS Systems Documentation |
| 前へ | 次へ | 目次 | 索引 |
ANALYZE/IMAGE コマンドには,コマンド修飾子と位置修飾子があります。 VAX および Alpha のイメージでの省略時の設定では,位置修飾子 (たとえば /GST や /HEADER) を指定しないと,イメージ全体が分析されます。位置修飾子を指定すると, (いつも有効な) /HEADER 修飾子を除いた他のすべての位置修飾子,およびユーザが明示的に要求したすべての修飾子を,分析から除外します。
ELF イメージを分析する際の省略時の動作は,Alpha または VAX のイメージを分析する際の動作とは異なります。 ELF イメージの場合,主要な ELF テーブルの要約が表示されます。この情報を使用して,分析するセグメントまたはセクション (あるいはその両方) を選択することができます。エラーを見つけるには,すべてのセクションとセグメントを選択して,イメージ全体を分析します。
/FIXUP_SECTION (VAX および Alpha のみ)
位置修飾子イメージのフィックスアップ・セクション中のすべての情報を分析することを指定します。
ANALYZE/IMAGE コマンドの後に /FIXUP_SECTION 修飾子を指定すると,パラメータ・リスト中の各イメージ・ファイルのフィックスアップ・セクションが分析されます。
ファイル指定の後に /FIX_SECTION 修飾子を指定すると,そのイメージ・ファイルのフィックス・セクションのみが分析されます。
/FLAGVALUES=(キーワード[,...]) (I64 のみ)
ELF モジュールのいくつかのフィールドは,ビット・フラグになっています。可能な場合,これらのビット・フラグ値が調べられ,個別に表示されます。省略時には,1 (オン) に設定されているフラグ値だけが表示されます。キーワードは以下のとおりです。
キーワード 説明 ON キーワード ON を指定すると,値が 1 のフラグがすべて表示されます。 OFF キーワード OFF を指定すると,値が 0 のフラグがすべて表示されます。 ALL キーワード ALL を指定すると,すべてのフラグが表示されます。これに対しキーワード ON と OFF は,各フラグ・ビットの値を示します。
/GST (VAX および Alpha のみ)
位置修飾子すべてのグローバル・テブル・レコードを分析することを指定します。この修飾子は,共用可能イメージに対してのみ有効です。
ANALYZE/IMAGE コマンドの後に /GST 修飾子を指定すると,パラメータ・リスト中の各イメージ・ファイルのグローバル・シンボル・テーブルが分析されます。
ファイル指定の後に /GST 修飾子を指定すると,そのファイルのグローバル・シンボル・テーブルのみが分析されます。
/HEADER (VAX および Alpha のみ)
位置修飾子すべてのヘッダ・アイテムおよびセクション記述子を分析することを指定します。
/INTERACTIVE
/NOINTERACTIVE (省略時の設定)
分析を会話型で行うかどうかを指定します。会話型モードでは,各アイテムを分析するたびに画面に結果が表示され,継続するかどうか質問が表示されます。/MODULE [=(モジュール名[,...]) ] (I64 のみ)
指定したモジュールに対するデバッグ情報やトレースバック情報だけを出力します。 /SECTIONS 修飾子にキーワード ALL,DEBUG,または TRACE を指定して,デバッグ情報やトレースバック情報を要求する必要があります。デバッグ情報やトレースバック情報を選択して出力する場合は,さらにモジュール名も指定することができます。モジュール名を指定しないと,指定可能なモジュールに関するデバッグ・メタ情報またはトレースバック・メタ情報だけが出力されます。その場合,それ以外のデバッグ選択またはトレースバック選択は無効になります。
注意
この修飾子は,ANALYZE/IMAGE だけで有効です。 ANALYZE/OBJECT では I64 イメージの情報も出力できますが, /MODULE 修飾子は指定できません。
/OUTPUT=ファイル指定
イメージを分析した結果を格納する出力ファイルを指定します。アスタリスク (*) やパーセント記号 (%) ワイルドカード文字を,ファイル指定に使用することはできません。ファイル・タイプを指定しファイル名を省略した場合は,省略時の設定によりファイル名は ANALYZE になります。省略時のファイル・タイプは .ANL です。この修飾子を省略した場合は,分析結果は現在の SYS$OUTPUT 装置に出力されます。
/PAGE_BREAK=キーワード (I64 のみ)
レポート・ファイルにページ・ブレーク (改ページ) を入れるかどうかと,入れる位置を指定します。この修飾子は,/OUTPUT を使用してレポート・ファイルを出力する場合にだけ有用です。 /INTERACTIVE を指定して会話型の分析を行う場合には無視されます。キーワードは以下のとおりです。
キーワード 説明 NONE ページ・ブレークなしのレポートを作成します。 PRINTABLE_REPORT ページ・ブレークを含む印刷可能なレポートをリスティング・ファイルとして作成します。ページごとの行数は,プリンタ・ページの省略時の行数になります。この動作は,修飾子を指定しない場合の ANALYZE_IMAGE の省略時の動作です。 SEPARATE_INFORMATION セクション情報ごとにページ・ブレークを挿入します。 /PATCH_TEXT (VAX のみ)
位置修飾子すべてのパッチ・テキスト・レコードを分析することを指定します。 ANALYZE/IMAGE コマンドの後に /PATCH_TEXT 修飾子を指定すると,パラメータ・リスト中の各イメージ・ファイルのパッチ・テキスト・レコードが分析されます。
ファイル指定の後に /PATCH_TEXT 修飾子を指定すると,そのファイルのパッチ・テキスト・レコードだけが分析されます。
/SECTIONS [=(キーワード[,...])] (I64 のみ)
表示対象の個々のプログラム・セクションまたはセクション種別を選択します。
注意
この修飾子とキーワードは,表示対象セクションのリストに含めるものを指定することしかできません。この修飾子を否定の目的で使用したり,除外リストを指定するのに使用することはできません。値を指定しない場合,省略時のキーワードは 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 [=(キーワード[,...])] (I64 のみ)
個別のプログラム・セグメントまたは指定した種別のプログラム・セグメントを選択して表示します。
注意
この修飾子とキーワードは,表示対象セグメントのリストに含めるものを指定することしかできません。この修飾子を否定の目的で使用したり,除外リストを指定するのに使用することはできません。値を指定しない場合の省略時のキーワードは 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=(キーワード[,...])
特定のイメージ・ファイルまたはオブジェクト・ファイルの情報を収集し,選択されたキーワード項目を指定された順序で表示します。Analyze は,/SELECT 修飾子で選択可能なすべての情報に対して DCL シンボルを作成します。シンボル名は,接頭辞 ANALYZE$ と,格納されている情報を示す名前からなります。シンボルの値は選択した情報であり,通常は SYS$OUTPUT に出力されます。実際には,出力される情報はすべて各シンボルにそのまま入ります。選択しなかった情報については,対応するシンボルに空文字列が入ります。
キーワードは次のとおりです。
キーワード 説明 ARCHITECTURE アーキテクチャ情報を DCL シンボル ANALYZE$ARCHITECTURE に書き込む。ファイルが OpenVMS I64 のイメージ・ファイルである場合は, "OpenVMS IA64" を戻す。ファイルが OpenVMS Alpha のイメージ・ファイルである場合には "OpenVMS Alpha" を戻す。ファイルが OpenVMS VAX のイメージ・ファイルの場合には, "OpenVMS VAX" を戻す。 BUILD_IDENTIFICATION 構築識別情報を DCL シンボル ANALYZE$BUILD_IDENTIFICATION に書き込む。 OpenVMS I64 および Alpha のイメージ・ファイルでは,イメージ・ファイルに格納されているイメージ構築識別を二重引用符で囲んで戻す。OpenVMS VAX のイメージ・ファイルでは,隣接する二重引用符で表現されるヌル文字列が戻される。 FILE_TYPE ファイル・タイプ情報を DCL シンボル ANALYZE$FILE_TYPE に書き込む。ファイルが OpenVMS I64,Alpha,または VAX のイメージ・ファイルの場合, "Image" を戻す。 IDENTIFICATION
[=キーワード]キーワードは次のとおり。
- IMAGE (省略時の設定) --- イメージ識別情報を DCL シンボル ANALYZE$IDENTIFICATION に書き込む。イメージ・ファイルに格納されているイメージ識別を二重引用符で囲んで戻す。それ以外の場合は "Unknown" を戻す。
- LINKER --- リンカ識別情報を DCL シンボル ANALYZE$LINKER_IDENTIFICATION に書き込む。イメージをリンクするために使用するリンカの識別を戻す。
IMAGE_TYPE イメージ種別情報を DCL シンボル ANALYZE$IMAGE_TYPE に書き込む。ファイルが共用可能イメージ・ファイルである場合には "Shareable" を戻す。ファイルが OpenVMS I64,Alpha,または OpenVMS VAX の実行可能 (共用可能でない) イメージ・ファイルである場合には "Executable" を戻す。 LINK_TIME リンク時刻情報を DCL シンボル ANALYZE$LINK_TIME に書き込む。イメージ・ファイルに格納されているイメージ・リンク時刻を二重引用符で囲んで戻す。 NAME イメージ名を DCL シンボル ANALYZE$NAME に書き込む。イメージ・ファイルの場合は,イメージ・ヘッダに格納されているイメージ名を二重引用符で囲んで戻す。 VERSION_NUMBERS (Alpha/I64 のみ) イメージがシステム・ベース・イメージおよびシステム・コンポーネントに依存している場合は,ANALYZE はイメージから得たバージョン番号を DCL シンボルに書き込む。シンボル名にはコンポーネント名が付けられる。シンボルの値にはマイナー・バージョン番号とメジャー・バージョン番号が含まれる。イメージが,ANALYZE が動作しているプラットフォームと同じプラットフォーム用なら,動作中のシステムから得たバージョン番号も書き込まれ比較される。
Analyze ユーティリティは,複数のファイルを処理することが可能です。しかし,DCL シンボルは一組しかないため,シンボルには最後に分析したファイルの情報だけが入ります。エラーが起きると,シンボルの値は未定義となります。まず Analyze のエラーを確認し,その後シンボルを使用してください。 |
| #1 |
|---|
$ ANALYZE/IMAGE LINEDT |
この例の ANALYZE/IMAGE コマンドは説明を作成し,イメージ LINEDT.EXE のエラー分析を行います。出力は,現在の SYS$OUTPUT 装置に送られます。
| #2 |
|---|
$ ANALYZE/IMAGE/OUTPUT=LIALPHEX/FIXUP_SECTION/PATCH_TEXT LINEDT, ALPRIN (VAX および Alpha のみ) |
この例の ANALYZE/IMAGE コマンドは説明を作成し,また,ファイル LIALPHEX.ANL 内の LINEDT.EXE と ALPRIN.EXE のフィックスアップ・セクションおよびパッチ・レコード・テキストのエラー分析を作成します。出力は,LIALPHEX.ANL ファイルに送付されます。
| #3 |
|---|
$ ANALYZE/IMAGE/SELECT=(ARCH,FILE,NAME,IDENT,BUILD,LINK) *.EXE DISK:[DIRECTORY]ALPHA.EXE;1 OpenVMS ALPHA Image "Test image ALPHA" "A11-27" "X5SC-SSB-0000" 14-JUN-2004 07:16:19.24 DISK:[DIRECTORY]VAX.EXE;1 OpenVMS VAX Image "Test image VAX" "V11-27" "" 15-JUN-2004 13:18:40:70 |
この例は,Alpha システムでの実行ファイル ALPHA.EXE および VAX.EXE について要求された情報を表示しています。
| #4 |
|---|
$ ANALYZE/IMAGE/SELECT=(ARCHITECTURE,IDENT,NAME) HELLO (1) USER:[JOE]HELLO.EXE;1 OpenVMS IA64 "V1.0" "HELLO" $ $ SHOW SYMBOL ANALYZE$* ANALYZE$ARCHITECTURE = "OpenVMS IA64" ANALYZE$BUILD_IDENTIFICATION = "" ANALYZE$FILE_TYPE = "" ANALYZE$IDENTIFICATION = ""V1.0"" ANALYZE$IMAGE_TYPE = "" ANALYZE$LINKER_IDENTIFICATION = "" ANALYZE$LINK_TIME = "" ANALYZE$NAME = ""HELLO"" $ $ ANALYZE/IMAGE/SELECT=(IDENT=(IMAGE,LINKER),IMAGE,LINK) HELLO (2) USER:[JOE]HELLO.EXE;1 "V1.0" "Linker I01-54" Executable 7-JUN-2004 11:47:08.10 $ $ SHOW SYMBOL ANALYZE$* ANALYZE$ARCHITECTURE = "" ANALYZE$BUILD_IDENTIFICATION = "" ANALYZE$FILE_TYPE = "" ANALYZE$IDENTIFICATION = ""V1.0"" ANALYZE$IMAGE_TYPE = "Executable" ANALYZE$LINKER_IDENTIFICATION = ""Linker I01-54"" ANALYZE$LINK_TIME = " 7-JUN-2004 11:47:08.10" ANALYZE$NAME = "" $ $ ANALYZE/IMAGE/SELECT=FILE HELLO.* (3) USER:[JOE]HELLO.C;1 %ANALYZE-E-ILLFIL, Illegal file format encountered USER:[JOE]HELLO.EXE;1 Image USER:[JOE]HELLO.MAP;1 %ANALYZE-E-ILLFIL, Illegal file format encountered USER:[JOE]HELLO.OBJ;1 Object $ $ SHOW SYMBOL ANALYZE$* ANALYZE$ARCHITECTURE = "" ANALYZE$BUILD_IDENTIFICATION = "" ANALYZE$FILE_TYPE = "Object" ANALYZE$IDENTIFICATION = "" ANALYZE$IMAGE_TYPE = "" ANALYZE$LINKER_IDENTIFICATION = "" ANALYZE$LINK_TIME = "" ANALYZE$NAME = $ |
前へ 次へ 目次 索引