[理工] 102 交大 計組

作者: ssssIssss (沒咩約嗎)   2016-12-17 21:19:53
http://i.imgur.com/Jx1eItZ.jpg
14題
不太懂整個moniter的流程,哪位神人大大可以解釋一下>"<
作者: Transfat (Transfat)   2016-12-17 22:01:00
是不是忘記貼啥了
作者: newpuma (還很新)   2016-12-17 22:29:00
……
作者: lrt89604 (Sazanami)   2016-12-17 23:26:00
這真的要神人才知道了
作者: hopward (hopward)   2016-12-18 00:26:00
這連神人都沒辦法 應該要神才有辦法了
作者: fsab00070875 (MilkHEAD)   2016-12-18 02:59:00
所以我說的那個醬汁呢?打錯,圖呢?
作者: aa06697 (todo se andarà)   2016-12-18 15:01:00
這個code是hoare monitor: process在signal後會讓被救的process先進來然後自己進去一個特別的queue(優先權比condition readyqueue還高的queue)next_count用來記錄有多少個「救命恩人」 因為在processwait的時候 代表cpu要給其他人 而此時若有救命恩人要優先救他 沒有才讓其他在等待的process進入monitor所以lineA lineB 就跟最左邊那格的code一樣然後wait的process會卡在wait(x_sem) lineC就是signal(x_sem) 要救在wait的process 然後wait(next) 就是讓救命恩人進去特別queue的用途補充一下 semaphore的wait跟monitor的wait意義不太一樣喔一個是搶執行權 一個是強迫去condition variable的queue休息
作者: yupog2003 (屁股)   2016-12-18 16:25:00
看完樓上的講解感覺又好像再把洪逸講的聽了一遍,感謝
作者: aa06697 (todo se andarà)   2016-12-19 15:21:00
yes

Links booklink

Contact Us: admin [ a t ] ucptt.com