[openrtm-users 01670] ゾンビプロセスの消し方

2 個の投稿 / 0 new
最終投稿
root
オフライン
Last seen: 18時間 30分 前
登録日: 2009-06-23 14:31
[openrtm-users 01670] ゾンビプロセスの消し方

皆様

静岡大学の清水です。

LinuxでRTCを動かし、psコマンドでプロセスの状態を眺めてい

気づいたのですが、コンソールからコンポーネントを起動する
と、
以下のようにゾンビプロセスができます。

USER PID %CPU %MEM VSZ RSS TTY STAT START
TIME COMMAND
shimizu 16971 0.2 0.3 42816 6148 pts/0 Sl+ 17:54
0:00 ./ConsoleOutComp
shimizu 16976 0.0 0.0 0 0 pts/0 Z+ 17:54
0:00 [sh]

* ConsoleOutCompを実行したときのpsの表示結果。
16976がゾンビプロセスとして認識されている。

* 環境:OpenRTM-aist-1.0.0(C++), Ubuntu10.04.

コンポーネントを終了すればゾンビも一緒に消えますし、
動いている間もメモリやCPUを消費していないので、
特に実害はありません。

ただ、プロセス上にゾンビがあるのは心地良くないので、
ゾンビを消す、もしくはゾンビとして認識されないように
したいのですが、良い方法をご存知の方は
ご教示頂けると幸いです。

よろしくお願いいたします。

清水

未定義
root
オフライン
Last seen: 18時間 30分 前
登録日: 2009-06-23 14:31
[openrtm-users 01671] ゾンビプロセスの消し方

静岡大学 清水先生

産総研 栗原です。

ご連絡いただき、有難うございます。

こちらで調査いたしましたところ、RTM側でpopen()に対するwait()もしくは、
waitpid()の処理が抜けていることが判明いたしました。

RTCでどのネットワークインターフェースを使用するかを判別するために、
”route”もしくは"ip"コマンドをpopen()を用いて実行してます。

OpenRTM-aist/src/lib/coil/posix/coil/Routing.cpp内のpclose(fp);
の後にwait(NULL);を入れる事で、こちらではゾンビプロセスは出なく
なりました。(暫定対応)
( #include も必要です。)

次期リリース版にて修正させて頂きます。

以上、宜しくお願いいたします。

2011年4月21日18:12 Masayuki Shimizu :
> 皆様
>
> 静岡大学の清水です。
>
> LinuxでRTCを動かし、psコマンドでプロセスの状態を眺めてい
> て
> 気づいたのですが、コンソールからコンポーネントを起動する
> と、
> 以下のようにゾンビプロセスができます。
>
> USER PID %CPU %MEM VSZ RSS TTY STAT START
> TIME COMMAND
> shimizu 16971 0.2 0.3 42816 6148 pts/0 Sl+ 17:54
> 0:00 ./ConsoleOutComp
> shimizu 16976 0.0 0.0 0 0 pts/0 Z+ 17:54
> 0:00 [sh]
>
> * ConsoleOutCompを実行したときのpsの表示結果。
> 16976がゾンビプロセスとして認識されている。
>
> * 環境:OpenRTM-aist-1.0.0(C++), Ubuntu10.04.
>
> コンポーネントを終了すればゾンビも一緒に消えますし、
> 動いている間もメモリやCPUを消費していないので、
> 特に実害はありません。
>
> ただ、プロセス上にゾンビがあるのは心地良くないので、
> ゾンビを消す、もしくはゾンビとして認識されないように
> したいのですが、良い方法をご存知の方は
> ご教示頂けると幸いです。
>
> よろしくお願いいたします。
>
> 清水
>
>
>

コメントを投稿するにはログインまたはユーザー登録を行ってください

ダウンロード

最新バージョン : 2.0.1-RELESE

統計

Webサイト統計
ユーザ数:2209
プロジェクト統計
RTコンポーネント307
RTミドルウエア35
ツール22
文書・仕様書2

Choreonoid

モーションエディタ/シミュレータ

OpenHRP3

動力学シミュレータ

OpenRTP

統合開発プラットフォーム

産総研RTC集

産総研が提供するRTC集

TORK

東京オープンソースロボティクス協会

DAQ-Middleware

ネットワーク分散環境でデータ収集用ソフトウェアを容易に構築するためのソフトウェア・フレームワーク