技術問答
技術文章
iT 徵才
Tag
聊天室
2025 鐵人賽
登入/註冊
問答
文章
Tag
邦友
鐵人賽
搜尋
0
作業系統L5-行程排班
作業系統
蔡基
2022-01-06 00:20:25
‧
17887 瀏覽
分享至
作業系統L5-行程排班
CPU-I/O分割
簡介:CPU分割後接著IO分割
CPU排班程式
短程排班程式(Short-term scheduler)
:就緒佇列選出形成配置CPU給他,包含轉換內容(context switch),轉換成使用者模式
CPU排班決策時刻
執行->等待(不可搶先nonpreemptive)
執行->就緒(可搶先preemptive)
等待->就緒(可搶先preemptive)
形成終止(不可搶先nonpreemptive)
分派潛伏期(dispatchlatency)
:分派程式用來停止一個行程,並開始另一個行程所用的時間
排班原則
CPU使用率(CPU Utilization)
產量(Throughput)
回復時間(Turnaround Time)
等候時間(Waiting Time)
反應時間(Response Time)
排班演算法
先來先做(FCFS)
等待時間:P1= 0; P2= 24; P3 = 27
平均等待時間:(0 + 24 + 27)/3 = 17
護送現象(convoyeffect)
:短行程在長行程前面
最短工作先做(SJF)
平均等待時間= (3 + 16 + 9 + 0) / 4 = 7
分割時間:預估接近前一次的長度
平均等待時間= [(10-1)+(1-1)+(17-2)+(5-3)]/4=26/4=6.5
優先權排班
每個行程都有優先權數字(越小=>越高優先權)
飢餓(Starvation)
:低優先權行程可能永遠無法執行
老化(Aging)
:隨著時間提高優先權
平均等待時間=8.2
依序循環(Round Robin, RR)
簡介:每個行程分一小段
時間量(time quantum)q
,用完行程會被搶先,加到就緒佇列的尾端
多層佇列
簡介:分為多個獨立佇列,EX前景 背景
執行緒排班
行程競爭範圍(process-contentionscope, PCS)
系統競爭範圍(system-contentionscope, SCS)
多處理器
同質處理器(Homogeneous Processors)
:考慮所有處理器都相同
非對稱多元處理(Asymmetric Multiprocessing)
:一個主處理器負責排班決定、I/O處理、其它系統活動,其他只執行使用者程式碼
對稱多元處理(Symmetric Multiprocessing)
:每一個處理器自行排班
處理器親和性
軟性親和性(soft affinity)
:保持一個行程在相同處理器上執行,但不保證它會永遠這麼做
硬性親和性(hard affinity)
:指定處理器能夠執行特定行程
非均勻記憶體存取(non-uniform memory access
負載平衡(Load balancing )
:試著讓工作量平均分布
推轉移(Push migration)
:將過度負載CPU的行程推到其它CPU
拉轉移(Pull migration)
:閒置處理器從忙碌處理器拉任務
利用記憶體停滯
:另一個硬體執行緒在記憶體存取發生時執行
即時CPU排班(Real-time System)
軟即時系統
:對於非常即時的行程排班沒有提供保證
硬即時系統
–任務必須在指定的限期內被服務
中斷潛伏期(Interrupt Latency)
:中斷到達到開始執行中斷服務常式的時間
分派潛伏期(Dispatch Latency)
:停止目前行程並且啟動另一個行程的排班時間
單調速率排班演算法
單調速率排班而延誤截止期限
簡介:根據行程週期的反比設定優先權
P1週期是50,P2週期是80,P1被設定優先權高於P2,P1處理時間25,P2處理時間35
最早截止期限優先排班(EDF)
簡介:優先權是根據截止期限設定
P1週期是50,P2週期是80,P1被設定優先權高於P2,P1處理時間25,P2處理時間35
留言
追蹤
檢舉
熱門推薦
{{ item.subject }}
{{ item.channelVendor }}
|
{{ item.webinarstarted }}
|
{{ formatDate(item.duration) }}
直播中
立即報名
尚未有邦友留言
立即登入留言
iThome鐵人賽
參賽組數
902
組
團體組數
37
組
累計文章數
17917
篇
完賽人數
223
人
看影片追技術
看更多
{{ item.subject }}
{{ item.channelVendor }}
|
{{ formatDate(item.duration) }}
直播中
熱門tag
看更多
15th鐵人賽
16th鐵人賽
13th鐵人賽
14th鐵人賽
12th鐵人賽
17th鐵人賽
11th鐵人賽
鐵人賽
2019鐵人賽
javascript
2018鐵人賽
python
2017鐵人賽
windows
php
c#
linux
windows server
css
react
熱門問題
如何控制被我走私的Web Shell?
dreambooth報錯:hidden_size
關於powershell dns policy 同步問題
Zoom分享時黑屏
unifi 無線設定
git登入不了
樹莓派架站
大家都會如何使用 Gemini CLI 或其他CLI工具
熱門回答
dreambooth報錯:hidden_size
關於powershell dns policy 同步問題
unifi 無線設定
熱門文章
第20天,實作PKCS#7數位信封 / 歐買尬豬霸王豬腳飯 (台北中山) | 30天滷肉飯
08-02:AI輔助演說與即時翻譯
【LOLBAS鐵人賽Day21】WorkFolders.exe:相對路徑劫持&如何成為一個漏洞發掘家!
第22天,pkcs11-tool 讀取 HiCOS 憑證卡 / 阿義魯肉飯 (台北萬華) | 30天滷肉飯
Ch 22. 為什麼程式設計師喜歡用蘋果電腦?
IT邦幫忙
×
標記使用者
輸入對方的帳號或暱稱
Loading
找不到結果。
標記
{{ result.label }}
{{ result.account }}