PTT
Submit
Submit
选择语言
正體中文
简体中文
PTT
Grad-ProbAsk
[理工] [OS] semaphore 些许疑问
楼主:
kyuudonut
(善良è€ç™¾å§“)
2016-09-27 00:13:54
想请问 semaphore 一些问题
就是当一堆人在 wait 某一个 semaphore 时,
一旦有人 signal,那会是谁先跑离 wait 呢?
我想得到的解决方式就是加一个 waiting queue 这样
所以谁先 wait,之后 signal 便谁先解救
应该是这样没错?
但这题: http://imgur.com/a/lkVWw
大家都在 wait 那边 wait(s2)
那右边的 signal 一旦 signal(s2),不就一堆 process 全部逃离 wait 了吗 @@?
作者:
ken52011219
(呱)
2016-09-27 00:24:00
当三个process 以上 就要考量到它的bound waiting否则以我个人认知会产生 race condition但当其中一个process 可以进入时 其他则继续wait 只是不能保障是哪个得到进入权而如你所说 加入wait queue 可以使bound waiting 成立从1->0其实时间是固定的 当一个变为0时 总会有其中一个process第一名没解释清楚 XDD 我的意思应该说是 这几个process 就是在竞速 看谁先拿到权杖把condition 无视 无视 无视 ~关于同步问题 洪逸上这段时过多的程式码缺乏时间 又偏偏这章大概占全部笔记的1/3以上 难免会这样都可以XDD
作者:
gigayaya
(gigayaya)
2016-09-27 01:43:00
我记得我上次问过,谁先进去这个问题不是同步问题而是要看你底层的wait怎么制作
作者: krusnoopy (push)
2016-09-27 17:59:00
看谁先拿到CPU,不会同时一堆人挤进wait,wait是atomic指令,至于谁先抢到,黄能富教授的开放式课程说要看OS怎么设计感谢更正
继续阅读
[电磁]电磁学两个问题
timesoul
[理工] [OS] non-busy waiting semaphore
kyuudonut
[理工] 黄子嘉线代 第五章对角化
kkk22805385
[理工] 算法 图论时间复杂度
boy00114
[理工] 计组 ALU
w181496
[理工] 离散 排容
brad84622
[理工] 离散-排列问题
pureblue1234
[理工] 离散-整数分割
ss455032
[理工] 线代 invertible
gary19941208
[理工] 线性代数-基底与维度
r60705
Links
booklink
Contact Us: admin [ a t ] ucptt.com