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

2 posts / 0 new
Last post
root
Offline
Last seen: 1 day 20 hours ago
Joined: 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を消費していないので、
特に実害はありません。

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

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

清水

Undefined
root
Offline
Last seen: 1 day 20 hours ago
Joined: 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を消費していないので、
> 特に実害はありません。
>
> ただ、プロセス上にゾンビがあるのは心地良くないので、
> ゾンビを消す、もしくはゾンビとして認識されないように
> したいのですが、良い方法をご存知の方は
> ご教示頂けると幸いです。
>
> よろしくお願いいたします。
>
> 清水
>
>
>

Log in or register to post comments

Download

latest Releases : 2.0.0-RELESE

2.0.0-RELESE Download page

Number of Projects

Choreonoid

Motion editor/Dynamics simulator

OpenHRP3

Dynamics simulator

OpenRTP

Integrated Development Platform

AIST RTC collection

RT-Components collection by AIST

TORK

Tokyo Opensource Robotics Association

DAQ-Middleware

Middleware for DAQ (Data Aquisition) by KEK