Re: Re: How to get the pid of all children, grand children..../... of a process

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, May 30, 2006 at 10:04:47PM -0700, Nish Aravamudan wrote:
> On 31 May 2006 04:54:23 -0000, rohit  hooda <rohit13hooda@xxxxxxxxxxxxxx> wrote:
> >
> > On Wed, 31 May 2006 Taha Hafeez Siddiqi wrote :
> >
> > >On Tue, 2006-05-30 at 17:20 +0530, Gopala Krishna wrote:
> > > >
> > > >
> > > >         Fortunately, here comes the proc filesystem !
> > > >         So, you have the pid of the father process : look at the file
> > > >         /proc/'ppid'/status there should be a fild ppid : you have the
> > > >         pid of
> > > >         your grand parent.
> > > >         You can do a recursive function to find all the ancestors of
> > > >         your
> > > >         process.
> > > >         This solution is quite annoying since you have to handle
> > > >         files, but it
> > > >         works.
> > > >
> > > >         If this solution is not acceptable for you, you can look at
> > > >         the pstree
> > > >         source code.
> > > >
> > > >         I don't know if you wanted to do that in your own programm or
> > > >         just
> > > >         wanted some soft to give you the entire tree (like pstree).
> > > >         Anyway... :
> > > >
> > > >
> > > > In My case, I knew only pid of the first process. I want the top down
> > > > approach rather than the bottom up (i.e if I know child, I know
> > > > parent. but, my requirement is to find out child and it's grand
> > > > children, If I know the parent pid). Currently I am going through
> > > > pstree code.
> > > >
> > > > Thanks and regards,
> > > > Gopal.
> > > >
> > > >
> > >
> > >Hi all,
> > >
> > >I think there is another way.*
> > >
> > >You can get hold of your current, use its list to get hold of the
> > >process structure and the up you go using the process->parent....
> > >
> > >It may not be the correct way, but I suppose surely it is one way of
> > >doing it*.
> >
> >
> > Well in kernel mode, if you have the PID of a process, from that you can have
> >its task_struct and then you can iterate down to get the lists of its children and
> >grand children and so on ... but over here we have to do things in user space n
> >not in kernel space
> 
> Then please take it off this list (KERNELnewbies).
> 
> Thanks,
> Nish
> 

Well Taha wants to implement it in user space. But in someway, the
process and procfs subsystems are close to the kernel. Don't say him to go away !:)

-- 
tyler
tyler@xxxxxxxx


	

	
		
___________________________________________________________________________ 
Yahoo! Mail réinvente le mail ! Découvrez le nouveau Yahoo! Mail et son interface révolutionnaire.
http://fr.mail.yahoo.com


--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive:       http://mail.nl.linux.org/kernelnewbies/
FAQ:           http://kernelnewbies.org/faq/


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux