nice(2) - wariua/manpages-ko GitHub Wiki
nice - ํ๋ก์ธ์ค ์ฐ์ ์์ ๋ฐ๊พธ๊ธฐ
#include <unistd.h>
int nice(int inc);
glibc ๊ธฐ๋ฅ ํ์ธ ๋งคํฌ๋ก ์๊ฑด (feature_test_macros(7) ์ฐธ๊ณ ):
-
nice()
: -
_XOPEN_SOURCE
|| /* glibc 2.19๋ถํฐ: */ _DEFAULT_SOURCE
|| /* glibc ๋ฒ์ <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
nice()
๋ ํธ์ถ ์ค๋ ๋์ ๋์ด์ค ๊ฐ์ inc
๋ฅผ ๋ํ๋ค. (๋์ ๋์ด์ค ๊ฐ์ด ๋ฎ์ ์ฐ์ ์์๋ฅผ ๋ปํ๋ค.)
๋์ด์ค ๊ฐ์ ๋ฒ์๋ +19(๋ฎ์ ์ฐ์ ์์)์์ -20(๋์ ์ฐ์ ์์)๊น์ง์ด๋ค. ๊ทธ ๋ฒ์ ๋ฐ์ผ๋ก ๋์ด์ค ๊ฐ์ ์ค์ ํ๋ ค๊ณ ํ๋ฉด ๋ฒ์์ ๋ง๊ฒ ์๋ฆฐ๋ค.
์ ํต์ ์ผ๋ก๋ ํน๊ถ ํ๋ก์ธ์ค๋ง ๋์ด์ค ๊ฐ์ ๋ฎ์ถ ์ (์ฆ ์ฐ์ ์์๋ฅผ ๋๊ฒ ์ค์ ํ ์) ์์๋ค. ํ์ง๋ง ๋ฆฌ๋
์ค 2.6.12๋ถํฐ๋ ๋นํน๊ถ ํ๋ก์ธ์ค๊ฐ ์ ์ ํ RLIMIT_NICE
์ฐ์ฑ ์ ํ์ ๊ฐ์ง ๋์ ํ๋ก์ธ์ค์ ๋์ด์ค ๊ฐ์ ๋ฎ์ถ ์ ์๋ค. ์์ธํ ๋ด์ฉ์ getrlimit(2)์ ๋ณด๋ผ.
์ฑ๊ณต ์ ์ ๋์ด์ค ๊ฐ์ ๋ฐํํ๋ค. (ํ์ง๋ง ์๋ NOTES๋ฅผ ๋ณด๋ผ.) ์ค๋ฅ ์ -1์ ๋ฐํํ๋ฉฐ errno
๋ฅผ ์ ์ ํ ์ค์ ํ๋ค.
์ฑ๊ณตํ ํธ์ถ์ด ์ ๋ฒํ๊ฒ -1์ ๋ฐํํ ์ ์๋ค. ์ค๋ฅ๋ฅผ ํ์งํ๋ ค๋ฉด ํธ์ถ ์ ์ errno
๋ฅผ 0์ผ๋ก ์ค์ ํ๋ค๊ฐ nice()
๊ฐ -1์ ๋ฐํํ ํ์ 0์ด ์๋์ง ํ์ธํ๋ฉด ๋๋ค.
EPERM
- ํธ์ถ ํ๋ก์ธ์ค๊ฐ ์์
inc
๋ฅผ ์ ๊ณตํ์ฌ ์๊ธฐ ์ฐ์ ์์๋ฅผ ๋์ด๋ ค๊ณ ์๋ํ์ง๋ง ์ถฉ๋ถํ ํน๊ถ์ ๊ฐ์ง๊ณ ์์ง ์๋ค. ๋ฆฌ๋ ์ค์์๋CAP_SYS_NICE
์ญ๋ฅ์ด ํ์ํ๋ค. (ํ์ง๋ง setrlimit(2)์ ์๋RLIMIT_NICE
์์ ์ ํ์ ๋ํ ๋ ผ์๋ฅผ ๋ณด๋ผ.)
POSIX.1-2001, POSIX.1-2008, SVr4, 4.3BSD. ํ์ง๋ง ์์คํ ํธ์ถ๊ณผ (glibc 2.2.4 ์ ์) (g)libc์ ๋ฐํ ๊ฐ์ด ๋นํ์ค์ด๋ค. ์๋ ์ฐธ๊ณ .
๋์ด์ค ๊ฐ์ ๋ํ ๋ ์์ธํ ๋ด์ฉ์ sched(7)๋ฅผ ๋ณด๋ผ.
์ฃผ์: ๋ฆฌ๋ ์ค 2.6.38์ "autogroup" ๊ธฐ๋ฅ์ด ์ถ๊ฐ๋๋ฉด์ ๋ง์ ๊ฒฝ์ฐ์์ ๋์ด์ค ๊ฐ์ด ๋ ์ด์ ์ ํต์ ํจ๊ณผ๋ฅผ ์ฃผ์ง ์๊ฒ ๋์๋ค. ์์ธํ ๋ด์ฉ์ sched(7)๋ฅผ ๋ณด๋ผ.
POSIX.1์์๋ nice()
๊ฐ ์ ๋์ด์ค ๊ฐ์ ๋ฐํํด์ผ ํ๋ค๊ณ ๋ช
์ธํ๋ค. ํ์ง๋ง ๋ฆฌ๋
์ค ์์คํ
ํธ์ถ์ ์ฑ๊ณต ์ 0์ ๋ฐํํ๋ค. ๋ง์ฐฌ๊ฐ์ง๋ก glibc 2.2.3 ์ด์ ์์ ์ ๊ณตํ๋ nice()
๋ํผ ํจ์๋ ์ฑ๊ณต ์ 0์ ๋ฐํํ๋ค.
glibc 2.2.4๋ถํฐ๋ glibc ์ ๊ณต ๋ํผ ํจ์์์ getpriority(2) ํธ์ถ๋ก ์ ๋์ด์ค ๊ฐ์ ์ป์ด์ ํธ์ถ์์๊ฒ ๋ฐํํจ์ผ๋ก์จ POSIX.1์ ์ค์ํ๋ค.
nice(1)
, renice(1)
, fork(2), getpriority(2), getrlimit(2), setpriority(2), capabilities(7), sched(7)
2017-09-15