看板 Grad-ProbAsk 關於我們 聯絡資訊
※ 引述《wsx02 (無酒罐)》之銘言: : 標題: [理工] [OS] multi-level queue : 時間: Sat Nov 26 20:53:11 2011 : : scheduling採multi-level queue : process常用 就讓time slice短 : process不常用 就讓time slice長 : 請問為什麼呢? : 這邊如果你問的multi-level queue 指的是比較常見的各層採RR 然後各queue之間可preemptive 也因為各層採RR,才有time slice大小的設計問題 大部分會將system process放在最高的priority queue 再來是iteractive batch等等 假設你的問題是為何比較上層的queue有比較小的quantum 而比較下層的有比較大的quantum 是因為上層是屬於偏向interactive的環境 需要短的response time 來快速的回應 至於下層,屬於batch式的,比較沒有急迫性 所以採大的slice來提升cpu utilization(因context switching少) : -- : ※ 發信站: 批踢踢實業坊(ptt.cc) : ◆ From: 218.166.118.244 : 推 ceo890710:如果常用的process slice長就會常常讓其他process為了等 11/26 21:02 : → ceo890710:這個process而starvation,而因為常出現,所以常常會佔 11/26 21:03 : → ceo890710:用大部分的CPU time使得CPU utilization變差。 11/26 21:04 : → ceo890710:應該是這樣吧,有錯誤請指正~ 11/26 21:04 如果他的multi-level queue跟常用不常用指的跟我上面提的一樣 即使上層的time quantum設的比較小 下層的一樣有機會starvation,跟slice大小設定無關 (有time slice大小,應該是採用RR 就不會有starvation的問題) 另外單層之間,根據不同使用頻率給予不同的process不一樣的quantum 這我就比較不了解,不過如果要討論單層應該也不用問multi level吧? : 推 genius945:多層queue,大多是採上層具有較大優先權,而上層的process 11/26 21:04 : → genius945:大多是屬於user process,time slice短,response time也 11/26 21:05 : → genius945:會比較短,至於下層的一些如system,batch的process,則採 11/26 21:05 這邊錯了,system應該放在最上層Orz : → genius945:比較長的time quantum來減少context switching,增加利用 11/26 21:06 : → genius945:1F講的好像比較對XDD 11/26 21:12 : 推 genius945:不對...我覺得有點怪,一直占用cpu time,utilization是會 11/26 21:14 : → genius945:比較好,我還是選我原本的答案好了XD 11/26 21:15 : 推 ceo890710:更正~我想講的是starvation這件事~跟utilization無關~ 11/26 21:27 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.173.192.94