반응형

Lock 2

[정글] PintOS Project1 #3 Priority Scheduling 2/2

[정글] PintOS Project1 #2 Priority Scheduling 1/2 은 여기에 정리 Priority Inversion Priority Inversion 은 H (High), M (Middle), L (Low) 라는 세 개의 쓰레드가 있고, 각각의 우선순위는 H > M > L 일 때 H 가 L 을 기다리고 있는 상황 (L이 Lock을 점유하고 있는 상황에서 H가 Lock을 요청한 상황) 에서 H 가 L 에게 CPU 점유권을 넘겨주면, M 이 L 보다 우선순위가 높으므로 점유권을 선점하여 실행되기 때문에 Thread 가 마무리되는 순서가 M -> L -> H 가 되어 M 이 H 보다 우선하여 실행되는 현상이다 이런 문제를 해결하기 위해 Priority Donation 을 구현해야 한다, 아..

[정글] PintOS Project1 #2 Priority Scheduling 1/2

Project 1 에서 구현해야 할 것 1. Alarm Clock 구현 완료 2. Priority Scheduling 3. Advanced Scheduler 2. Priority SchedulingScheduling 은 Ready 상태에 있는 Thread 들의 순서를 관리하여 가장 높은 Priority 를 가진 Thread 가 Running 상태가 될 수 있도록 만들어 주는 것이다 🐣 운영체제 CH07 - CPU Scheduling 은 한 프로세스가 CPU 를 사용하는 동안 다른 프로세스가 대기하는 상황에서CPU 를 효율적으로 활용할 수 있도록 우선순위를 정하고, 프로세스들을 적절하게 배치하는 기술이다 Scheduling 현재 방식 Running 상태로 될 수 있는 상태는 Ready 밖에 없으므로, R..

반응형