Kernel decides how much processor time is required for a process based on the nice value. Possible nice value range is: -20 to 20. A process that has a nice value of -20 is very high priority. The process that has a nice value of 20 is very low priority.
Use ps axl to display the nice value of all running process as shown below.
# ps axl F UID PID PPID PRI NI VSZ RSS WCHAN STAT TTY TIME COMMAND 4 0 1 0 16 0 2172 552 - S ? 0:17 init [5] 1 0 3 1 34 19 0 0 ksofti SN ? 3:18 [ksoftirqd/0] 1 0 10 1 5 -10 0 0 worker S< ? 0:01 [events/0] 4 0 5145 1 25 10 32124 18592 - SNs ? 0:08 /usr/bin/python /usr/bin/rhn-applet-gui --sm-client-id default4 4 0 5147 5142 16 0 3528 604 - S ? 0:00 /sbin/pam_timestamp_check -d root 1 503 17552 4180 16 0 14208 3920 - S ? 0:01 /home/www/apache2/bin/httpd -f /home/www/apache2/conf/httpd.conf -k start
How to assign a low priority to a shell-script? (higher nice value)
In the example below, when I started the nice-test.sh script in the background, it took the nice value of 0.
$ ./nice-test.sh & [3] 13009 $ ps axl | grep nice-test 0 509 13009 12863 17 0 4652 972 wait S pts/1 0:00 /bin/bash ./nice-test.sh
[Note: 6th column with value 0 is the nice.]
Now, let us execute the same shell script with a different nice value as shown below.
$ nice -10 ./nice-test.sh & [1] 13016 $ ps axl | grep nice-test 0 509 13016 12863 30 10 4236 968 wait SN pts/1 0:00 /bin/bash ./nice-test.sh
[Note: 6th column with value 10 is the nice value for the shell-script.]
How to assign a high priority to a shell-script? (Lower nice value)
In the following example, let us assign a nice value of -10 (minus 10) to the nice-test.sh shellscript.
$ nice --10 ./nice-test.sh & [1] 13021 $ nice: cannot set priority: Permission denied
Note: Only root user can set a negative nice value. Login as root and try the same. Please note that there is a double dash before the 10 in the nice command below.
# nice --10 ./nice-test.sh & [1] 13060 # ps axl | grep nice-test 4 0 13060 13024 10 -10 5388 964 wait S< pts/1 0:00 /bin/bash ./nice-test.sh
[Note: 6th column with value -10 is the nice value of the shell-script.]
Comments on this entry are closed.
In redhat linux RHEL4 etc.
renice 5 -p
This is the command, where 5 is the nice value. The -n is omitted. The right man page is man 8 renice
@Arun renice is another command, and to do something else than what Ramesh explain ! So of course, different commands can have different syntaxes … And not only on RHEL? releases.
nice –> To start a process with a different priority than the default one
renice –> To change the prority of a already running process
Hi
When i used this command on 2.6.18 kernel ,its not changing the nice value of my script program.
Regards,
sudhakar
Awesome, Great info.
Thanks
It could be a typo error, Possible nice value range is: -20 to 19, not -20 to 20.
Please update.
What if nice value is >20 .. say like 30
Thanks a lot.