sched_rr_get_interval(2) - wariua/manpages-ko GitHub Wiki

NAME

sched_rr_get_interval - ์ง€์ •ํ•œ ํ”„๋กœ์„ธ์Šค์˜ SCHED_RR ์‹œ๊ฐ„ ์–ป๊ธฐ

SYNOPSIS

#include <sched.h>

int sched_rr_get_interval(pid_t pid, struct timespec *tp);

DESCRIPTION

sched_rr_get_interval()์€ tp๊ฐ€ ๊ฐ€๋ฆฌํ‚ค๋Š” timespec ๊ตฌ์กฐ์ฒด์— pid๊ฐ€ ๋‚˜ํƒ€๋‚ด๋Š” ํ”„๋กœ์„ธ์Šค์˜ ๋ผ์šด๋“œ ๋กœ๋นˆ ๋‹จ์œ„ ์‹œ๊ฐ„(quantum)์„ ์จ๋„ฃ๋Š”๋‹ค. ์ง€์ •ํ•œ ํ”„๋กœ์„ธ์Šค๊ฐ€ SCHED_RR ์Šค์ผ€์ค„๋ง ์ •์ฑ… ํ•˜์—์„œ ๋Œ๊ณ  ์žˆ์–ด์•ผ ํ•œ๋‹ค.

timespec ๊ตฌ์กฐ์ฒด๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํ˜•ํƒœ์ด๋‹ค.

struct timespec {
    time_t tv_sec;    /* ์ดˆ */
    long   tv_nsec;   /* ๋‚˜๋…ธ์ดˆ */
};

pid๊ฐ€ 0์ด๋ฉด ํ˜ธ์ถœ ํ”„๋กœ์„ธ์Šค์˜ ๋‹จ์œ„ ์‹œ๊ฐ„์„ *tp์— ์จ๋„ฃ๋Š”๋‹ค.

RETURN VALUE

์„ฑ๊ณต ์‹œ sched_rr_get_interval()์€ 0์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ์˜ค๋ฅ˜ ์‹œ -1์„ ๋ฐ˜ํ™˜ํ•˜๋ฉฐ errno๋ฅผ ์ ์ ˆํžˆ ์„ค์ •ํ•œ๋‹ค.

ERRORS

EFAULT
์‚ฌ์šฉ์ž ๊ณต๊ฐ„์œผ๋กœ ์ •๋ณด๋ฅผ ๋ณต์‚ฌํ•˜๋Š” ์ค‘์˜ ๋ฌธ์ œ.
EINVAL
์œ ํšจํ•˜์ง€ ์•Š์€ pid.
ENOSYS
์‹œ์Šคํ…œ ํ˜ธ์ถœ์ด ์•„์ง ๊ตฌํ˜„๋˜์–ด ์žˆ์ง€ ์•Š์Œ. (๊ฝค ์˜ค๋ž˜๋œ ์ปค๋„์—์„œ๋งŒ)
ESRCH
ID๊ฐ€ pid์ธ ํ”„๋กœ์„ธ์Šค๋ฅผ ์ฐพ์„ ์ˆ˜ ์—†์Œ.

CONFORMING TO

POSIX.1-2001, POSIX.1-2008.

NOTES

sched_rr_get_interval()์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” POSIX ์‹œ์Šคํ…œ์—๋Š” <unistd.h>์— _POSIX_PRIORITY_SCHEDULING์ด ์ •์˜๋˜์–ด ์žˆ๋‹ค.

๋ฆฌ๋ˆ…์Šค ์ฐธ๊ณ  ์‚ฌํ•ญ

POSIX์—์„œ๋Š” ๋ผ์šด๋“œ ๋กœ๋นˆ ๋‹จ์œ„ ์‹œ๊ฐ„์˜ ํฌ๊ธฐ๋ฅผ ์ œ์–ดํ•˜๊ธฐ ์œ„ํ•œ ์–ด๋–ค ๋ฉ”์ปค๋‹ˆ์ฆ˜๋„ ๋ช…์„ธํ•˜๊ณ  ์žˆ์ง€ ์•Š๋‹ค. ์˜ค๋ž˜๋œ ๋ฆฌ๋ˆ…์Šค ์ปค๋„์—์„œ๋Š” ์ด๋ฅผ ์œ„ํ•œ (์ด์‹์„ฑ ์—†๋Š”) ๋ฐฉ๋ฒ•์„ ์ œ๊ณตํ•œ๋‹ค. ํ”„๋กœ์„ธ์Šค์˜ ๋‚˜์ด์Šค ๊ฐ’(setpriority(2)) ์ฐธ๊ณ )์„ ์กฐ์ •ํ•˜์—ฌ ๋‹จ์œ„ ์‹œ๊ฐ„์„ ์กฐ์ •ํ•  ์ˆ˜ ์žˆ๋‹ค. ์Œ์ˆ˜์ธ (์ฆ‰ ์šฐ์„ ์ˆœ์œ„ ๋†’์€) ๋‚˜์ด์Šค ๊ฐ’์„ ๋ถ€์—ฌํ•˜๋ฉด ์‹œ๊ฐ„์ด ๊ธธ์–ด์ง€๊ณ  ์–‘์ˆ˜์ธ (์ฆ‰ ์šฐ์„ ์ˆœ์œ„ ๋‚ฎ์€) ๋‚˜์ด์Šค ๊ฐ’์„ ๋ถ€์—ฌํ•˜๋ฉด ์‹œ๊ฐ„์ด ์งง์•„์ง„๋‹ค. ๊ธฐ๋ณธ ๋‹จ์œ„ ์‹œ๊ฐ„์€ 0.1์ดˆ์ด๋ฉฐ ๋‚˜์ด์Šค ๊ฐ’ ๋ณ€๊ฒฝ์œผ๋กœ ๋‹จ์œ„ ์‹œ๊ฐ„์— ์˜ํ–ฅ์„ ์ค„ ์ˆ˜ ์žˆ๋Š” ์ •๋„๋Š” ์ปค๋„ ๋ฒ„์ „์— ๋”ฐ๋ผ ์ข€ ๋‹ค๋ฅด๋‹ค. ๋‹จ์œ„ ์‹œ๊ฐ„ ์กฐ์ •์„ ์œ„ํ•œ ์ด ๋ฐฉ๋ฒ•์€ ๋ฆฌ๋ˆ…์Šค 2.6.24๋ถ€ํ„ฐ ์ œ๊ฑฐ๋˜์—ˆ๋‹ค.

๋ฆฌ๋ˆ…์Šค 3.9์—์„œ SCHED_RR ๋‹จ์œ„ ์‹œ๊ฐ„ ์กฐ์ •์„ (๊ทธ๋ฆฌ๊ณ  ์กฐํšŒ๋ฅผ) ์œ„ํ•œ ์ƒˆ๋กœ์šด ๋ฉ”์ปค๋‹ˆ์ฆ˜์ด ์ถ”๊ฐ€๋˜์—ˆ๋‹ค. /proc/sys/kernel/sched_rr_timeslice_ms ํŒŒ์ผ์ด ๋ฐ€๋ฆฌ์ดˆ ๋‹จ์œ„๋กœ ๋‹จ์œ„ ์‹œ๊ฐ„์„ ๋…ธ์ถœํ•˜๋ฉฐ ๊ทธ ๊ธฐ๋ณธ๊ฐ’์€ 100์ด๋‹ค. ์ด ํŒŒ์ผ์— 0์„ ์จ๋„ฃ์œผ๋ฉด ๋‹จ์œ„ ์‹œ๊ฐ„์„ ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ์ดˆ๊ธฐํ™” ํ•œ๋‹ค.

SEE ALSO

sched(7)


2017-09-15

โš ๏ธ **GitHub.com Fallback** โš ๏ธ