coding
-
[Pintos] Priority Scheduler개발 공부의 시작/pintos 2022. 11. 18. 02:03
문제 상황: Pintos의 스케쥴러는 리스트에 삽입되는 순서대로 스레드를 스케쥴링한다. 우선순위에 따라 스레드를 정렬해서 우선순위가 높은 스레드를 먼저 스케쥴링 할 수 있도록 한다. 개선 사항 1 - Priority Scheduling : 🔖 스케쥴링되는 스레드는 ready_list에서 가장 우선순위가 높은 스레드여야 한다. 이를 위해 리스트 안에 스레드를 삽입할 때마다 스레드를 우선순위에 따라 정렬되도록 만들었다. 이렇게 되면 리스트의 가장 앞에 우선순위가 가장 높은 스레드가 위치하게 된다. 그리고 스케쥴링은 리스트의 맨 앞의 스레드를 대상으로 하게 된다 🔖 리스트 안에 스레드가 삽입되는 경우는 총 3가지이다. 스레드가 생성될 때 CPU를 점유하고 있던 스레드가 대기상태로 돌아갈 때 block 상태의 ..