※ 참고 - 프로세스 스케줄링
우선순위 기반 스케줄러
* Priority-Based 스케줄러
- 정적 우선순위 : 프로세스마다 우선순위를 미리 지정
- 동적 우선순위 : 스케쥴러가 상황에 따라 우선순위를 동적으로 변경
우선순위 변경하기 - nice()
* 프로세스 중 사실상 root가 소유한 프로세스만, 우선순위를 높일 수 있다
- 다른 프로세스는 우선순위를 낮출 수만 있다
- 스케쥴링 방식에 따라 우선순위가 적용될 수 있고, 안될 수도 있다
우선순위 변경하기 - getpriority(), setpriority()
* which : 프로세스(PRIO_PROCESS), 프로세스 그룹(PRIO_PRGP), 사용자(PRIO_USER)별로 우선순위를 가져올 수 있다
예제 - priority.c (root 소유로 실행)
* 이외에 스케쥴링 조작 시스템콜 기반 제공 (POSIX 기반), 스케쥴링 알고리즘 변경으로 사용은 어렵다
출처 : 제로베이스
'공부 Note > 시스템 프로그래밍' 카테고리의 다른 글
Chapter 06 시그널 (0) | 2022.02.07 |
---|---|
Chapter 05 프로세스간 커뮤니케이션 (0) | 2022.02.07 |
Chapter 04 시스템 프로그래밍 (3) (0) | 2022.02.07 |
Chapter 04 시스템 프로그래밍 (2) (0) | 2022.02.07 |
Chapter 04 시스템 프로그래밍 (1) (0) | 2022.02.07 |