微軟系統(tǒng)的進(jìn)程管理 , 無法就是打開任務(wù)管理器 , 查看進(jìn)程、結(jié)束進(jìn)程、或者創(chuàng)建進(jìn)程 。但是在Linux系統(tǒng)中進(jìn)程管理是一件比較復(fù)雜的工作了 。本文就來詳細(xì)介紹一下Linux系統(tǒng)進(jìn)程管理 。

普通調(diào)度算法
FCFS
First Come First Service 。FIFO方式的調(diào)度策略 , 先來后到的服務(wù)方式 。
這種方式的優(yōu)勢是實(shí)現(xiàn)簡單 , 也是最容易想到的調(diào)度方案 。但是有兩個(gè)重大問題:
1.對(duì)短進(jìn)程的運(yùn)行不利
短進(jìn)程必須等到前面長進(jìn)程執(zhí)行完畢了之后才能運(yùn)行 , 可能會(huì)等待較長時(shí)間 。
2.對(duì)IO密集型運(yùn)行不利
IO密集型比短進(jìn)程還慘 。還不容易排隊(duì)等到他運(yùn)行了 , 結(jié)果沒運(yùn)行一會(huì)兒就因?yàn)镮O阻塞去了 , 等IO操作完畢了之后 , 還得重新排隊(duì) 。
所以這個(gè)算法對(duì)IO密集型的進(jìn)程運(yùn)行效率是極其低下的 。
RR
Round Robin 。輪詢調(diào)度算法為每個(gè)進(jìn)程分配固定的時(shí)間片 , 時(shí)間片用完了就必須重新到隊(duì)尾去排隊(duì) 。
這樣的設(shè)計(jì)解決了FCFS的第一個(gè)問題 , 相對(duì)而言也部分解決了第2個(gè)問題 。
但是對(duì)IO密集型進(jìn)程依然解決得不太好 , 有一個(gè)優(yōu)化的方案就是設(shè)計(jì)兩個(gè)隊(duì)列 , 將因?yàn)镮O阻塞的進(jìn)程單獨(dú)放一個(gè)隊(duì)列 , 在選擇下一個(gè)運(yùn)行進(jìn)行的時(shí)候?qū)@個(gè)隊(duì)列的進(jìn)程提權(quán) 。
FCFS還有另外一個(gè)比較復(fù)雜的問題就是如何選擇時(shí)間片 。時(shí)間片過長就退化成FCFS算法了 , 過短又會(huì)造成切換開銷太大 。
Prediction
【Linux系統(tǒng)進(jìn)程管理介紹】 基于預(yù)測的算法 。這類預(yù)測算法都是假設(shè)我們知道每個(gè)進(jìn)程總共所需要的時(shí)間 , 以及IO占比信息 。上一頁12345下一頁 剩下全文
推薦閱讀
- Linux系統(tǒng)xargs命令的用法
- Linux系統(tǒng)Dalvik堆內(nèi)存的管理與回收介紹
- Win8.1系統(tǒng)修改標(biāo)題欄和提示框字體的方法
- Win8.1無法修改系統(tǒng)提示音的解決方法
- Linux系統(tǒng)正則表達(dá)式的使用方法
- Linux系統(tǒng)如何重定向數(shù)據(jù)流?
- Linux菜鳥常用命令有哪些?
- Win8系統(tǒng)開始屏幕上的快捷鍵有哪些?
- Linux系統(tǒng)Rhythmbox播放器出現(xiàn)中文亂碼怎么解決?
- Linux系統(tǒng)shell命令行的操作方法
