09-21-2009
There's a small logical error in your example: nice only advises the process scheduler, and a high niceness doesn't mean that the process will wait 'till nothing else is running. It just means that those processes with a lower niceness will run first, and after they're done or waiting it'll get CPU time just like the others.
Besides, the example you've given is probably more influenced by I/O waits of 2 (or more) processes accessing the HDD than the scheduler.
As for your problem, you could check the first or second field of /proc/loadavg (1 / 5 minute load average), and depending on that start your process. It can't, however, predict whether or not another, CPU intensive, process will start just 5 seconds after.
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
I am trying to run a script that I made when my computer is idle. How do I go about doing this.
Thanks :) (4 Replies)
Discussion started by: rehansaeed
4 Replies
2. Shell Programming and Scripting
Matez,
I have a list of process id's in a text file. I want to know how to find the idle time of a process which are more than 300secs and kill them accordingly.
Could you please help me to get these details. I want to write a shell script with this.
Thanks..Krish :) (36 Replies)
Discussion started by: Krrishv
36 Replies
3. UNIX for Dummies Questions & Answers
We are running AIX 5.3 and for ICICS Printing we have process called cicstermp runing whcih attaches the print to print queue
But is process is triggered when ever a print is to be given
Can we find the processes which are idle
I mean every time a print is given it creats a new cicstermp... (1 Reply)
Discussion started by: pbsrinivas
1 Replies
4. Shell Programming and Scripting
I need a script to kill those process id whose idle time is more than 30min
plz help me (3 Replies)
Discussion started by: salil2012
3 Replies
5. AIX
Dear Friends ,
I am using DB2 database in AIX 5.3 server . In my server some IDLE process are generated after several times which I need to kill it manually each and every time .
The process I query like following :
root@bagpuss $ ps auxw|sort -r +3|head -10
USER PID %CPU %MEM ... (3 Replies)
Discussion started by: shipon_97
3 Replies
6. Solaris
Hello
Solaris 8 when CPU idle 0 . why nohub process lose ?
Thank (1 Reply)
Discussion started by: ppmanja
1 Replies
7. UNIX for Advanced & Expert Users
Hi Everybody,
Can anybody explain how CPU idle% is about 50%, but runq-sz more than 1?
sar from Solaris 10:
00:00:05 %usr %sys %wio %idle
17:00:08 27 12 0 61
17:20:05 40 15 0 45
17:40:05 27 12 0 61
18:00:05 23... (2 Replies)
Discussion started by: sant
2 Replies
8. Shell Programming and Scripting
Hi,
I need a script that can automatically kill all processes named "webrepn" and "webrebw" if idle for more than 30 minutes.
Then I will have a Cron Job to run the script every night or 2-3 times a day depends on how this script helps.
Right now, I run "ps -ef | grep webrebn" and "kill -9... (7 Replies)
Discussion started by: MaggieL
7 Replies
9. UNIX for Dummies Questions & Answers
I noticed when having some trouble with code I was testing that the CPU was becoming exhausted and I would have to reboot. After rebooting a couple times I decided to check for other problems before trying my code again. That's when I noticed that the CPU with the idle process was through the roof:... (5 Replies)
Discussion started by: Azrael
5 Replies
10. Shell Programming and Scripting
I would like to run a command if my computer is idle.
I found this, but is not quite working.
#!/bin/sh
idletime=$(xprintidle)
threshold=300000 # 5 min = 5 * 60 * 1000 ms
if ; then
echo "idle for 5 minutes."
fi (4 Replies)
Discussion started by: drew77
4 Replies
LEARN ABOUT PHP
queuedefs
queuedefs(4) File Formats queuedefs(4)
NAME
queuedefs - queue description file for at, batch, and cron
SYNOPSIS
/etc/cron.d/queuedefs
DESCRIPTION
The queuedefs file describes the characteristics of the queues managed by cron(1M). Each non-comment line in this file describes one queue.
The format of the lines are as follows:
q.[njobj][nicen][nwaitw]
The fields in this line are:
q The name of the queue. a is the default queue for jobs started by at(1); b is the default queue for jobs started by batch (see
at(1)); c is the default queue for jobs run from a crontab(1) file.
njob The maximum number of jobs that can be run simultaneously in that queue; if more than njob jobs are ready to run, only the first
njob jobs will be run, and the others will be run as jobs that are currently running terminate. The default value is 100.
nice The nice(1) value to give to all jobs in that queue that are not run with a user ID of super-user. The default value is 2.
nwait The number of seconds to wait before rescheduling a job that was deferred because more than njob jobs were running in that job's
queue, or because the system-wide limit of jobs executing has been reached. The default value is 60.
Lines beginning with # are comments, and are ignored.
EXAMPLES
Example 1: A sample file.
#
#
a.4j1n
b.2j2n90w
This file specifies that the a queue, for at jobs, can have up to 4 jobs running simultaneously; those jobs will be run with a nice value
of 1. As no nwait value was given, if a job cannot be run because too many other jobs are running cron will wait 60 seconds before trying
again to run it.
The b queue, for batch(1) jobs, can have up to 2 jobs running simultaneously; those jobs will be run with a nice(1) value of 2. If a job
cannot be run because too many other jobs are running, cron(1M) will wait 90 seconds before trying again to run it. All other queues can
have up to 100 jobs running simultaneously; they will be run with a nice value of 2, and if a job cannot be run because too many other jobs
are running cron will wait 60 seconds before trying again to run it.
FILES
/etc/cron.d/queuedefs queue description file for at, batch, and cron.
SEE ALSO
at(1), crontab(1), nice(1), cron(1M)
SunOS 5.10 1 Mar 1994 queuedefs(4)