linux-c-programming.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: lucianolnx <lucianolnx@ig.com.br>
To: linux-c-programming@vger.kernel.org
Subject: ENC: Re: Check if a process exists? (EXTENDING THE QUESTION)
Date: Sat, 9 Apr 2005 10:54:40 -0300	[thread overview]
Message-ID: <20050409_135440_094266.lucianolnx@ig.com.br> (raw)

[-- Attachment #1: Mail message body --]
[-- Type: text/plain, Size: 2790 bytes --]

LEAVE ME TO REVIEW THE PROBLEM: 
1) How is the best and more OS resources indenpendent way to know the PID of 
a "friend" searched process ? 

2)How is the best way to check process identity, instead of only check your 
running state (kill -0) ? 

MY COMMENTS: 
I know that "/proc" is optional, because it I m asking for some ways to 
locate the PID when it isn't known, using non-optional OS resources. 

Shared memory or some kind of pipes, was a good way ? (the main problem is 
about persistent files that isn't the good way to store it, because the 
process can be killed without chance to remove its PID file, and then we can 
have a inconsistent PID file). 

Does parse "ps -e" command or using some API to simulate "ps" was a good way 
? 

AFTER KNOWING THE PID: 
Does someone kown a special way to know or authenticate the process (like a 
digital signature) instead only cheacking its running state by "kill -0". 

Luciano 


------------------------------------------------------------ 
De: "M.Baris Demiray" <baris@labristeknoloji.com> 
Para: lucianolnx<lucianolnx@ig.com.br> 
Data: Sat, 09 Apr 2005 10:24:55 +0300 
Assunto: ENC: Re: Check if a process exists? (EXTENDING THE QUESTION) 
Cc: linux-c-programming@vger.kernel.org 

lucianolnx wrote: 
> Today, what are the bests ways to know if a deamon is running without 
> knowing its PID ? 

I'm not sure whether this is `the best way' but you can parse some proc 
file system entry. Especially /proc/$pid/cmdline and /proc/$pid/status 
will be useful. And you will have to search all the /proc/$pid entries 
since you don't know the pid.. 

For example, they provide following information for clamd. 

[baris@rhinox]$ ps aux|grep clamd 
clamav     424  0.0  3.1  11520  7856 ?        Ss   01:35   0:03 
/usr/sbin/clamd 
clamav    1184  0.0  3.1  11520  7856 ?        S    09:38   0:00 
/usr/sbin/clamd 
baris     1238  0.0  0.2   1688   712 pts/2    S+   09:58   0:00 grep clamd 
[baris@rhinox]$ cat /proc/1184/cmdline 
/usr/sbin/clamd 
[baris@rhinox]$ cat /proc/1184/status 
Name:   clamd 
State:  S (sleeping) 
Tgid:   1184 
Pid:    1184 
PPid:   424 
.... 
.... 

I also should add that /proc filesystem is _optional_ in configuration. 
Highly likely it will exist on a target system but a little possibility 
of being it unselected still there. 

> My old technique (used until now), is based on recovering the PID saved by 
> the own process in a special and known location (like a file), almost all 
> times persisted (PERSISTENCE IS A PROBLEM). 
> 
> Luciano 

-- 
"You have to understand, most of these people are not ready to be 
unplugged. And many of them are no inert, so hopelessly dependent 
on the system, that they will fight to protect it." 
                                                         Morpheus 

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: Arquivo anexado pelo iGmail --]
[-- Type: text/x-vcalendar; name="baris.vcf", Size: 342 bytes --]

begin:vcard
fn:M.Baris Demiray
n:Demiray;M.Baris
org:Labris Teknoloji
adr:ODTU;;Teknokent Silikon Blok No:24;Ankara;;06531;Turkiye
email;internet:baris@labristeknoloji.com
title:Yazilim Gelistirme Uzmani
tel;work:+903122101490
tel;fax:+903122101492
x-mozilla-html:FALSE
url:http://www.labristeknoloji.com
version:2.1
end:vcard


                 reply	other threads:[~2005-04-09 13:54 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20050409_135440_094266.lucianolnx@ig.com.br \
    --to=lucianolnx@ig.com.br \
    --cc=linux-c-programming@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).