[理工] OS 99交大 ch6

作者: wilson50101 (我覺得我還不錯啊)   2018-12-15 11:08:45
https://i.imgur.com/CAGBorW.jpg
不好意思想問一下這題的A
老師上題庫班給的答案是B 還有畫了下面那張圖
依照這張圖來看的話
是不是A也不太適合
對CPU1的P1P2 應該是要採取spinlock而非disable interrupt才對吧
作者: b0920075 (Void)   2018-12-15 11:47:00
這個問題在2016年問過XDDD
作者: wilson50101 (我覺得我還不錯啊)   2018-12-15 11:56:00
跟我問的好像不太一樣
作者: nannnnn (nannnnn)   2018-12-15 12:54:00
我覺得p1,p2 用disable不錯啊,這樣也不會影響另一顆cpu,如果p3要進來也會因為spinlock卡住,不進來也可以給其他人用不過這樣變成p1跟p2同時要有disable機制以外也要另外實作spinlock來防止p3使用
作者: wilson50101 (我覺得我還不錯啊)   2018-12-15 13:20:00
不是很懂樓上的意思我的理解是 CPU1有P1 P2在用 如果用disable interrupt不僅失去平行度 而且還會有風險 process如果不enable的話process會佔據CPU不放不會回到kernel所以我覺得A這裡這個做法不太好有錯還請指正感謝大家協助
作者: nannnnn (nannnnn)   2018-12-15 15:19:00
但是他只要disable一顆cpu就可以了阿
作者: sdfg014025xx (隨便就好)   2018-12-15 18:14:00
你想多了 交大這題要考的就是單cpu跟多cpu適合的互斥存取機制 如果要考慮到平行度和kernel拿不回cpu的話 大概沒有題目是要選disable interrupt了...
作者: nannnnn (nannnnn)   2018-12-15 21:34:00
可是可以透過p1同時使用test and set防止p3使用又同時disable p1的cpu這樣第二顆cpu不是還能同時給其他process使用嗎

Links booklink

Contact Us: admin [ a t ] ucptt.com