日本-日本語
日本HPホーム 製品 & サービス OpenVMS製品情報
≫  お問い合わせ


OpenVMS マニュアル


 

OpenVMS ドキュメント
ライブラリ

タイトル
目次
まえがき
リファレンス・セクション
   ≫ライブラリ関数一覧
索引
PDF
OpenVMS ホーム

HP OpenVMS
HP C ランタイム・ライブラリ・リファレンス・マニュアル (下巻)


目次 索引




プロセス ID によって指定されたプロセスにシグナルを送信します。

形式

#include <signal.h>

int kill (int pid, int sig);


引数



pid

プロセス ID。

sig

シグナル・コード。

説明

kill関数は, main関数を含んでいる C および C++ プログラムでのみ使用できます。

kill関数は,プロセスが raiseを呼び出したときと同じように,プロセスに対してシグナルを送信します。シグナルが ターゲット・プログラムによってトラップまたは無視されなかった場合,そのプログラムは実行を終了します。

OpenVMS VAX および Alpha は,シグナルの送信先として指定できるプロセスに関して,異なる規則を実装しています。プログラムは, vfork/ execによって起動された子プロセスには,つねにシグナルを送信する権限を持っています。その他のプロセスでの結果は,システムの OpenVMS セキュリティ・モデルによって決定されます。

OpenVMS の制約のために, kill関数は,特権付きでインストールされたイメージを実行するターゲット・プロセスにシグナルを配信することはできません。

システム特権がない限り,送信側と受信側のプロセスは,同じ利用者識別コード (UIC) を持っている必要があります。

V7.0 より前の OpenVMS システムでは, killはシグナル値 0 を, SIGKILL が指定された場合と同じように扱います。

OpenVMS Version 7.0 およびそれ以降のシステムでは, <stdlib.h>をインクルードし, _POSIX_EXIT 機能テスト・マクロを設定してコンパイルすると,次のようになります。

  • シグナル値が 0 ならば, killはプロセス ID を確認するが,シグナルを送信しない。

  • プロセス ID が有効でなければ, killは - 1 を返し, errnoを ESRCH に設定する。


戻り値

0 kill をキューに入れることに成功したことを示します。
-1    エラーを示します。受信側のプロセスが異なる UIC を持っており,ユーザがシステム・ユーザでないか,受信側のプロセスが存在しません。


目次 索引

© 2012 Hewlett-Packard Development Company, L.P.