作者lucy35 ()
看板Grad-ProbAsk
标题[理工] 作业系统 同步
时间Tue Nov 26 23:48:59 2019
http://i.imgur.com/0BQqJp2.jpg
请问这个该写什麽?
我觉得是用mutex lock改写程式
可是有些书写说binary semaphore 又称mutex lock
所以不知道该如何解答
-----
Sent from JPTT on my OPPO CPH1701.
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 223.138.51.78 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Grad-ProbAsk/M.1574783343.A.5D9.html
※ 编辑: lucy35 (223.138.51.78 台湾), 11/26/2019 23:49:30
※ 编辑: lucy35 (223.138.51.78 台湾), 11/26/2019 23:50:01
推 mistel: 想问empty跟full算binary semaphore吗?不然不太懂题目的 11/26 23:53
1F:→ mistel: 意思11/26 23:53
2F:→ nctudada: semaphore有分两种 一种是binary另一种是counting11/27 10:05
3F:推 nctudada: 我猜题目想要你用counting semaphore的方法来实作11/27 10:08
4F:→ DLHZ: 我记得还是有差 一个是wait一个是busy waiting11/27 11:24
5F:→ DLHZ: wait 是block自己後加进一个list 等到signal被执行再叫起来11/27 11:25
6F:推 mistel: 恐龙给mutex lock的定义是类似binary semaphore,所以我11/27 12:38
http://i.imgur.com/QatK1dO.jpg
这是课本中的一部分,也没有明确写为什麽
7F:→ mistel: 觉得不是n大说的11/27 12:38
※ 编辑: lucy35 (223.138.51.78 台湾), 11/27/2019 14:15:59
※ 编辑: lucy35 (223.138.51.78 台湾), 11/27/2019 14:17:21
※ 编辑: lucy35 (223.138.51.78 台湾), 11/27/2019 14:18:08
8F:→ DLHZ: 修正一下 我前面讲的是一种改良的做法 好像文不对题 他们很 11/27 15:17
9F:→ DLHZ: 像不过mutex比较像保护某块特定的部分 binary semaphore则 11/27 15:17
10F:→ DLHZ: 是不一定要锁某一块可能是等什麽事发生 就我理解他们都能做 11/27 15:17
11F:→ DLHZ: 到同样的事情(几乎一模一样?) 但是目的不太一样 所以应该也 11/27 15:17
12F:→ DLHZ: 不能说完全相同 11/27 15:17
13F:→ DLHZ: 所谓的相同应该是指实作起来的那种感觉 不同指目的上的差异 11/27 15:18
那你觉得题目要的mutex lock 是使用acquire()跟release()吗?还是要使用thread? 只是我不确定用thread是否跟题目所需的一样
※ 编辑: lucy35 (223.138.51.78 台湾), 11/27/2019 17:18:26
14F:→ DLHZ: 题目那样讲我觉得就是acquire跟release 你说的thread是? 11/28 00:49
http://i.imgur.com/QXNXA11.jpg
※ 编辑: lucy35 (223.138.51.78 台湾), 11/28/2019 10:43:28
16F:→ DLHZ: 你贴的thread看起来是题目想做的部分 11/28 12:39
所以相较acquire 跟release 的方法,这个thread 比较符合吗?
※ 编辑: lucy35 (223.138.51.78 台湾), 11/28/2019 16:46:30
17F:→ DLHZ: 我觉得是一样的东西欸 11/28 17:15