- Schdulig Criteria(성능 척도)
- 시스템 입장: 이용률(놀지않고 일한 시간-주방장), 처리량(몇개의 일을 처리했냐-손님몇명)
- 프로그램 입장: 소요시간(기다린+실행-코스요리), 대기시간(총 기다린 시간-밥먹은 시간 뺀 시간), 응답 시간(최초의 cpu얻은 시간-첫번째 음식)
- FCFS(first come first served): 먼저 온 고객 먼저(비선점형)
convoy effect : 긴 프로세스 뒤에 짧은 프로세스 오는 것
- SJF(shortest jop first): cpu burst time 가장 짧은 프로세스 제일 먼저 스케줄
nonpreemptive: cpu잡으면 완료될 때까지 선점당하지 않음
preemptive: 남은 burst time보다 더짧은 cpu burst time 갖는 프로세스오면 뺏김
->minimum average waiting time 보장-preemptive
- priority scheduling: 우선순위 높은 프로세스에게 cpu 줌
문제: 기아현상 영원히 cpu얻지 못함
해결: aging 우선 순위 높여줌
- round robin: 동일한 크기의 할당 시간을 가짐 시간끝나면 선점 당함 다시 줄섬
- multilevel queue
- 레디큐 여러개로 분할
- foreground(interactive)
- background(사람과 상호작용 없음)
- 독립적인 스케줄링 알고리즘
- foreground-RR
- background-fcfs
- 스케줄링: 우선순위조정, time slice
- 레디큐 여러개로 분할
- multilevel feedback queue: 프로세스가 다른 큐로 이동가능 , aging
- multiple processor scheduling: cpu여러개인 경우 스케줄링 더 복잡
homogeneous processor: 줄세워서/특정 프로세서에서(전담 헤어디자이너)
load sharing: jop몰리지 않도록 별개 큐/공동 큐
symmetric 멀티프로세싱: 각 프로세서가 스케줄링
asymmetric 멀티프로세싱: 하나의 프로세서가 시스템 데이터 접근과 공유 책임
- real time scheduling
하드: 반드시 정해진 시간 안에 끝
소프트: 일반 프로세스 비해 높은 우선순위
- 스레드 스케줄링
로컬: 사용자 수준의 스레드 library에 의해 스케줄
글로벌: 일반 프로세스와 마찬가지로 커널의 단기 스케줄러가 스케줄링
- 알고리즘 평가
queueing models: 확률분포로 주어지는 도착률과 처리율 통해 performance index계산
구현&성능측정: 실제 시스템 구현해서 측정
모의 실험
http://www.kocw.net/home/search/kemView.do?kemId=1046323&ar=pop
'운영체제' 카테고리의 다른 글
[운영체제] Deadlocks (0) | 2022.05.03 |
---|---|
[운영체제] Process Synchronization (0) | 2022.05.01 |
[운영체제] Process Management (0) | 2022.04.25 |
[운영체제] Process (0) | 2022.04.23 |
[운영체제] System Structure & Program Execution (0) | 2022.04.19 |