About wait


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers About wait
# 1  
Old 04-26-2008
About wait

Hi everyone

I'm novice at Unix programming and I hope to post this thread in the correct place.
I have the following doubts:
1 Suppose we have some processes which are B's children process and another process A which has no relation with B and its children.
Can A do wait () for a children of B even if A is not the parent in any way?
# 2  
Old 04-26-2008
wait() simply returns the status of one of the terminated children. You can't specify which child to wait() for. The kernel won't accidently return the status of a terminated process belonging to some other parent. There is a waitpid() but it is an error to specify a non-child pid or a pid that does not exist at all.
# 3  
Old 04-26-2008
So in a nutshell only the parent can wait for the children.
Is there a reason for this ?
Imagine you have a process which want to monitor the other process, the unique way is to be the parent of all them, just like init.
# 4  
Old 04-26-2008
waiting consumes the zombie. If some other process did that the parent could not learn the exit status of its own children. For security, one user's process cannot affect another user's process. But if you own the process or you are root, you can check it. Try to use the kill system call to send signal zero to the process in question. Signal zero has no effect on the process. But the process must exist or the kill() system call will fail.
# 5  
Old 04-26-2008
Sure. The reasoning of it is the entire design architecture
behind a session and process group. If you are not familiar with
these unix concepts programatically W.Richard Stevens
is an invaluable resource.
It sounds like you may be coming from a windows environment.

As Perderabo notes the ability for a process to wait
on another processes session or process group introduces
ineradicable security issues for unix and unix-alikes.
A threaded model is more easily adapted because of
shared address space.

My advice is to use threads if you are uncomfortable with the process paradigm.
# 6  
Old 04-27-2008
Thank you too, ramen_noodle.
I have to learn how to manage the processes too, not only threads.
Bye
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Script using Wait

Hi, written a script which uses wait as follows Main.sh #!/usr/bin/ksh nohup scrpit1 1 & pid_1=$! nohup scrpit1 2 & pid_2=$! wait $pid_1 wait $pid_2 nohup scrpit1 3 & pid_1=$! nohup scrpit1 4 & (1 Reply)
Discussion started by: krux_rap
1 Replies

2. Shell Programming and Scripting

calling a shell script in background and wait using "wait" in while loop

Hi, I am facing a strange issue, when i call a script from my while loop in background it doesnt go in background, despite the wait i put below the whil loop it goes forward even before the process put in background is completed. cat abc.txt | while read -u4 line do #if line contains #... (2 Replies)
Discussion started by: mihirvora16
2 Replies

3. Shell Programming and Scripting

wait example

Hi Gurus, Some questions regarding wait. I have tried searching in this forum for threads on wait but not completely got what I am looking for. Background: One script (.sh) that starts/calls a reference to an application's executable and submits a batch job to it. Objective is to wait... (2 Replies)
Discussion started by: rsheikh
2 Replies

4. Red Hat

WAIT

Can someone explain what is the status says WAIT on performance monitoring command.. (2 Replies)
Discussion started by: suresh_krish
2 Replies

5. UNIX for Advanced & Expert Users

wait process

can any one please give me clear idea of wait process in UNIX system. I am using AIX 5.3 and see loots of wait process. I have very basic concept of wait process. If CPU has nothing to do then a wait process is generated per CPU. But i want know the detail how is it forked. Is wait a jombe... (2 Replies)
Discussion started by: pchangba1
2 Replies

6. Shell Programming and Scripting

wait command - cat it wait for not-chile process?

Did not use 'wait' yet. How I understand by now the wait works only for child processes, started background. Is there any other way to watch completion of any, not related process (at least, a process, owned by the same user?) I need to start a background process, witch will be waiting... (2 Replies)
Discussion started by: alex_5161
2 Replies

7. Shell Programming and Scripting

wait ${!}

In one of the shell script (Where abinitio graph is called), the last line is wait ${!}. What does this wait ${!} mean ??? (2 Replies)
Discussion started by: risshanth
2 Replies

8. Shell Programming and Scripting

Need to execute 2 scripts, wait, execute 2 more wait, till end of file

:cool: I need to execute a shell script to do the following: cat a file run two back ground processes using the first two values from the file wait till those background processes finish run two more background processes using the next two values from the file wait till those background... (1 Reply)
Discussion started by: halo98
1 Replies

9. UNIX for Dummies Questions & Answers

I/O wait Problem

When running top, I notice a bit more I/O wait time than usual. Is there a tool or piece of software out there that can me help evaluate the performance of these operations on my machine? Thanks! (5 Replies)
Discussion started by: unavb
5 Replies

10. UNIX for Advanced & Expert Users

86% CPU for wait

Hi, is-it normal to have 86% of CPU for wait commande : ps aux| head -20 UTIL PID %CPU %MEM SZ RSS TTY STAT STIME TIME COMMAND root 516 86,6 0,0 12 12 - A 02 nov 2088:03 wait oralfa01 54422 4,6 1,0 68044 39868 - A 09:20:06 2:27 oracleALFA01 If... (3 Replies)
Discussion started by: big123456
3 Replies
Login or Register to Ask a Question