Sponsored Content
Full Discussion: zombie process
Operating Systems Linux zombie process Post 302179221 by era on Thursday 27th of March 2008 08:48:05 AM
Old 03-27-2008
The use of grep to post-process awk output is kind-of aberrant; just use awk to figure out which lines have a Z.

Code:
ps aux | awk '$8=="Z" { print $2 }'

ps output is somewhat platform-dependent (this seems to work on Linux at least, but might need tweaks for other architectures), and obtaining this information from the kernel on the C level doubly so. On Linux, the proc pseudo-filesystem provides this information. See the proc(5) manual page.
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Zombie process

How do i kill a zombie process. Is it that only root can kill a zombie process. (8 Replies)
Discussion started by: orca
8 Replies

2. UNIX for Advanced & Expert Users

Zombie process

I would like to create a zombie process so that I can test monitoring software functionality. Any techniques? (2 Replies)
Discussion started by: swhitney
2 Replies

3. Programming

how to handle a zombie process

hi! i am writing a c program which has the following structure: main() { child1 child1.1 child2 child2.1 } the child1.1 and 2.1 are becoming zombies... how can i handle this... thanx (1 Reply)
Discussion started by: mridula
1 Replies

4. Linux

How to kill zombie process

I have RHES4 machine with VRTSralus - Backup Exec agent installed there and running as a service. The agent hiccups sometimes and turns into defunct state. The problem is that I cannot kill it anyway., it stays there forever until the machine is rebooted. I wonder if anyone had such an experience... (1 Reply)
Discussion started by: will_mike
1 Replies

5. Shell Programming and Scripting

Zombie process

Hi I need help because I don't know if it is possible to add a find inside a cat. like I have a file with the pid of the process that use to became zombie. And I have the same pid stored in the var (pid1) now, I have no clue how to check if the the find finds the pid or even if it's... (2 Replies)
Discussion started by: ruben.rodrigues
2 Replies

6. Solaris

zombie process

dear friends, in an interview they asked me what is zombie process. how we can identifying these process.if can you kill all zombie process. (8 Replies)
Discussion started by: sijocg
8 Replies

7. AIX

zombie process

Is there an equivilant to the preap command in AIX that would allow me to get rid of a zombie process. I am new to AIX, moving over from Solaris and in the past I have been able to preap the pid on the defunct process to clean them up. I have looked around and the best I can see is that it may... (3 Replies)
Discussion started by: sboots
3 Replies

8. Solaris

How to Kill Zombie Process

Dear Bos, I have one server,everday if I check with command TOP always present zombie,like below: last pid: 4578; load averages: 0.15, 0.11, 0.13 07:56:15 298 processes: 295 sleeping, 1... (10 Replies)
Discussion started by: fredginting
10 Replies

9. UNIX for Dummies Questions & Answers

Zombie process question

Hey guys, So i did some research on the site but previous posts answered most of my questions about zombie processes but I have one question that didnt seem to get addressed "how do you find the parent or parent ID of a zombie process so you can kill it?" I know p -kill doesnt always just... (6 Replies)
Discussion started by: kingpin007
6 Replies

10. UNIX for Advanced & Expert Users

Zombie process

What is the overhead associated with zombie process?Is it running out of process-ID?:confused: Since some information is stored in process table.. Thanks in Advance (4 Replies)
Discussion started by: jois
4 Replies
sg_get_process_stats(3) 				     Library Functions Manual					   sg_get_process_stats(3)

NAME
sg_get_process_stats, sg_get_process_count, sg_process_compare_name, sg_process_compare_pid, sg_process_compare_uid, sg_process_com- pare_gid, sg_process_compare_size, sg_process_compare_res, sg_process_compare_cpu, sg_process_compare_time - get process statistics SYNOPSIS
#include <statgrab.h> sg_process_stats *sg_get_process_stats(int *entries); sg_process_count *sg_get_process_count(void); int sg_process_compare_name(const void *va, const void *vb); int sg_process_compare_pid(const void *va, const void *vb); int sg_process_compare_uid(const void *va, const void *vb); int sg_process_compare_gid(const void *va, const void *vb); int sg_process_compare_size(const void *va, const void *vb); int sg_process_compare_res(const void *va, const void *vb); int sg_process_compare_cpu(const void *va, const void *vb); int sg_process_compare_time(const void *va, const void *vb); DESCRIPTION
The sg_get_process_stats takes a pointer to an int, entries, which is filled with the number of processes the snapshot contains. The return value is a pointer to the first member of an array of sg_process_stats structures; the number of entries in the array is returned in entries. sg_get_process_count returns a pointer to a static buffer of type sg_process_count. These two functions provide information on the process running on the system. In the first case lots of detail is provided, and in the sec- ond case a summary of the states of the current processes. sg_process_compare_name sg_process_compare_pid sg_process_compare_uid sg_process_compare_gid sg_process_compare_size sg_process_compare_res sg_process_compare_cpu sg_process_compare_time These functions compare two sg_process_stats entries, and return an int to represent which one is greater. The main use of these functions is to be passed to qsort to sort the sg_process_stats by the given type. For example: qsort(sg_process_stats ps, int ps_size, sizeof *ps, sg_process_compare_pid); RETURN VALUES
The structure returned by sg_get_process_stats is of type sg_process_stats. typedef struct { char *process_name; char *proctitle; pid_t pid; pid_t parent; /* Parent pid */ pid_t pgid; /* process id of process group leader */ uid_t uid; uid_t euid; gid_t gid; gid_t egid; unsigned long long proc_size; /* in bytes */ unsigned long long proc_resident; /* in bytes */ time_t time_spent; /* time running in seconds */ double cpu_percent; int nice; sg_process_state state; } sg_process_stats; typedef enum { SG_PROCESS_STATE_RUNNING, SG_PROCESS_STATE_SLEEPING, SG_PROCESS_STATE_STOPPED, SG_PROCESS_STATE_ZOMBIE, SG_PROCESS_STATE_UNKNOWN } sg_process_state; process_name The name of the command that was run. proctitle The command line (the "title") of the process. Take note - this can be modified by the process, so isn't guaranteed to be the origi- nal command line. pid The process ID. parent The parent process ID. pgid The process ID of the process group leader. uid The UID the process is running as. euid The effective UID the process is running as. gid The GID the process is running as. egid The effective GID the process is running as. proc_size The size of the process in bytes. proc_resident The size of the process that's resident in memory. time_spent The number of seconds the process has been running. cpu_percent The current percentage of CPU the process is using. nice The nice value of the process. state The current state of the process. See sg_process_state for permitted values. The structure returned by sg_get_process_count is of type sg_process_count. typedef struct{ int total; int running; int sleeping; int stopped; int zombie; }sg_process_count; total The total number of processes. running The number of running processes. sleeping The number of sleeping processes. stopped The number of stopped processes. zombie The number of zombie processes. SEE ALSO
statgrab(3) WEBSITE
http://www.i-scream.org/libstatgrab/ i-scream $Date: 2005/04/25 11:25:45 $ sg_get_process_stats(3)
All times are GMT -4. The time now is 06:29 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy