07-13-2008
Process management
I think you're seeing two due to your invocation method. One method that would be more "tight" would be to have your process write it's PID to a PID file, or have the script write it if necessary. Then check to see if the PID is running, rather than guessing by checking for the existence of a file. ABEND-ing programs rarely clean up after themselves. PID's are either in use or not. The only possible hole in this logic is that PID's are reused periodically as the PID integer is incremented through it's max. The likelihood of that error is quite very very low.
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
I need to write a script to monitor user processes that revert to parent process id = 1
I can do this with a grep " 1 " or awk and evaluation.
but
Is there a switch on the ps command or another command to specify parent id on proccesses?
I tried ps with the -p ppid=nnnnn but it... (6 Replies)
Discussion started by: MizzGail
6 Replies
2. Shell Programming and Scripting
how to find the chid process id from given parent process id.... (the chid process doesnot have sub processes inturn) (3 Replies)
Discussion started by: guhas
3 Replies
3. UNIX for Dummies Questions & Answers
Suppose we have the following process tree:
init-> ProcessA->processB->processC
then I kill processB
Who is the parent of the processC?
init or the processA (6 Replies)
Discussion started by: Puntino
6 Replies
4. UNIX for Dummies Questions & Answers
hello
i am not a unix programmer but i need to solve a particular problem using unix.
suppose i have a user XYZ logged on to a system called ABC. i want to get the parent process id for the user and kill it
i am using
ps -ef | grep XYZ | grep ABC
it returns me all the processes for... (2 Replies)
Discussion started by: ajit.yadav83
2 Replies
5. UNIX for Dummies Questions & Answers
I need to kill all the processes of user "release" on system "PROterm" or the parent process for the user
I did this
ps -ef | grep PROterm | grep release
i got
release 2900014 2961494 0 12:19:44 pts/3 0:00 PROterm
release 3264694 2900014 0 12:19:44 - 0:00 PROterm
if i... (7 Replies)
Discussion started by: ajit.yadav83
7 Replies
6. Shell Programming and Scripting
Hi All,
I have two ksh script. 1st script calls the 2nd script and the second script calls an 'C' program.
I want 1st script to wait until the 'C' program completes.
I cant able to get the process id for the 'C' program (child process) to make the 1st script to wait for the second... (7 Replies)
Discussion started by: sennidurai
7 Replies
7. Shell Programming and Scripting
Hey all, I need to launch a script from within 2 other scripts that can run independently of the two parent scripts... Im having a hard time doing this, if anyone knows how please let me know.
More detail.
ScriptA (bash), ScriptB (ksh), ScriptC (bash)
ScriptA, launches ScriptB
ScirptB,... (7 Replies)
Discussion started by: trey85stang
7 Replies
8. Emergency UNIX and Linux Support
Hello, everyone.
Here's a program:
pid_t pid = fork();
if (0 == pid) // child process
{
execvp ...;
}
I send a signal (such as SIGINT) to the parent process, the child process receive the signal as well as the parent process.
However I don't want to child process to receive the... (7 Replies)
Discussion started by: jackliang
7 Replies
9. Shell Programming and Scripting
Hi everyone
i am very new to linux , working on bash shell.
I am trying to solve the given problem
1. Create a process and then create children using fork
2. Check the Status of the application for successful running.
3. Kill all the process(threads) except parent and first child... (2 Replies)
Discussion started by: vizz_k
2 Replies
10. Programming
Hi:
I have a program written in FORTRAN running on AIX platform.
It is because missing of documentation and without root password, therefore we want to modify the program so that we can find out which script/program that call this FORTRAN program.
I have google for few days, all of them are... (3 Replies)
Discussion started by: cstsang
3 Replies
LEARN ABOUT DEBIAN
dpid.h
dpid.h(3) libdaemon dpid.h(3)
NAME
dpid.h -
Contains an API for manipulating PID files.
SYNOPSIS
#include <sys/types.h>
Defines
#define DAEMON_PID_FILE_KILL_WAIT_AVAILABLE 1
This variable is defined to 1 iff daemon_pid_file_kill_wait() is supported.
Typedefs
typedef const char *(* daemon_pid_file_proc_t )(void)
Prototype of a function for generating the name of a PID file.
Functions
const char * daemon_pid_file_proc_default (void)
A function for creating a pid file name from daemon_pid_file_ident.
int daemon_pid_file_create (void)
Creates PID pid file for the current process.
int daemon_pid_file_remove (void)
Removes the PID file of the current process.
pid_t daemon_pid_file_is_running (void)
Returns the PID file of a running daemon, if available.
int daemon_pid_file_kill (int s)
Kills a running daemon, if available.
int daemon_pid_file_kill_wait (int s, int m)
Similar to daemon_pid_file_kill() but waits until the process died.
Variables
const char * daemon_pid_file_ident
Identification string for the PID file name, only used when daemon_pid_file_proc is set to daemon_pid_file_proc_default().
daemon_pid_file_proc_t daemon_pid_file_proc
A function pointer which is used to generate the name of the PID file to manipulate.
Detailed Description
Contains an API for manipulating PID files.
Definition in file dpid.h.
Define Documentation
#define DAEMON_PID_FILE_KILL_WAIT_AVAILABLE 1
This variable is defined to 1 iff daemon_pid_file_kill_wait() is supported. Since:
0.3
See also:
daemon_pid_file_kill_wait()
Definition at line 82 of file dpid.h.
Typedef Documentation
typedef const char*(* daemon_pid_file_proc_t)(void)
Prototype of a function for generating the name of a PID file.
Definition at line 37 of file dpid.h.
Function Documentation
int daemon_pid_file_create (void)
Creates PID pid file for the current process. Returns:
zero on success, nonzero on failure
Examples:
testd.c.
pid_t daemon_pid_file_is_running (void)
Returns the PID file of a running daemon, if available. Returns:
The PID or negative on failure
Examples:
testd.c.
int daemon_pid_file_kill (int s)
Kills a running daemon, if available. Parameters:
s The signal to send
Returns:
zero on success, nonzero on failure
int daemon_pid_file_kill_wait (int s, int m)
Similar to daemon_pid_file_kill() but waits until the process died. This functions is new in libdaemon 0.3. The macro
DAEMON_PID_FILE_KILL_WAIT_AVAILABLE is defined iff libdaemon supports this function.
Parameters:
s The signal to send
m Seconds to wait at maximum
Returns:
zero on success, nonzero on failure (timeout condition is considered a failure)
Since:
0.3
See also:
DAEMON_PID_FILE_KILL_WAIT_AVAILABLE
Examples:
testd.c.
const char* daemon_pid_file_proc_default (void)
A function for creating a pid file name from daemon_pid_file_ident. Returns:
The PID file path
int daemon_pid_file_remove (void)
Removes the PID file of the current process. Returns:
zero on success, nonzero on failure
Examples:
testd.c.
Variable Documentation
const char* daemon_pid_file_ident
Identification string for the PID file name, only used when daemon_pid_file_proc is set to daemon_pid_file_proc_default(). Use
daemon_ident_from_argv0() to generate an identification string from argv[0]
Examples:
testd.c.
daemon_pid_file_proc_t daemon_pid_file_proc
A function pointer which is used to generate the name of the PID file to manipulate. Points to daemon_pid_file_proc_default() by default.
Author
Generated automatically by Doxygen for libdaemon from the source code.
Version 0.14 17 Jan 2010 dpid.h(3)