OpenVMS
DCL ディクショナリ


前へ 次へ 目次 索引


指定したアクセス・モード,またはそれより外側の(特権の低い) アクセス・モードで登録された,エントリだけが削除されることを指定します。エグゼクティブ・モードに対する SYSNAM 特権を持たない場合には,スーパバイザ・モードの論理名の割り当てを解除します。

/GROUP

グループ論理名テーブルからエントリを削除するためには, GRPNAM(グループ論理名)または SYSPRV 特権が必要です。

指定した論理名が,グループ論理名テーブルに登録されていることを示します。 /GROUP 修飾子は,/TABLE=LNM$GROUP 修飾子の同意語です。

/JOB

指定した論理名が,ジョブ論理名テーブルに登録されていることを示します。 /JOB 修飾子は,/TABLE=LNM$JOB 修飾子の同意語です。論理名テーブルを明示的に指定しない場合には,省略時の設定として /PROCESS 修飾子が使用されます。

ログイン時にシステムが作成するジョブ論理名,たとえば,SYS$LOGIN,SYS$LOGIN_DEVICE,および SYS$SCRATCH などの割り当ては,解除してはいけません。ただし,これらの論理名に対して,ユーザ自身が新しい等価名を割り当てている場合 (つまり,より特権の低いアクセス・モードで新しい論理名を作成している場合)には,明示的に作成した論理名の割り当てを解除することが可能です。

/PROCESS (省略時の設定)

指定した論理名が,プロセス論理名テーブルに登録されていることを示します。 /PROCESS 修飾子は /TABLE=LNM$PROCESS 修飾子と同意語です。

コマンド・インタプリタが作成した論理名,たとえば SYS$INPUT,SYS$OUTPUT,および SYS$ERROR などの割り当ては,解除することができません。ただし,これらの論理名に対して新しい等価名を割り当てている場合 (つまり,より特権の低いアクセス・モードで新しい論理名を作成している場合)には,明示的に作成した論理名の割り当てを解除することが可能です。

/SUPERVISOR_MODE (省略時の設定)

指定した論理名テーブルに登録されている論理名の中で,スーパバイザ・モードで作成された論理名を削除します。 /SUPERVISOR_MODE 修飾子を指定すると,DEASSIGN コマンドは,ユーザ・モードの同じ名前の論理名の割り当ても解除します。

/SYSTEM

指定した論理名が,システム論理名テーブルに登録されていることを示します。 /SYSTEM 修飾子は,/TABLE=LNM$SYSTEM 修飾子の同意語です。

/TABLE=テーブル名

削除する論理名が含まれている論理名テーブルの名前を指定します。省略時の設定は LNM$PROCESS です。プロセス・テーブル,ジョブ・テーブル,グループ・テーブル,システム・テーブル,あるいはディレクトリ・テーブルの1つ,または利用者定義テーブルの名前を指定することができます (プロセス,ジョブ,グループ,システムの各論理名テーブルは,それぞれ LNM$PROCESS,LNM$JOB,LNM$GROUP,LNM$SYSTEM という論理名で指定しなければなりません)。

/TABLE 修飾子を使用すれば,論理名テーブルを削除することもできます。プロセスに固有なテーブルを削除するためには,次のように指定します。


$ DEASSIGN/TABLE=LNM$PROCESS_DIRECTORY  テーブル名

共有可能テーブルを削除するためには,次のように指定します。


$ DEASSIGN/TABLE=LNM$SYSTEM_DIRECTORY  テーブル名

共有可能な論理名テーブルを削除するためには,そのテーブルに対して削除(D)アクセスが可能であるか,または共有可能テーブルの名前が登録されているディレクトリ・テーブルに対して書き込み(W)アクセスが可能でなければなりません。

/TABLE 修飾子を指定しない場合には,省略時の設定として /TABLE=LNM$PROCESS 修飾子が使用されます。

/USER_MODE

ユーザ・モードで作成されたプロセス論理名テーブルの論理名を削除します。 /USER_MODE 修飾子を指定する場合, DEASSGIN コマンドは,ユーザ・モードの論理名の割り当てのみを解除します。また,ユーザ・モード論理名は,コマンド・プロシージャの起動および実行中に,自動的に削除されます。

#1

$ DEASSIGN MEMO

この例では,プロセス論理名 MEMO を解除しています。

#2

$ DEASSIGN/ALL

この例では,ユーザ・モードおよびスーパバイザ・モードの論理名をすべて解除しています。しかし,コマンド・インタプリタによってプロセス論理名テーブルに登録されたエグゼクティブ・モードの論理名 (たとえば,SYS$INPUT, SYS$OUTPUT, SYS$ERROR, SYS$DISK, および SYS$COMMAND 等) は消しません。

#3

$ DEASSIGN/TABLE=LNM$PROCESS_DIRECTORY TAX

この例では,論理名テーブル TAX とその下層のテーブルを削除します。論理名テーブルを削除するには,/TABLE=LNM$PROCESS_ DIRECTORY または /TABLE=LNM$SYSTEM_DIRECTORY 修飾子を指定しなければなりません。これは,すべてのテーブル名はこれらのディレクトリに格納されているためです。

#4

$ ASSIGN USER_DISK:   COPY
$ SHOW LOGICAL COPY
   "COPY" = "USER_DISK:" (LNM$PROCESS_TABLE)
$ DEASSIGN COPY
 

この ASSIGN コマンドは,論理名 COPY と装置 USER_DISK を等価にし,プロセス論理名テーブルに置きます。 DEASSIGN コマンドは,論理名を削除します。

#5

$ DEFINE SWITCH:  TEMP
$ DEASSIGN SWITCH::

この DEFINE コマンドは,SWITCH: という論理名を,プロセス論理名テーブルに登録します。最後のコロンは,論理名の一部として保存されます。この論理名を DEASSIGN コマンドで削除するためには,2つのコロンが必要です。これは,DEASSIGN コマンドが最後のコロンを1つ削除してしまうので,論理名に含まれる文字と一致するようにもう1つのコロンが必要なためです。

#6

$ ASSIGN/TABLE=LNM$GROUP DKA1: GROUP_DISK
$ DEASSIGN/PROCESS/GROUP GROUP_DISK

この例では,グループ論理名 GROUP_DISK を作成しています。次の DEASSIGN コマンドの修飾子は矛盾していますが, /GROUP 修飾子が後に指定されているためうまく論理名が削除されています。

#7

$ ASSIGN DALLAS::USER_DISK:   DATA
   .
   .
   .
$ DEASSIGN DATA

この ASSIGN コマンドは,DALLAS というリモート・ノードの USER_DISK という装置指定に対して,DATA という論理名を割り当てます。この後,DATA という論理名を参照すると, DALLAS というリモート・ノードの USER_DISK というディスクが参照されます。 DEASSIGN コマンドは,この DATA という論理名の割り当てを解除します。


DEASSIGN/QUEUE

プリント・キューまたはターミナル・キューから,論理キューの割り当てを解除し,論理キューを停止します。 DEASSIGN/QUEUE コマンドは,バッチ・キューには使用できません。

キューに対する管理 (M) アクセス権が必要です。


形式

DEASSIGN/QUEUE 論理キュー名[:]


パラメータ

論理キュー名[:]

特定のプリント・キュー,またはターミナル・キューから割り当てを解除する,論理キューの名前を指定します。

説明

DEASSIGN/QUEUE コマンドを入力すると,論理キュー内のジョブは, ASSIGN/QUEUE コマンドでキューを別のプリント・キューまたは装置に再割り当てされるまで,待ち状態になります。

#1

$ ASSIGN/QUEUE LPA0  ASTER
   .
   .
   .
$ DEASSIGN/QUEUE  ASTER
$ ASSIGN/MERGE LPB0  ASTER

この ASSIGN/QUEUE コマンドは,ASTER という論理キューを LPA0 というプリント・キューに割り当てます。このあと DEASSIGN/QUEUE コマンドを使用して,この論理キューの割り当てを解除します。ASSIGN/MERGE コマンドは, ASTER に含まれるジョブを,LPB0 というプリント・キューに再割り当てします。


DEBUG

OpenVMS Debugger を起動します。

OpenVMS Debugger についての詳細は『OpenVMS デバッガ説明書』を参照してください。

DCL レベルからデバッガ・コマンドのヘルプを参照したい場合は,次のコマンドを入力します。


$ HELP/LIBRARY=SYS$HELP:DBG$HELP DEBUG


形式

DEBUG


ヒープ・アナライザ

ヒープ・アナライザには,メモリの使用状況をリアルタイムで図に示す機能があります。示された図を検討することで,性能を改善できる可能性のあるアプリケーション部分を素早く判別することができます。たとえば回数の多すぎるメモリ割り当て,大きなメモリ・ブロック,フラグメンテーションの顕在化,あるいはメモリ・リークなどに気付きます。

デバッガからのヒープ・アナライザの実行についての詳細は,『OpenVMS デバッガ説明書』を参照してください。

スタンドアロンでヒープ・アナライザを実行する場合は,次のコマンドを実行してください。


$ DEFINE/USER/NAME=CONFINE LIBRTL SYS$LIBRARY:LIBRTL_INSTRUMENTED
$ RUN/NODEBUG program


修飾子

/CLIENT

DEBUG クライアントの Motif インタフェースを起動します。クライアントから,サーバによって表示されるネットワーク・バインディング文字列を使用して接続します。サーバに最初に接続したクライアントは 1 次クライアントであり,そのサーバに接続できる 2 次クライアントの数を制御します。

/KEEP

保持デバッガ (Kept Debugger) を起動します。保持デバッガは, 1 つのイメージを何度もデバッグしたり,デバッガを終了せずに特定の複数のイメージをデバッグしたりすることができます。

保持デバッガを起動するには,DEBUG/KEEP コマンドを実行します。

/RESUME (省略時の設定)

デバッグしているプログラムの実行を Ctrl/Y で中断した後,非保持デバッガを再起動します (LINK コマンドで /NOTRACEBACK 修飾子を指定してリンクしたプログラムを中断することはできません)。

Ctrl/Y でプログラムの中断をしていない場合は, DEBUG/RESUME コマンドを実行しても何も起こりません。

/SERVER [=([BINDING_INFO=ファイル指定] [,PROTOCOLS=(プロトコル[,...])])]

DEBUG サーバを起動します。 DEBUG サーバには,同一の OpenVMS ノードあるいはリモート OpenVMS ノード,または Microsoft® Windows® 95 あるいは Microsoft Windows NT® が稼動している PC ノード上の最大 30 までのクライアントが同時に接続することができます。

省略可能な BINDING_INFO キーワードを指定する場合は,サーバ・バインディング識別文字列が書き込まれるファイル指定を指定します。このキーワードを指定しない場合は,ファイルは作成されません。

省略可能な PROTOCOLS キーワードを指定する場合は, DEBUG サーバに接続するために有効とするネットワーク・プロトコルを指定します。指定されたプロトコルだけが有効となります。このキーワードを指定しない場合は,すべてのプロトコルが有効となります。プロトコル引数には,次のキーワードのいずれか 1 つあるいは複数を指定することができます。

ALL
[NO]DECNET
[NO]TCP_IP
[NO]UDP

サーバに最初に接続したクライアントは 1 次クライアントとなります。 1 次クライアントの接続後に接続したクライアントは 2 次クライアントとなります。 1 次クライアントは,そのサーバに接続できる 2 次クライアントの数を制御します。

サーバは,一連の RPC バインディング文字列を表示して,クライアントがサーバに接続するために経由するポート番号を識別します。ポート番号は,識別文字列の最後の角括弧 ([]) の中に表示されます。

クライアントから接続する場合の最も簡単なポート識別文字は,サーバのノード名と角括弧に囲まれたポート番号で構成されます。次の例はすべて正しいバインディング識別文字列です。

NODNAM[1234]
NCACN_IP_TCP:16.32.16.25[1112]
16.32.16.25[1112]
NCACN_DNET_NSP:63.1004[RPC20A020DD0001]

注意

デバッグ・サーバを起動するには,ライト・データベースに DBG$ENABLE_SERVER 識別子を持っている必要があります。デバッグ・サーバを使用する場合は注意してください。一度デバッグ・サーバを起動すると,ネットワーク上の任意のクライアントがそのデバッグ・サーバに接続することができます。

システム管理者は,DBG$ENABLE_SERVER 識別子を許可する前に,ライト・データベースにアクセスするための書き込みアクセスを持つアカウントから DEBUG/SERVER コマンドを実行してこの識別子を作成しておかなければなりません。システム管理者は一度だけこの識別子を作成する必要があります。以降は,Authorize ユーティリティを起動して,ライト・データベースのユーザ・アカウントに DBG$ENABLE_SERVER 識別子を許可することができます。

/TARGET_ARCHITECTURE[=オプション]

/KEEP と共に使用し,System Code Debugger を使用してデバッグを実行する対象の OpenVMS ソフトウェアを実行しているシステムのアーキテクチャを指定します。オプションは,次のとおりです。

HOST (省略時の設定) ターゲット・アーキテクチャが,ホストのアーキテクチャと同じ (つまり,DEBUG/KEEP コマンドを入力するシステムである)。
ALPHA ターゲット・アーキテクチャが,Alpha プロセッサである。
IA64 ターゲット・アーキテクチャが, Intel® Itanium® プロセッサである。


#1

$ FORTRAN/DEBUG/NOOPTIMIZE WIDGET
$ LINK/DEBUG WIDGET
$ RUN WIDGET
                [ Debugger Banner and Version ] 
 
%DEBUG-I-INITIAL, language is FORTRAN, module set to WIDGET 
DBG>
 

FORTRAN および LINK コマンドは /DEBUG 修飾子を指定して,デバッガ・シンボル・テーブル情報とプログラム WIDGET.FOR をコンパイルしています。このプログラムはデバッグ情報でコンパイルおよびリンクされているので,RUN コマンドでプログラムが開始されるとイメージ・アクティベータは自動的にデバッガを起動します。デバッガが起動された時点では,プログラム・コードは展開されていません。

#2

$ FORTRAN/DEBUG/NOOPTIMIZE WIDGET
$ LINK/DEBUG WIDGET
$ RUN/NODEBUG WIDGET
  NAME: 
  NAME: 
  NAME:
^Y
$ DEBUG/RESUME
 
             [ Debugger Banner and Version ] 
 
  %DEBUG-I-INITIAL, language is FORTRAN, module set to WIDGET 
  DBG>
 

FORTRAN および LINK コマンドは /DEBUG 修飾子を指定して,デバッガ・シンボル・テーブル情報でプログラム WIDGET.FOR をコンパイルしています。RUN コマンドはイメージ WIDGET.EXE の実行を始めます。このイメージはループし,制御不可能です。Ctrl/Y でプログラムに割り込みをかけ, DEBUG/RESUME コマンドで制御をデバッガに移します。

#3

$ CC/DEBUG/NOOPTIMIZE ECHOARGS
$ LINK/DEBUG ECHOARGS
$ ECHO == "$ sys$disk:[]echoargs.exe"
$ DEBUG/KEEP
                   [ Debugger Banner and Version ] 
 
DBG> RUN/COMMAND="ECHO"/ARGUMENTS="fa sol la mi"
%DEBUG-I-INITIAL, language is C, module set to ECHOARGS 
%DEBUG-I-NOTATMAIN, type GO to get to start of main program 
DBG> 
   .
   .
   .
DBG> RERUN/ARGUMENTS="fee fii foo fum"
%DEBUG-I-INITIAL, language is C, module set to ECHOARGS 
%DEBUG-I-NOTATMAIN, type GO to get to start of main program 
DBG> 
   .
   .
   .
DBG> RUN/ARGUMENTS="a b c" ECHOARGS
%DEBUG-I-INITIAL, language is C, module set to ECHOARGS 
%DEBUG-I-NOTATMAIN, type GO to get to start of main program 
DBG> 
 

CC および LINK コマンドは /DEBUG 修飾子を指定して,デバッガ・シンボル・テーブル情報でプログラム ECHOARGS.C をコンパイルしています。

シンボル定義コマンドは,デバッグ・セッション中にフォーリン・コマンドを定義します。

DEBUG/KEEP コマンドは,保持デバッガを起動します。

最初の RUN コマンドは,/COMMAND 修飾子を使用してイメージ・ファイルを起動するフォーリン・コマンドを指定し, /ARGUMENTS 修飾子を使用して引数の文字列を指定します。

RERUN コマンドは同一イメージ・ファイルを再起動し, /ARGUMENTS 修飾子を使用して新しい引数の文字列を指定します。

2 番目の RUN コマンドは新しいイメージ・ファイル,および新しい引数の文字列を指定します。

#4

$ PASCAL/DEBUG/NOOPTIMIZE 8QUEENS
$ LINK/DEBUG 8QUEENS
$ DEFINE/USER/NAME=CONFINE LIBRTL SYS$LIBRARY:LIBRTL_INSTRUMENTED
$ RUN/NODEBUG 8QUEENS
 
        [Heap Analyzer window is displayed] 
 

PASCAL および LINK コマンドは /DEBUG 修飾子を指定して,デバッガ・シンボル・テーブル情報でプログラム 8QUEENS.PAS をコンパイルします。

DEFINE コマンドにより,ヒープ・アナライザはメモリ割り当てとメモリ割り当ての解除に関する情報を収集する LIBRTL にアクセスします。

RUN/NODEBUG コマンドはヒープ・アナライザを起動しますが,デバッガは起動しません。

#5

$ DEBUG/SERVER=(PROTOCOLS=(TCP_IP,DECNET))
 
%DEBUG-I-SPEAK: TCP/IP: YES, DECnet: YES, UDP: NO 
%DEBUG-I-WATCH: Network Binding: ncacn_ip_tcp:16.32.16.25[1112] 
%DEBUG-I-WATCH: Network Binding: ncacn_dnet_nsp:63.1004[RPC20A020DD0001] 
%DEBUG-I-AWAIT: Ready for client connection... 

DEBUG/SERVER コマンドは,ネットワーク・プロトコルの TCP/IP および DECnet を指定して,デバッグ・サーバに接続します。バインディング文字列は TEMP.TMP ファイルに保存されることに注意してください。 TYPE コマンドを使用して,TEMP.TMP の内容を表示することができます。


前へ 次へ 目次 索引