• ベストアンサー

UNIX系でのプロセスIDの操作プログラミング

OSはFreeBSDを使用しています。 プロセスを起動させたときのプロセスIDを 取り出すようなヘッダーは存在しないでしょうか? 実現可能でしょうか? よろしくお願いします。

  • fm0606
  • お礼率13% (100/761)

質問者が選んだベストアンサー

  • ベストアンサー
  • MovingWalk
  • ベストアンサー率43% (2233/5098)
回答No.1

>プロセスを起動させたときのプロセスIDを >取り出すようなヘッダーは存在しないでしょうか? ごめんなさい。どうしたいのか理解できません。 自分自身のPIDは、getpid()でわかるのではないでしょうか? 

その他の回答 (1)

  • inetd
  • ベストアンサー率23% (43/184)
回答No.2

「ヘッダー」って何ですか? また、使用している言語はなんですか? C言語ならプロセスを新たに作った場合は fork() のリターン値で子プロセスのIDがわかる筈ですが。

関連するQ&A

  • プロセスIDの再利用

    こんちにちは、honiyonです。  親子関係のない全く別々に起動されたプロセスの終了するプログラムを作ろうと思います。  .NETではシステムで一意なIDというものがある、という情報を見かけたのですが、.NETは使用したくないのでプロセスIDを使って監視出来ないかと考えています。  プロセスIDを使って、定期的にポーリングする方法をとったとき、 プロセスIDが再利用されてしまう事で終了を検知出来ない事があるのではという疑問が出てきました。  UNIXでは極力重複しない(再利用しない)という方針があるようですが、Windowsではそのような仕組みはありますでしょうか?  そのような仕組みがあれば、再利用による検知ミスは無視出来るレベルの問題かなと考えています。    また、プロセスIDでの監視以外で良い手段がありましたら、是非ご教授頂ければ幸いです。  宜しくお願いします(..  

  • プロセスIDの取得方法 

    Unix C++でプロセスIDの取得方法を教えてください。 (見当違いの質問だったらすみません) 親プロセス(自分)のプロセスIDと、親プロセスの起動した子プロセスのプロセスIDを取得したいです。 また、親プロセスの起動した子プロセスのプロセスIDを使って親プロセス終了時に子プロセスをkillしたいと思うのですが、 具体的にどうすればいいかわからず困っています。

  • ShellExecuteが起動したプロセスのID

    CreateProcessは起動したプロセスのIDをくれますが、ShellExecuteでは分からないものでしょうか。 ShellExecuteExならプロセスのハンドルを受け取ることはできますが、IDは分かりません。 ハンドルから元のIDを割り出す関数でもないですかね。

  • プロセスIDの取得の方法。

    使用言語:C OS:NT4.0WS プロセスビューアで表示されるような、プロセスIDやプロセス名を 取得する方法を探しています。 Cの標準関数で無ければAPI関数での方法でもどちらでも構わないので よろしくお願いします。

  • 起動しているアプリケーションのプロセスIDを取得したい.

    現在,起動しているアプリケーションのプロセスIDを取得したいと考えています. プロセスIDを取得するコマンドはあるのでしょうか? 環境:Windows2000+SP3

  • プロセスIDの取得(タスクバーのみ)

    似たような質問ですがわからないことがあるので質問します。 Enumwindows関数でタスクバーにあるウインドウ(トップレベルウィンドウ)を列挙することはできましたが、そのプロセスIDを表示させることができませんでした。 別のプログラムでプロセスIDを表示させることはできましたが そのプログラムですとすべてのプロセスを表示することになるので これでは自分のやりたい事と少し違うので困っています。 どうしたらタスクバーにあるプロセスIDをとりだすことができるので しょうか? 自分では GetWindowThreadProcessId関数 EnumChildWindows関数 を使用すればいいと思ってますが、具体的なプログラムが くめていません。 どうかよろしくおねがいします。

  • 起動しているプロセスをリスト

    FreeBSDで、現在起動しているプロセスを表示させるコマンドなどございますでしょうか?また、自分が作成したプロセスのみを表示させることもしたいのですが、方法をご存知の方おられましたらなにとぞよろしくお願いいたします。

  • 既存プロセスからプロセスのプライマリースレッドIDの取得方法

    いつもお世話になってます。 プロセスに関することで分からないことがあるため、どなたか御教授して下さい。 只今、VC++で開発を行っているのですが、CreateProcess関数を使用して開始したプロセスの情報が、引数で指定したPROCESS_INFORMATIONにプライマリースレッドのハンドルやIDが設定されるのは知っているのですが、現在動作中のプロセスからそのプロセスのプライマリースレッドのIDを取得することは可能でしょうか? 具体的には、動作中のプロセスIDを指定するとそのプロセスのプライマリースレッドに対してPostThreadMessageで任意のメッセージが送れるという仕様です。 対象のプロセスがウィンドウを持っていれば、EnumWindows関数を使用してウィンドウに対してPostMessageができるというのは分かったのですが、今回対象のプロセスがウィンドウを持たない為、上記のようにスレッドに対してメッセージを送るようになっています。 CreateProcess呼び出し時にはスレッドIDが取得できることから、プロセスID、または、プロセスハンドルからスレッドIDが取得できるのではないかなと考えられるんですが。。。。

  • プロセスIDの取得方法について

    下に同様の質問をしたのですが、削除方法分からない為、再度質問させていただきまし。 VB5.0を利用しています。 VBで書いたexeを実行した際に、そのプロセスID(自分の)は、GetCurrentProcessIdを利用すれば取得できると分かりました。 が、プログラム内でExcelを下記の様にオブジェクトを作成した場合、そのプロセスIDをどうやって取得すればいいのでしょうか? ご存知の方居ましたら、教えて下さい。 Set ExcelObj = CreateObject("Excel.Application") ここで起動?されたExcelのプロセスIDを取得したいのですが。

  • windowsのプロセスIDやスレッドIDの使い道

    win32APIで取得したプロセスIDやスレッドIDの使い道について教えてください。 CreateProcessなどで取得したプロセスのハンドルやスレッドのハンドルはwin32APIで使う場面がありますが、プロセスIDやスレッドIDの使い道がわかりません。 どのような場面でプロセスIDやスレッドIDを使うのでしょうか?具体的にこんな事をするときに使うよなどあれば教えていただきたいです。 プロセスIDやスレッドIDを引数にとるAPI関数などがあれば教えていただきたいです。