IO消耗和处理器消耗
生活随笔
收集整理的這篇文章主要介紹了
IO消耗和处理器消耗
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
linux操作系統博大精深,對操作系統的掌握的掌握程度對編寫代碼非常有幫助。下面看一下IO消耗和處理器消耗的不同。
I/O消耗型進程:程序運行時的大部分時間都在提交或者等待I/O請求,因此這樣的進程要經常處于運行狀態,但通常都是短短的一會兒,所以處理器傾向于優先調度I/O消耗型的進程。該類進程優先級高,時間片長。而優先調度該類進程是為了讓該類進程是為了盡可能地消耗其所需要的處理器資源,從而讓該進程阻塞住,這樣只要用戶一完成I/O操作,該進程就會被喚醒,從而立刻處理I/O操作,那么在用戶看來,該進程響應非???#xff0c;體現出了很好的用戶友好性
處理器消耗型進程:該類進程在把時間都發在了執行代碼上,即在該進程執行期間,馬不停蹄的使用處理器資源。所以除非被搶占,否則它們通常都一直不停地運行,因此從系統響應速度考慮,調度器不應該經常讓它們運行。該類進程優先級低,時間邊短。
1)如果處理器消耗型進程的優先級高,時間片長,那么它就是實打實地消耗完它的時間片后,系統才會為其他低優先級的進程服務
2)而如果I/O消耗型進程的優先級高,時間片長,則因為頻繁的IO操作并等待完成,需要處理器處理的時間其實很少,這樣系統會自動將其等待的時間片分配給其他需要服務的進程
顯然2更合理,不只讓I/O消耗型進程的響應速度更快,而且讓其它進程不用等太久就會被再次調度到
?
總結
以上是生活随笔為你收集整理的IO消耗和处理器消耗的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c++几种智能指针比较
- 下一篇: 常见设计模式说明