운영체제를 공부하다 보면 메모리 스케줄링에 대한 파트가 있습니다.
여기에서는 FIFS,FIFO,SJF,SRT,HRN,RoundRobin등에 관한 내용들도 포함되어 있죠.
하지만 한번 공부하다 보면 그 순간만 이해한 후 잊어 버리는 경우가 생깁니다. 주기적으로 되세김질?을 해둬야 겠습니다. :)
선점 vs 비선점
비선점 : CPU를 항당 받은 프로세스가 작업이 전부 끝날때까지 CPU를 사용하고 있는 방식
선 점 : 프로세스가 CPU를 사용하고 있지만 우선순위 같은 특정한 이유로 다른 프로세스에 CPU사용을 양보 해야 하는
방식
FCFS(선입선처리) :
들어온 작업의 순서대로 처리
FIFO(선입선출) :
들어온 작업의 순서대로 출력
SJF(최소작업우선) :
프로세스의 CPU 사용시간을 비교하여 가장 작은 CPU 사용시간을 가진 프로세스에게 CPU 할당을 하는 방식
SRT(SJF의 선점형) :
모든 프로세스들의 실행시간을 비교하여 CPU를 할당하는 방식 (실행 중인 프로세스는 남은 작업시간으로 비교)
HRN(SJF의 확장형) :
실행시간 뿐만 아니라 대기시간도 적용시켜 CPU를 할당하는 방식
Round Robin :
정해진 실행시간 만큼 실행 (실행시간 = Time Quantum)
실행시간이 무한대일 경우 FCFS기법과 같아지며, 너무 짧으면 문맥 교환이 자주 일어난다.)
*집필*/*집필* OS