作者:
surimodo (好吃棉花糖)
2018-04-19 00:56:32※ 引述《asd2260123 (核融合笨蛋烏鴉)》之銘言:
: 這題點解
: https://i.imgur.com/3ApGgOG.png
: 話說老師是不考古巨獸ㄛ
: 覺得是不是要斷尾求生了
https://cs.brown.edu/research/thmon/thmon2a.html
要fully utilize要考慮兩個問題
M:M model 靠兩個scheduler調度 一個在kernel 一個threading library
而threading library幾乎不用考慮
因為即使在threading library有較高優先權
在kernel端可能被釋放而給另一個反而不重要的thread
另一個是nk的數量 需要幾個nk才能夠支持一個特定的np
如果nk太少 無法達到可用併發(available concurrency)
user threads 會產生idle 即使還有閒置的np沒在使用
nk太多 在少量的np情況 可能產生過多浪費時間於context switching
而且這種時間分割可能是不需要的
即使np=nk 當發生blocking system call 或者 page fault
底下nk也會受阻 user thread可能準備執行但沒有足夠的nk支援
不過這份沒有提到cpu-bound thread跟其他thread的互動
多翻恐龍本找靈感ㄅ
下面還有提到一部分跟i/o thread(device) 有關
不過看了頭痛 還好學店沒考這麼難:)