11-12-2006
nice command and nice() system call
Hi I want to implement the nice command in the shell that I am building. I came to know that there is a corresponding nice() system call for the same. But since I will be forking different processes to run different commands typed on the command prompt, is there any way I can make a command execution call nice() first to adjust its priority?
eg nice 5 cp x y
makes cp increment its priority by 5
how can I make the execution of cp call nice() ?
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
Can someone tell me .. how to find a user & process who has executed nice (scheduled priority) to one of his process. .Tks.. (5 Replies)
Discussion started by: sivan
5 Replies
2. UNIX for Advanced & Expert Users
Under, Solaris 10 I have the following problem:
A script executed at command line runs with nice level 0, as expected.
Same script started under (user) crontab runs with nice level 2.
I would prefer it run at 0. Is this possible? If so, how?
Thanks. (0 Replies)
Discussion started by: henrydark
0 Replies
3. UNIX for Dummies Questions & Answers
Can someone tell me this. thanks (1 Reply)
Discussion started by: xoxouu
1 Replies
4. UNIX for Dummies Questions & Answers
hello everybody:
I have some job running on tru64 system and Im the root, due to limited resources I end up with my job ( vdump) for example taking the lowest share, I researched the nice command on the net, but couldnt get enough info, can I use it to already running process or I only use it... (1 Reply)
Discussion started by: aladdin
1 Replies
5. UNIX for Dummies Questions & Answers
Hi there, i'm trying to find the implementation code for the system call nice().
Since it's a system call i'm having problems finding where it would be? is it in the linux kernel directory somewhere?
I would assume it would be a file called nice.c or something like this.
Thanks in advance! (2 Replies)
Discussion started by: sport23
2 Replies
6. UNIX for Advanced & Expert Users
Hello,
Some guy said to me that using the nice command to decrease the priority of a process is a myth, that the operating system corrects the priorities as the processes need cpu. Is this true? (4 Replies)
Discussion started by: psimoes79
4 Replies
7. Shell Programming and Scripting
Hello,
I am just starting with shell scripting, as everyone will soon see from my question. What I'm trying to do is call the Nice command to set the script process priority from /bin/ksh. The difference is I'm running it not directly through the shell, but through Bigfix (very similar to... (3 Replies)
Discussion started by: solly119
3 Replies
8. Shell Programming and Scripting
Dear Friends,
I have a directory when i take du of that directory it takes alot of memory and cpu and I/O, i want to use nice to run my script that have du command slowly so it won't take I/O and cpu, please suggest. (6 Replies)
Discussion started by: learnbash
6 Replies
9. BSD
Hello Folks,
Recently our FreeBSD 7.1 i386 system became very sluggish.
Nothing much is happening over there & whatever is running takes eternity to complete.
All the troubleshooting hinted towards a very high nice percentage.
Can that be the culprit?
Pasting snippets of top command,... (7 Replies)
Discussion started by: vibhor_agarwali
7 Replies
10. Shell Programming and Scripting
with using wall command, how can i have a carriage return in my broadcast message. i try to broadcast from a file, i were to use "cat myfile | wall" for broadcasting. but when the message broadcast somehow the format run away.
this the text in my file:
line 1
line 2
line 3
when broadcast
... (3 Replies)
Discussion started by: lsy
3 Replies
LEARN ABOUT OPENSOLARIS
nice
nice(2) System Calls nice(2)
NAME
nice - change priority of a process
SYNOPSIS
#include <unistd.h>
int nice(int incr);
DESCRIPTION
The nice() function allows a process to change its priority. The invoking process must be in a scheduling class that supports the nice().
The nice() function adds the value of incr to the nice value of the calling process. A process's nice value is a non-negative number for
which a greater positive value results in lower CPU priority.
A maximum nice value of (2 * NZERO) -1 and a minimum nice value of 0 are imposed by the system. NZERO is defined in <limits.h> with a
default value of 20. Requests for values above or below these limits result in the nice value being set to the corresponding limit. A nice
value of 40 is treated as 39.
Calling the nice() function has no effect on the priority of processes or threads with policy SCHED_FIFO or SCHED_RR.
Only a process with the {PRIV_PROC_PRIOCNTL} privilege can lower the nice value.
RETURN VALUES
Upon successful completion, nice() returns the new nice value minus NZERO. Otherwise, -1 is returned, the process's nice value is not
changed, and errno is set to indicate the error.
ERRORS
The nice() function will fail if:
EINVAL The nice() function is called by a process in a scheduling class other than time-sharing or fixed-priority.
EPERM The incr argument is negative or greater than 40 and the {PRIV_PROC_PRIOCNTL} privilege is not asserted in the effective set of
the calling process.
USAGE
The priocntl(2) function is a more general interface to scheduler functions.
Since -1 is a permissible return value in a successful situation, an application wishing to check for error situations should set errno to
0, then call nice(), and if it returns -1, check to see if errno is non-zero.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Interface Stability |Standard |
+-----------------------------+-----------------------------+
|MT-Level |Async-Signal-Safe |
+-----------------------------+-----------------------------+
SEE ALSO
nice(1), exec(2), priocntl(2), getpriority(3C), attributes(5), privileges(5), standards(5)
SunOS 5.11 1 Apr 2004 nice(2)