推 b0920075: 這個問題在2016年問過XDDD 12/15 11:47
→ wilson50101: 跟我問的好像不太一樣 12/15 11:56
推 nannnnn: 我覺得p1,p2 用disable不錯啊,這樣也不會影響另一顆cpu 12/15 12:54
→ nannnnn: ,如果p3要進來也會因為spinlock卡住,不進來也可以給其 12/15 12:54
→ nannnnn: 他人用 12/15 12:54
→ nannnnn: 不過這樣變成p1跟p2同時要有disable機制以外也要另外實 12/15 12:59
→ nannnnn: 作spinlock來防止p3使用 12/15 12:59
→ wilson50101: 不是很懂樓上的意思 12/15 13:20
→ wilson50101: 我的理解是 CPU1有P1 P2在用 如果用disable interrup 12/15 13:20
→ wilson50101: t不僅失去平行度 而且還會有風險 process如果不enabl 12/15 13:20
→ wilson50101: e的話process會佔據CPU不放不會回到kernel 12/15 13:20
→ wilson50101: 所以我覺得A這裡這個做法不太好 12/15 13:20
→ wilson50101: 有錯還請指正 12/15 13:20
→ wilson50101: 感謝大家協助 12/15 13:20
→ nannnnn: 但是他只要disable一顆cpu就可以了阿 12/15 15:19
推 sdfg014025xx: 你想多了 交大這題要考的就是單cpu跟多cpu適合的 12/15 18:14
→ sdfg014025xx: 互斥存取機制 如果要考慮到平行度和kernel拿不回cp 12/15 18:14
→ sdfg014025xx: u的話 大概沒有題目是要選disable interrupt了... 12/15 18:14
→ nannnnn: 可是可以透過p1同時使用test and set防止p3使用又同時di 12/15 21:34
→ nannnnn: sable p1的cpu這樣第二顆cpu不是還能同時給其他process 12/15 21:34
→ nannnnn: 使用嗎 12/15 21:34