組長:隨班附讀、廖哲賢
組員:隨班附讀、沈德祐
github: https://github.com/teyushen/xv6-public



修改 lapic.c 的 cmostime => 將 UTC 時間轉成 TW 時間。

修改 proc.c 的 allocproc, scheduler 以及 proc.h 的 proc 資料結構(多增加優先權)
=> 修改排程為 Round Robin 與 Priority 的結合。每次選定要執行的 process 都判斷其優先權,每次排成過的 process 都會降低其 priority。



新增 proc.c 的 consoleproc => 列出 pid, name, state, priority

sys_prio1 及sys_sleepprio 其中 sleepprio 有做sleep處理。exec.c 的 exec => 定義 systemcall 的 priorityprio1 及 sleepprio 指令讓user可以測試先權的執行狀態。date.cps.c不同 systemcall 可以給定不同的 priority,priority 的會優先執行。但為了避免 starving 的問題。每次執行過的 systemcall 的 priority 會下降,因此可以避免 starving 的情況。
此為 Round Robin 與 Priority 結合的 schedule 實作。