31.5. 프로세스의 timeslice 표시
ScanSetting _RR (round-robin) 정책은 10.0.0.1 _FIFO (first-in, first-out) 정책과 약간 다릅니다. gRPC_RR 은 라운드 로빈 회전에서 우선 순위가 동일한 동시 프로세스를 할당합니다. 이러한 방식으로 각 프로세스에 timeslice가 할당됩니다. sched_rr_get_interval() 함수는 각 프로세스에 할당된 timeslice를 보고합니다.
POSIX를 사용하려면 이 함수가 10.0.0.1 _RR 스케줄러 정책으로 실행되도록 구성된 프로세스에서만 작동해야 하지만 함수는 Linux의 모든 프로세스의 timeslice 길이를 검색할 수 있습니다.
sched_ rr_get_get_interval()
timeslice 정보는 timespec 으로 반환됩니다. 이것은 00:00:00 GMT의 기본 시간, 1970년 1월 1일 이후의 초 및 나노초 수입니다.
struct timespec {
time_t tv_sec; /* seconds */
long tv_nsec; /* nanoseconds */
}
struct timespec {
time_t tv_sec; /* seconds */
long tv_nsec; /* nanoseconds */
}
절차
sched_timeslice.c소스 파일을 생성하고 텍스트 편집기에서 엽니다.{EDITOR} sched_timeslice.c$ {EDITOR} sched_timeslice.cCopy to Clipboard Copied! Toggle word wrap Toggle overflow sched_timeslice.c파일에 다음 행을 추가합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 파일을 저장하고 편집기를 종료합니다.
프로그램을 컴파일합니다.
gcc sched_timeslice.c -o sched_timeslice
$ gcc sched_timeslice.c -o sched_timesliceCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다양한 정책 및 우선 순위로 프로그램을 실행합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow