[理工] 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