02-25-2005
Without using root privileges and keeping it simple:
1. you can call popen to execute a shell command like "ps" to find process "C"
if there is a clear way to tell from ps output that process "C" is out there.
or
2. create path/filename that all the programs agree upon, and use it as a lock file.
When "C" starts it writes something like "Process C is running" to the file and closes it.
When process "C" exits it removes the line from the file. All process "A" has to do is read the file to see if "C" is running. Or just have C create an empty file and delete the file when C exits. Then A just checks for the exsitence of the file.
10 More Discussions You Might Find Interesting
1. UNIX for Advanced & Expert Users
I ask this question since sometimes i run a time-consuming ftp in foreground and forget to use nohup ftp.sh & to put this work background and can still running after i log off.
Assume this ftp task have run 1 hour, and still 1 hour time to end,
i don't want to abort the ftp, first, i use ctrl+Z... (3 Replies)
Discussion started by: stevensxiao
3 Replies
2. Shell Programming and Scripting
hi
what is the shell programming code to know the number of processes currently running on the machine & information about those processes.
Another one is the configuration and usage of the UNIX file system?
requesting all for help.
thanks (1 Reply)
Discussion started by: moco
1 Replies
3. UNIX for Dummies Questions & Answers
Hi all,
When I issued command ps -ef|grep Vinay in a UNIX machine,
I got the following
Vinay 22491 1 255 Jun 18 ? 294248:53 -sh
Vinay 26628 1 255 Jun 18 ? 294237:33 -sh
Could you tell me what all process is running ? Please explain each of the fields.
Thanks... (4 Replies)
Discussion started by: coolbhai
4 Replies
4. UNIX for Dummies Questions & Answers
OS: Unix or Linux
I (only) know the pid of the process which was running earlier (say 5 hrs back) but it is not running now.
Is there a way I could find the details of that process? (atleast the name of the process). Please let me know. (2 Replies)
Discussion started by: vijay.d
2 Replies
5. UNIX for Dummies Questions & Answers
I have been having some trouble trying to get some code working, so I was wondering...what system calls are required to execute a different program from an already running process? (1 Reply)
Discussion started by: Midwest Product
1 Replies
6. Shell Programming and Scripting
Hi All, I have been a guest visitor from a long time and this forum is wonderful. I finally am a member of this forum too, so i am here stuck with a shell script that i was trying to write
My requirement is that i should be able to create a shell script which will check if a process is running on... (3 Replies)
Discussion started by: Rex0226
3 Replies
7. Shell Programming and Scripting
I'm trying to create a ksh script to do the following:
1) Ask the user what process they want to search for.
2) Have the script read the input as a variable and use it to search for the process.
3) Display the current time & date, the working directory of the process, and finally display the... (6 Replies)
Discussion started by: seekryts15
6 Replies
8. Shell Programming and Scripting
All,
1.What is the unix comand used for all current running process (Including All current running processes Parent ->child->subchild process)
2.If child and subchild processes are running then what is the unix command to kill parent and its all child subchild processes in UNIX.
Kindly... (7 Replies)
Discussion started by: skp
7 Replies
9. Shell Programming and Scripting
Hi,
i need to list the processes running only under current logged in user.
EX:
$ whoami
oraaqw
$ ps -ef | grep tnslsnr
oraaqw 11403300 19267592 0 09:14:47 pts/3 0:00 grep tnslsnr
oraaqw 15794208 1 0 Jan 14 - 11:59... (6 Replies)
Discussion started by: aravindadla
6 Replies
10. Shell Programming and Scripting
Hi all,
As i am new to shell script.Please help me to write a Shell script to find out process name that are running for last 10 days.
Thank's in advance. (8 Replies)
Discussion started by: manas_1988
8 Replies
fork(2) System Calls Manual fork(2)
Name
fork - create a new process
Syntax
#include <sys/types.h>
#include <unistd.h>
pid = fork()
pid_t pid;
Description
The system call causes creation of a new process. The new process (child process) is an exact copy of the calling process except for the
following:
o The child process has a unique process ID.
o The child process has a different parent process ID (that is, the process ID of the parent process).
o The child process has its own copy of the parent's descriptors. These descriptors reference the same underlying objects, so that, for
instance, file pointers in file objects are shared between the child and the parent, so that a on a descriptor in the child process
can affect a subsequent read or write by the parent. This descriptor copying is also used by the shell to establish standard input
and output for newly created processes as well as to set up pipes.
o The child processes resource utilizations are set to 0. For further information, see
Return Values
Upon successful completion, returns a value of 0 to the child process and returns the process ID of the child process to the parent
process. Otherwise, a value of -1 is returned to the parent process, no child process is created, and the global variable errno is set to
indicate the error.
Diagnostics
The system call fails and no child process are created under the following conditions:
[EAGAIN] The system-imposed limit {PROC_MAX} on the total number of processes under execution would be exceeded.
[EAGAIN] The system-imposed limit {CHILD_MAX} on the total number of processes under execution by a single user would be exceeded.
[ENOMEM] There is insufficient swap space for the new process.
See Also
execve(2), wait(2)
fork(2)