Sponsored Content
Top Forums UNIX for Dummies Questions & Answers GNU Linux sleeping processes in top command Post 302900093 by bakunin on Sunday 4th of May 2014 05:19:07 AM
Old 05-04-2014
Quote:
Originally Posted by sidharthmellam
my concern is , why the sleeping process is consuming resources ,
It might help to understand what a "sleeping" process is, so here it goes:

Suppose a process starts: it gets loaded into memory, so some memory has to be allocated to it. It also gets some processor time, otherwise it would lurk just there, unable to run. Now it starts and probably it will need some additional memory to hold runtime data, it might need other OS resources, like files to be opened, network connections to be established, etc., etc..

All these requests involve the OS, which may or may not be able to fulfill these immediately. If it is, the process gets what it requests, but if not it will be put to sleep until the OS can provide. That it is put to sleep does not mean it has nothing to do or that it could be stopped. This is just a way for the OS to do something else until it can provide everything necessary to run the process.

Another possiblity is that the process waits for a certain event: suppose the process services a certain network event: it will listen to the network and until a certain signal comes it has nothing to do - therefore it is going to sleep. When the signal comes, it wakes up, does whatever it is supposed to do, then goes back to sleep again. If you stop the process because it sleeps it will not be able to wake up once the signal comes.

I hope this helps.

bakunin
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

How Can I Have Top Display The Top 20 Processes??

how can i do that in a script withough havin the script halt at the section where the top command is located. am writign a script that will send me the out put of unx commands if the load average of a machine goes beyond the recommended number. top -n 20 i want to save this output to a file... (1 Reply)
Discussion started by: TRUEST
1 Replies

2. Shell Programming and Scripting

perl: sleeping during a command

hello everyone, i am attempting to run the sleep function (i've also tried select) during the execution of a command to mimic a status. for example: # this is a terminal screen # here the process is executed # below this a status is displayed while the command executes like so:... (3 Replies)
Discussion started by: effigy
3 Replies

3. Shell Programming and Scripting

How to wakeup sleeping processes

Hi, Could someone please tell me how to wakeup sleeping processes? (i.e. change the process status from "S" to "R" when viewing in ps command). I ran a few programs in the background by "&" which went into "sleep" mode and I want them to run. Any help will be greatly appreciated. Steve (11 Replies)
Discussion started by: stevefox
11 Replies

4. AIX

Need a list of top 10 CPU using processes (also top 10 memory hogs, separately)

Okay, I am trying to come up with a multi-platform script to report top ten CPU and memory hog processes, which will be run by our enterprise monitoring application as an auto-action item when the CPU and Memory utilization gets reported as higher than a certain threshold I use top on other... (5 Replies)
Discussion started by: thenomad
5 Replies

5. UNIX for Dummies Questions & Answers

How To Scroll Processes In top?

I'm using top to view processes. But, I do not know how to scroll down the list to view what is not showed in the terminal window. Anyone know how to do this? (1 Reply)
Discussion started by: keenansnews
1 Replies

6. Shell Programming and Scripting

Print 10 most CPU-intensive processes (wo/ top)

ps -eo pid,comm,%cpu lists all processes (in increasing PID number). How to get only the top-10 most CPU intensive ones? I know about top: this is BASH exercise. I tried redirecting above code to cut ps -eo pid,comm,%cpu | cut -f2but ps' output isn't TAB delimited. How can I otherwise use... (5 Replies)
Discussion started by: courteous
5 Replies

7. Shell Programming and Scripting

Unix shell script to query linux top consuming processes

Hi All, O/S: Linux 86x64 Red Hat I have a sql script that queries top consuming processes of Linux using TOP commnd. Now I need to automate this task and pass the top processes i.e., PID to the sql script through unix shell script. Could anyone please let me know how to achieve this. ... (2 Replies)
Discussion started by: a1_win
2 Replies

8. UNIX for Dummies Questions & Answers

Sleep command not sleeping for specified time.

Hi, I have ascript with a recursive funtion below. I have mentioned to sleep for 60minutes but it doesnt doing so. Its keep on running until if /elif conditions satiesfies. Can you pls help what is wrong here. funcstatus () { if then echo "`date` - Current status... (2 Replies)
Discussion started by: gaddamja
2 Replies

9. UNIX for Advanced & Expert Users

Analyzing Linux's top command's result

RHEL 5.4 What are the first things you would look for when analyzing Linux's top command output? Below is a top output from one of our Linux machines; Do you see anything wrong? top - 15:56:01 up 133 days, 5:55, 5 users, load average: 2.94, 2.93, 6.58 Tasks: 178 total, 2 running,... (2 Replies)
Discussion started by: John K
2 Replies

10. Shell Programming and Scripting

Need a script to see top processes for every hour

Hi All, I am new to Scripting , please give me guidance to write the script to see top processes on the Linux operating system. I executed this script on my Virtual Server(Linux) DATE=`date +%Y%m%d%H%M%S` HOME=/home/xmp/testing/xmp_report RADIUS_PID=`xms -xmp sh pr | grep... (2 Replies)
Discussion started by: madala
2 Replies
sleep(9r)																 sleep(9r)

NAME
sleep - General: Puts a calling process to sleep SYNOPSIS
void sleep( caddr_t *channel, long pri ); ARGUMENTS
Specifies a unique address associated with the calling kernel thread to be put to sleep. Specifies whether the sleep request is interrupt- ible. Setting this argument to the PCATCH flag causes the process to sleep in an interruptible state (that is, the kernel thread can take asynchronous signals). Not setting the PCATCH flag causes the process to sleep in an uninterruptible state (that is, the kernel thread can- not take asynchronous signals). DESCRIPTION
The sleep routine puts a calling process to sleep on the address specified by the channel argument. Some common addresses are the lbolt argument, a buf structure, and a proc structure. This address should be unique to prevent unexpected wake/sleep cycles, which can occur if different processes are sleeping on the same address accidentally. If you set the PCATCH flag in the pri argument, the sleep routine puts signals on the queue and does not wake up the sleeping process. The sleep and wakeup routines block and then wake up a process. Generally, device drivers call these routines to wait for the transfer to complete an interrupt from the device. That is, the write routine of the device driver sleeps on the address of a known location, and the device's Interrupt Service Interface (ISI) wakes the process when the device interrupts. It is the responsibility of the wakened process to check if the condition for which it was sleeping has been removed. NOTES
The operating system provides two ways to put a process to sleep: interruptible and uninterruptible. The sleep routine performs an uninter- ruptible sleep operation if you do not set the PCATCH flag and an interruptible sleep operation if you set the PCATCH flag. This means that device drivers cannot call sleep at interrupt context because at interrupt context there is no calling process to be put to sleep. Thus, a device driver's Interrupt Service Interface (ISI) and those routines called from within the ISI must not call the sleep routine. On this operating system, you cannot use pri to set the scheduling priority of the calling process. RETURN VALUES
None FILES
SEE ALSO
Routines: wakeup(9r) sleep(9r)
All times are GMT -4. The time now is 07:17 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy