楼主:
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) 有关
不过看了头痛 还好学店没考这么难:)