日本-日本語
≫  お問い合わせ

製品とサービス >  ソフトウェアとOS >  OpenVMS >  マニュアル

OpenVMS マニュアル


HP OpenVMS
DCL ディクショナリ


目次 索引



コマンド,イメージ,コマンド・プロシージャ,Ctrl/Y によって割り込まれたコマンド・プロシージャ,独立プロセス,または独立サブプロセスの実行を終了します。

同じグループ内の他のプロセスを終了するには,GROUP 特権が必要です。グループ外のプロセスを終了するには,WORLD特権が必要です。


形式

STOP [プロセス名]


パラメータ



プロセス名

削除したいプロセスと同じグループに属していなければなりません。

削除するプロセス名を指定します。プロセス名には,1 〜 15 文字の英数字を指定します。プロセス名 にスペース文字や小文字が含まれている場合は,プロセス名全体を二重引用符 (" ") で囲みます。

指定した利用者識別コード (UIC) のグループ番号は,現在のプロセスと同じでなければなりません。プロセス名 パラメータを使用して,グループ外のプロセスを終了することはできません。グループ外のプロセスを終了するには, /IDENTIFICATION=pid 修飾子を使用する必要があります。

プロセス名は,/IDENTIFICATION 修飾子と同時に指定することはできません。 /IDENTIFICATION 修飾子を使用すると,プロセス名は無視されます。 STOP コマンドに,プロセス名 パラメータと /IDENTIFICATION 修飾子のどちらも指定しない場合は,現在のプロセスで実行しているイメージが終了します。


説明

STOP コマンドを実行すると,現在実行中のイメージは異常終了します。イメージが,$DCLEXH システム・サービスへの呼び出しによってユーザモードの終了処理ルーチンイメージを宣言しても,省略時設定では,これらの終了処理ルーチンは起動されません。終了処理ルーチンの実行が必要な場合は,EXIT コマンドまたは STOP/EXIT コマンドを使用してイメージを終了すれば,モード固有の終了ハンドラが起動します。

STOP コマンドが,( バッチ・ジョブなど ) 非会話型プロセスから実行された場合,そのプロセスは終了します。

Ctrl/Y 機能を使用してイメージに割り込み, DCL RUN コマンドや CLI ベースでない DCL を入力した場合,割り込まれたイメージは終了します。ただし,この場合は,終了処理ルーチンが実行された後に次のイメージが実行されます。プロセスおよびイメージのランダム処理についての詳細は,『OpenVMS ユーザーズ・マニュアル』または『HP OpenVMS Programming Concepts Manual』を参照してください。

Ctrl/Y を押してコマンド・プロシージャに割り込んだ後に STOP コマンドを実行するか,またはコマンド・プロシージャ内で STOP コマンドを実行した場合は,すべてのコマンド・レベルがスタック解除され,制御はコマンド・レベル 0 ($ プロンプトを表示する DCL レベル ) に戻ります。

プロセス名またはプロセス識別 (PID) コードを指定すると,STOP コマンドは,指定したプロセス内で現在実行中のイメージを終了し,そのプロセスを削除します。プロセスが非会話型の場合,削除は通知されず,そのジョブのログ・ファイルも出力されません。


修飾子



/IDENTIFICATION=pid

システムによって割り当てられたプロセス識別 (PID) コードを指定します。 RUN コマンドを使用してプロセスを作成する場合に,RUN コマンドは,新しく作成したプロセスの PID コードを表示します。この /IDENTIFICATION 修飾子は,プロセス名パラメータの代わりに使用することもできます。

PID コードを指定する場合に,先行の 0 は省略できます。

/IMAGE [/IDENTIFICATION=pid] [process-name]

$FORCEX システム・サービスを呼び出して,プロセス ID またはプロセス名で指定された実行中のターゲット・プロセスのイメージを終了します。ターゲット・プロセスは削除されません。

/IDENTIFICATION 修飾子とプロセス名を省略した場合, STOP/IMAGE コマンドは STOP コマンドと同じです。

/EXIT[=アクセス・モード] (省略時の設定)

/NOEXIT

プロセスを削除する前に終了ハンドラを呼び出すときのオプションを指定します。

アクセス・モード・オプションの意味は,次の表のとおりです。

モード 説明
EXECUTIVE_MODE エグゼクティブ以上の特権モード終了ハンドラを実行する(アクセス・モードを指定しなかった場合の省略時の設定)。
KERNEL_MODE カーネル・モード終了ハンドラを実行する。
SUPERVISOR_MODE スーパバイザ以上の特権モード終了ハンドラを実行する。
USER_MODE ユーザ以上の特権モード終了ハンドラを実行する。


#1
$ RUN MYPROG
   .
   .
   .
[Ctrl/Y]
Interrupt
$ STOP

この例で RUN コマンドは,MYPROG イメージの実行を開始します。次に,Ctrl/Y がこの実行に割り込みます。その後,STOP コマンドがこのイメージを終了させます。

#2
$ @TESTALL
   .
   .
   .
 
[Ctrl/Y]
Interrupt
$ STOP
 

この例で @( 実行プロシージャ ) コマンドは,コマンド・プロシージャ TESTALL.COM を実行します。次に,Ctrl/Y がこのプロシージャに割り込みます。その後,STOP コマンドが,DCL コマンド・インタプリタに制御を戻します。

#3
$ RUN/PROCESS_NAME=LIBRA  LIBRA
%RUN-S-PROC_ID, identification of created process is 0013340D
   .
   .
   .
$ STOP LIBRA
 
 

この例で RUN コマンドは, LIBRA という名前のサブプロセスを作成して LIBRA.EXE イメージを実行します。その後,STOP コマンドがイメージを終了してプロセスを削除します。

#4
$  ON ERROR THEN STOP
   .
   .
   .

コマンド・プロシージャ内では,ON コマンドを使用して,コマンドまたはプログラムの実行中にエラーが発生した場合の省略時の動作を設定します。STOP コマンドは,コマンド・レベルをすべて終了します。この ON コマンドがあるコマンド・プロシージャ内で実行され,それが既に別のプロシージャの中からも実行されている場合,制御は,外側のプロシージャではなく DCL コマンド・レベル 0 に戻ります。

#5
$ STOP/EXIT

プロセスを終了して,エグゼクティブ・モードで開始する終了ハンドラを実行します。

#6
$ STOP/IMAGE/ID=12345678

プロセス 12345678 によって実行されている現在のユーザ・イメージを終了します。


目次 索引

プライバシー 本サイト利用時の合意事項 ウェブマスターに連絡