Reimplement timer_sleep(), defined in devices/timer.c.
Although a working implementation is provided, it busy waits, that is, it spins in a loop checking the current time and calling thread_yield() until enough time has gone by. Reimplement it to avoid busy waiting.
void timer_sleep(int64_t ticks);
Suspends execution of the calling thread until time has advanced by at least x timer ticks. Unless the system is otherwise idle, the thread need not wake up after exactly x ticks. Just put it on the ready queue after they have waited for the right amount of time.
-> busy waiting 피해서 코드 고치기
Implement priority scheduling and priority donation in Pintos.
https://casys-kaist.github.io/pintos-kaist/project1/priority_scheduling.html