OpenVMS
DCL ディクショナリ


前へ 次へ 目次 索引


この例は,オブジェクト・ファイル ALPHA.OBJ,未知ファイル MISNAMED.OBJ,オブジェクト・ファイル VAX.OBJ について要求された情報を表示しています。


ANALYZE/PROCESS_DUMP

OpenVMS デバッガを起動して,イメージの実行に失敗した時に作成されたプロセス・ダンプ・ファイルを分析します。ダンプ・ファイルを作成する場合は, RUN または SET PROCESS コマンドに /DUMP 修飾子を指定します。

Alpha システムでは,DUMP/PROCESS コマンドを使用することによって,プロセスを強制的にダンプすることもできます。

ANALYZE/PROCESS_DUMP コマンドは,Alpha または VAX のいずれかのイメージのプロセス・ダンプ・ファイルを表示するために OpenVMS デバッガを起動します。 (DEBUG コマンドに関する情報を含め ) デバッガについての詳細は,『OpenVMS デバッガ説明書』を参照してください。

ダンプ・ファイルに対して読み込み(R)アクセス権が必要です。


形式

ANALYZE/PROCESS_DUMP ダンプ・ファイル


パラメータ

ダンプ・ファイル

デバッガで分析するダンプ・ファイルを指定します。

説明

ANALYZE/PROCESS_DUMP コマンドは,実行時に失敗したイメージのダンプ・ファイルを調べます。 OpenVMS Debugger が自動的に起動されます。プロセスのダンプ・ファイルを作成するためには,イメージを起動する時に RUN コマンドに /DUMP 修飾子を指定するか,またはイメージを起動する前に SET PROCESS/DUMP コマンドを指定する必要があります。Alpha システムでは,DUMP/PROCESS コマンドを使用できます。

OpenVMS VAX システムの場合

この項は,バージョン 7.2 またはそれ以前の Alpha システムにも適用されます。

注意

ダンプを作成したシステムで,プロセス・ダンプを分析してください。異なるシステムにダンプ・ファイルを移動させると,正しく分析できない可能性があります。

ダンプ・イメージをロードできても,構成が異なるために, ANALYZE/PROCESS_DUMP コマンドの実行に失敗することがあります。たとえば,オペレーティング・システムのバージョンが異なっていても分析はされますが,その結果は保証されません。

この他に,P1 空間内の制御領域の構成,ダンプ時に実行中のプロセス,および ANALYZE/PROCESS_DUMP コマンドを実行するプロセスに関しての制限事項があります。各プロセスのためのユーザ・スタックの基底位置は,割り当てられた空間のサイズにより異なり,プロセスに互換性があるかどうかを決めます。ダンプを分析するために割り当てられた空間のサイズは,ダンプを作成したプロセスに割り当てられた空間のサイズより小さくなければなりません。オペレーティング・システムのバージョンは同じでも,異なるシステムでダンプを分析する場合は,割り当てられた空間のサイズに影響を与える 1 つまたは複数のシステム・パラメータを変更して,割り当てられた空間のサイズを小さくすることができます。

システム・パラメータ IMGIOCNT は,動的に変更することができます。その他のシステム・パラメータを適用させるためには,再ブートする必要があります。

Alpha システムでは,OpenVMS Debugger でダンプしたイメージを分析できないことがあります。たとえばダンプしたイメージの PC が無効なアドレスに設定された場合,またはダンプしたイメージのスタックが不良プロセス記述子により破損した場合は, Delta Debugger (DELTA) を使用してダンプを分析しなければなりません。デバッガとして DELTA を使用するには,Install ユーティリティを起動してイメージ SYS$LIBRARY:DELTA をインストールする必要があります。 Install ユーティリティについての詳細は,『OpenVMS システム管理ユーティリティ・リファレンス・マニュアル』を参照してください。

OpenVMS Alpha システムの場合

この項は,バージョン 7.3 またはそれ以降の OpenVMS Alpha システムに適用されます。

これで,ダンプが生成されたシステム以外のシステム上でダンプ・ファイルを分析できるようになります。ただし,ベース・イメージのリンクの日付と時刻が等しくない場合には,ダンプが生成されたシステムからファイル SYS$BASE_IMAGE.EXE をコピーし,これを論理名 SDA$READ_DIR でポイントする必要があります。次に例を示します。


$ COPY other_node::SYS$LOADABLE_IMAGES:SYS$BASE_IMAGE.EXE my_disk$:[my_dir] 
$ DEFINE/USER SDA$READ_DIR my_disk$:[my_dir],SYS$SYSROOT:[SYS$LDR],SYS$SYSROOT:[SYSLIB] 
$ ANALYZE/PROCESS_DUMP mycrash.dmp 

ダンプが生成されたシステム以外のシステムで,スレッド化されたプロセス・ダンプを分析する場合には,ダンプが生成されたシステム上の PTHREAD$RTL と PTHREAD$DBGSHR (DECthread デバッグ・アシスタント) もコピーし,ポイントしなければならないことがあります。次に例を示します。


$ COPY other_node::SYS$LOADABLE_IMAGES:SYS$BASE_IMAGE.EXE my_disk$:[my_dir] 
$ COPY other_node::SYS$SHARE:PTHREAD$RTL.EXE my_disk$:[my_dir] 
$ COPY other_node::SYS$SHARE:PTHREAD$DBGSHR.EXE my_disk$:[my_dir] 
$ DEFINE/USER SDA$READ_DIR my_disk$:[my_dir],SYS$SYSROOT:[SYS$LDR],SYS$SYSROOT:[SYSLIB] 
$ DEFINE/USER PTHREAD$RTL my_disk$:[my_dir]PTHREAD$RTL.EXE 
$ DEFINE/USER PTHREAD$DBGSHR my_disk$:[my_dir]PTHREAD$DBGSHR.EXE 
$ ANALYZE/PROCESS_DUMP mycrash.dmp 

デバッガでプロセス・ダンプを分析できない場合には, System Dump Analyzer (SDA) ユーティリティを使用してください。詳細は,オンライン・へルプの ANALYZE /CRASH コマンドを参照してください。次に例を示します。


$ ANALYZE/CRASH mycrash.dmp 
 
OpenVMS (TM) Alpha system dump analyzer 
...analyzing a compressed process dump... 
 
Dump taken on 19-OCT-1999 12:03:40.95 
SDA> .. 
. 
. 


修飾子

/FULL

VAX および Alpha システム上で,デバッガ・コマンド SHOW IMAGE, SHOW THREAD/ALL,および SHOW CALL によって表示される情報を表示します。

/IMAGE=ダンプ・ファイル

VAX システム上で,分析に使用するプロセス・コンテキストを設定するために起動するイメージを指定します。 /NOIMAGE 修飾子を使用すると,分析には DELTA デバッガが使用されます。

省略時の設定では,シンボルは,ダンプの時点で実行されていたイメージと同じ名前のイメージから取得されます。

/IMAGE_PATH[=ディレクトリ指定] ダンプ・ファイル

/NOIMAGE_PATH

Alpha システム上で,デバッガがデバッガ・シンボル・テーブル (DST) ファイルを探すために使用する検索パスを指定します。以前のデバッガと同様に,デバッガは保存済みのプロセス・イメージ・リストからイメージ・リストを構築します。イメージを設定すると ( メイン・イメージが自動的に設定されます ),デバッガはそのイメージをオープンして DST ファイルを探そうと試みます。

/IMAGE_PATH= ディレクトリ指定 修飾子を指定すると,デバッガは指定されたディレクトリの中で DST ファイルを探します。デバッガはまず ディレクトリ指定 をディレクトリ検索リストの論理名として変換しようと試みます。これに失敗すると,デバッガは ディレクトリ指定 をディレクトリ指定として解釈し,そのディレクトリの中で対応する .DSF または .EXE ファイルを探します。 .DSF ファイルの方が.EXE ファイルよりも優先されます。 .DSF または .EXE ファイルの名前はイメージと一致していなければなりません。

/IMAGE_PATH= ディレクトリ指定 修飾子を指定しなかった場合,デバッガはまずダンプ・ファイルを含んでいるディレクトリの中で DST ファイルを探します。これに失敗すると,デバッガはディレクトリ SYS$SHARE を,次にディレクトリ SYS$MESSAGE を探します。デバッガがイメージの DST ファイルを見つけられなかった場合,デバッガが利用できるシンボリック情報はグローバルおよびユニバーサル・シンボル名に限定されます。

バージョン 7.3 とそれ以降のデバッガは,ダンプ・ファイルのイメージ指定と DST ファイルのリンクの日付と時刻が一致しているかどうかをチェックし,一致していなければ警告を発します。

ダンプ・ファイル ・パラメータは,分析するプロセス・ダンプ・ファイルの名前です。プロセス・ダンプ・ファイルのファイル・タイプは .DMP でなければならず, DST ファイル・タイプは .DSF または.EXE でなければならないことに注意してください。

制限事項

論理名を使用してイメージの検索をリダイレクトしたり, /IMAGE_PATH 修飾子を同時に使用することはできません。 /IMAGE_PATH 修飾子を使用する場合は,元の場所にないすべてのイメージが,このパスで検索できるところに置かれている必要があります。個別のイメージ論理名 ("DEFINE SH SYS$LOGIN:SH.EXE" の中の "SH" など ) は処理されません。

また,コンマで区切られたディレクトリ・リストは処理されないので, /IMAGE_PATH 修飾子にディレクトリ検索パスを直接入力することはできません。ただし,ディレクトリ検索パスに変換される論理名を指定することはできます。

/INTERACTIVE

/NOINTERACTIVE (省略時の設定)

VAX システムでは,ターミナルの画面いっぱいに表示されたら,情報の表示を一時停止することを指定します。次の情報を表示したい場合は,RETURN キーを押します。省略時の設定では,情報は一時停止せずに表示されます。

/MISCELLANEOUS

VAX システムでは,ダンプ時のプロセス情報とレジスタを表示します。表示されるプロセス情報についての詳細は,システム・サービス $GETJPI を参照してください。

/RELOCATION

VAX システムでは,ダンプ中に格納されているデータ構造が P0 空間にマップされときのアドレスを表示します ( このようなデータ構造の例としては,スタックがあります )。デバッガが P1 空間のこれらのデータ構造を使用できるように,ダンプ中のデータ構造は P0 空間にマップされなければなりません。


#1

$ ANALYZE/PROCESS/FULL ZIPLIST
 R0 = 00018292  R1 = 8013DE20  R2 = 7FFE6A40   R3 = 7FFE6A98 
 R4 = 8013DE20  R5 = 00000000  R6 = 7FFE7B9A   R7 = 0000F000 
 R8 = 00000000  R9 = 00000000  R10 = 00000000  R11 = 00000000 
 SP = 7FFAEF44  AP = 7FFAEF48  FP  = 7FFAEF84 
 FREE_P0_VA  00001600    FREE_P1_VA  7FFAC600 
 Active ASTs  00         Enabled ASTs 0F 
 Current Privileges  FFFFFF80  1010C100 
 Event Flags  00000000  E0000000 
 Buffered I/O count/limit 6/6 
 Direct I/O count/limit   6/6 
 File count/limit         27/30 
 Process count/limit      0/0 
 Timer queue count/limit  10/10 
 AST count/limit          6/6 
 Enqueue count/limit      30/30 
 Buffered I/O total 7      Direct I/O total 18 
 
 Link Date  27-DEC-2001 15:02:00.48   Patch Date  17-NOV-2001 00:01:53.71 
 ECO Level  0030008C  00540040  00000000  34303230 
 Kernel stack 00000000 pages at 00000000 moved to 00000000 
 Exec stack 00000000 pages at 00000000 moved to 00000000 
 Vector page 00000001 page at 7FFEFE00 moved to 00001600 
 PIO (RMS) area 00000005 pages at 7FFE1200 moved to 00001800
 Image activator context 00000001 page at 7FFE3400 moved to 00002200 
 User writable context 0000000A pages at 7FFE1C00 moved to 00002400 
Creating a subprocess 
         VAX DEBUG Version 5.4 
DBG>
 

この例は,VAX システムで ANALYZE/PROCESS コマンドに /FILL 修飾子を指定した場合の出力を示しています。指定したファイル ZIPLIST には,回復不可能なエラーが検出されたプロセスのダンプが含まれています。 DBG> プロンプトは,デバッガがコマンドを受け入れる用意ができていることを示します。

#2

$ ANALYZE/PROCESS/FULL WECRASH.DMP
           OpenVMS Alpha Debug64 Version X7.3-010 
%SYSTEM-F-IMGDMP, dynamic image dump signal at PC=001D0F8CB280099C, PS=001D0028 
break on unhandled exception preceding WECRASH\th_run\%LINE 26412 in THREAD 8 
%DEBUG-W-UNAOPNSRC, unable to open source file DSKD$:[IMGDMP]WECRASH.C;11 
-RMS-F-DEV, error in device name or inappropriate device type for operation 
 26412: Source line not available 
 
 image name                      set    base address           end address 
 CMA$TIS_SHR                     no     000000007B8CA000       000000007B8D7FFF 
    CODE0                               FFFFFFFF80500000       FFFFFFFF805033FF 
    DATA1                               000000007B8CA000       000000007B8CB3FF 
    DATA2                               000000007B8CC000       000000007B8D13FF 
    DATA3                               000000007B8D2000       000000007B8D21FF 
    DATA4                               000000007B8D4000       000000007B8D41FF 
    DATA5                               000000007B8D6000       000000007B8D63FF 
 DECC$SHR                        no     000000007BE7A000       000000007BF0DFFF 
    CODE0                               FFFFFFFF8055C000       FFFFFFFF806C9DFF 
    DATA1                               000000007BE7A000       000000007BEACFFF 
    DATA2                               000000007BEBA000       000000007BEC2DFF 
    DATA3                               000000007BECA000       000000007BED77FF 
    DATA4                               000000007BEDA000       000000007BEDA9FF 
    DATA5                               000000007BEEA000       000000007BEEA1FF 
    DATA6                               000000007BEFA000       000000007BEFE7FF 
    DATA7                               000000007BF0A000       000000007BF0D1FF 
 DPML$SHR                        no     000000007BB92000       000000007BBD1FFF 
    CODE0                               FFFFFFFF80504000       FFFFFFFF8055B5FF 
    DATA1                               000000007BB92000       000000007BBAC1FF 
    DATA2                               000000007BBAE000       000000007BBBDBFF 
    DATA3                               000000007BBBE000       000000007BBBE1FF 
    DATA4                               000000007BBC0000       000000007BBCC9FF 
    DATA5                               000000007BBCE000       000000007BBCE3FF 
    DATA6                               000000007BBD0000       000000007BBD07FF 
 LIBOTS                          no     000000007B5AA000       000000007B5B1FFF 
    DATA1                               000000007B5AA000       000000007B5AC5FF 
    DATA2                               000000007B5AE000       000000007B5AFBFF 
    DATA3                               000000007B5B0000       000000007B5B01FF 
 LIBRTL                          no     000000007B558000       000000007B5A9FFF 
    CODE0                               FFFFFFFF8041C000       FFFFFFFF804BD7FF 
    DATA1                               000000007B558000       000000007B5669FF 
    DATA2                               000000007B568000       000000007B5697FF 
    DATA3                               000000007B578000       000000007B5845FF 
    DATA4                               000000007B588000       000000007B5881FF 
    DATA5                               000000007B598000       000000007B59A5FF 
    DATA6                               000000007B5A8000       000000007B5A99FF 
 PTHREAD$RTL                     no     000000007BBD2000       000000007BC27FFF 
    DATA0                               000000007BBD2000       000000007BBDA1FF 
    DATA1                               000000007BBDC000       000000007BBDF3FF 
    DATA2                               000000007BBE0000       000000007BBE2FFF 
    DATA3                               000000007BBE4000       000000007BC1E1FF 
    DATA4                               000000007BC20000       000000007BC20BFF 
    DATA5                               000000007BC22000       000000007BC247FF 
    DATA6                               000000007BC26000       000000007BC275FF 
*WECRASH                         yes    0000000000010000       00000000000403FF 
 
 total images: 7 
 
  Thread Name                      State           Substate    Policy       Pri 
  ------ ------------------------- --------------- ----------- ------------ --- 
       1 default thread            blocked         join      2 SCHED_OTHER  11 
       2 thread 0: counting        ready VP 0                  SCHED_OTHER  11 
       3 thread 1: dumping         ready VP 0                  SCHED_OTHER  11 
       4 thread 2                  blocked         delay       SCHED_OTHER  11 
       5 thread 3                  blocked         delay       SCHED_OTHER  11 
       6 thread 4                  blocked         delay       SCHED_OTHER  11 
       7 thread 5: counting        ready VP 0                  SCHED_OTHER  11 
       8 thread 6: dumping         running                     SCHED_OTHER  11 
       9 thread 7                  blocked         delay       SCHED_OTHER  11 
      10 thread 8                  blocked         delay       SCHED_OTHER  11 
      11 thread 9                  blocked         delay       SCHED_OTHER  11 
 
 module name    routine name     line           rel PC           abs PC 
*WECRASH        th_run          26411       0000000000000244 0000000000030244 
 SHARE$PTHREAD$RTL_DATA0                    000000000001F15C 000000007BC0315C 
 SHARE$PTHREAD$RTL_DATA0                    000000000000F494 000000007BBF3494 
                                            0000000000000000 0000000000000000 
----- the above looks like a null frame in the same scope as the frame below 
 SHARE$PTHREAD$RTL_DATA0                                   ?                ? 
 
DBG> 
DBG> set source/latest sys$disk:[] 
DBG> examine/source .pc-4 
module WECRASH 
 26411:         lib$signal(SS$_IMGDMP); 
DBG>
 

この例は,Alpha システムで /FULL 修飾子の使用による,マルチスレッド・プロセス・ダンプ上の ANALYZE/PROCESS コマンンドの出力を示しています。


ANALYZE/RMS_FILE

Analyze/RMS_File ユーティリティを起動します。このユーティリティを使用すると, OpenVMS RMS ファイルの内部構造を検査し分析することができます。 /RMS_FILE 修飾子は必須です。

Analyze/RMS_File ユーティリティについての詳細は,『OpenVMS Record Management Utilities Reference Manual』あるいはオンライン・ヘルプを参照してください。


形式

ANALYZE/RMS_FILE ファイル指定[,...]


ANALYZE/SYSTEM

システム・ダンプ・アナライザ・ユーティリティを起動します。このユーティリティは,実行中のシステムを分析します。 /SYSTEM 修飾子は必須です。

Alpha システムにおけるシステム・ダンプ・アナライザ・ユーティリティについての詳細は,『OpenVMS Alpha System Analysis Tools Manual』あるいはオンライン・ヘルプを参照してください。 VAX システムにおけるシステム・ダンプ・アナライザ・ユーティリティについての詳細は,『OpenVMS VAX System Dump Analyzer Utility Manual』あるいはオンライン・ヘルプを参照してください。


形式

ANALYZE/SYSTEM


APPEND

指定された出力ファイルに, 1 つまたは複数の指定された入力ファイルの内容を追加します。

形式

APPEND 入力ファイル[,...] 出力ファイル


パラメータ

入力ファイル[,...]

追加する1つ,または複数の入力ファイルの名前を指定します。入力ファイルは,すべて指定された順に,出力ファイルの最後に追加されます。複数の入力ファイルを指定する場合には,コンマ (,) またはプラス記号 (+) で区切ります(コンマとプラス記号は,同じ意味に解釈されます)。

入力ファイルには,ワイルドカード文字 (* と %) を使用することができます。

出力ファイル

入力ファイルが追加されるファイルの名前を指定します。

少なくとも1つの出力ファイルを指定しなければなりません。装置やディレクトリを指定しなかった場合には,APPEND コマンドは,現在の省略時の装置およびディレクトリを使用します。省略したファイル指定要素に対しては,APPEND コマンドは,入力ファイルの対応する要素を使用します。

出力ファイルの指定時にアスタリスク・ワイルドカード文字 (*) を使用すると, APPEND コマンドは,指定した入力ファイルの対応する要素を使用します。複数の入力ファイルを追加している場合には,最初の入力ファイルの対応する要素を使用します。


説明

APPEND コマンドの構文と機能は,COPY コマンドの構文と機能に似ています。通常,APPEND コマンドは, 1つまたは複数のファイルの内容を既存のファイルの最後に追加します。この時,バージョン番号は増えません。 /NEW_VERSION 修飾子を指定すると,その名前を持つファイルが存在しない場合は,新しい出力ファイルが作成されます。

DECwindows 複合ドキュメントに APPEND コマンドを使用する場合には,特に注意してください。詳細は『Guide to OpenVMS File Applications』を参照してください。


修飾子

/ALLOCATION=ブロック数

出力ファイルの初期占有サイズを,1ブロック 512 バイトのブロック数で設定します。 /ALLOCATION 修飾子が指定されていない場合や, /ALLOCATION修飾子にブロック数を指定しない場合には,出力ファイルの初期占有サイズは,入力ファイルのサイズによって決定されます。

占有サイズは,/NEW_VERSION 修飾子が指定され,新しいファイルが実際に作成される場合にだけ適用されます。

/BACKUP

/BEFORE または /SINCE 修飾子を適用する時刻属性を指定します。この修飾子を指定すると,最新のバックアップの日時をもとにファイルを選択します。この修飾子は他の時刻属性を指定する修飾子,/CREATED,/EXPIRED,および /MODIFIED 修飾子とは同時に指定できません。これら 4 つの修飾子のいずれも指定しない場合には,省略時の設定として /CREATED 修飾子が使用されます。

/BEFORE[=時刻]

指定された時刻以前の時刻属性をもつファイルを選択します。絶対時刻,または絶対時刻とデルタ時間の組み合わせを指定します。また,BOOT,LOGIN,TODAY( 省略時の設定 ),TOMORROW,および YESTERDAY というキーワードも指定できます。適用する時刻属性は,/BACKUP,/CREATED( 省略時の設定 ),/EXPIRED,または /MODIFIED 修飾子のいずれかで指定します。

時刻指定の詳細は,『OpenVMS ユーザーズ・マニュアル』,またはオンライン・ヘルプの DCL_Tips トピックの Date_time を参照してください。

/BY_OWNER[=利用者識別コード]

ファイル所有者の利用者識別コード (UIC) が,指定された所有者 UIC と一致する場合にだけ,そのファイルを選択します。 /BY_OWNER 修飾子だけを指定し,UIC を省略した場合には,現在のプロセスの UIC が使用されます。

UIC を指定する場合には,『OpenVMS ユーザーズ・マニュアル』に説明されている標準的な UIC 形式を使用します。

/CONFIRM

/NOCONFIRM (省略時の設定)

ファイルに対する各 APPEND 操作の実行を確認するために,操作の前に確認を要求します。システムがプロンプトを表示したら,次のいずれかの応答を入力します。

YES NO QUIT
TRUE FALSE [Ctrl/Z]
1 0 ALL
  [Return]  


前へ 次へ 目次 索引