→ kyuudonut: 可以想像有個queue? 12/11 16:41
→ fornote: FIFO queue? 12/11 16:47
推 k2shouai: pj已經卡在wait, pi一signal他就不會卡在wait。 12/11 16:58
→ fornote: 嗯這我明白 那有沒有可能pi一signal pi比pj更快執行wait( 12/11 17:06
→ fornote: mux) 12/11 17:06
→ k2shouai: 那pj等於跟pi同時進,他搶輸pi就等pi singal就好,等一 12/11 17:13
→ k2shouai: 次而已。 12/11 17:13
→ k2shouai: 不然你pi signal前pj就在,pj一定會在wait 12/11 17:15
推 newpuma: 不可能 12/11 17:15
→ fornote: 感謝 12/11 18:04
推 kyuudonut: srmaphore 僅保證mutual exclusion 是否有bounded wa 12/11 18:10
→ kyuudonut: iting要看實作 12/11 18:10
→ kyuudonut: @k2 這要看scheduler怎麼排吧 pi還是有可能繼續等 12/11 18:13
→ kyuudonut: 說錯 pj仍有可能繼續等 如果scheduler沒排到他 12/11 18:14
推 newpuma: 同步探討的bounded waiting並沒有把排程考慮進去吧!不然 12/11 19:08
→ newpuma: 前面的臨界區間設計演算法都沒滿足bounded waiting了不是 12/11 19:08
→ newpuma: 嗎? 12/11 19:08
推 kyuudonut: 有滿足阿 四個演算法都有另外設計變數來達成 12/11 19:43
→ kyuudonut: Bound waiting 12/11 19:43
→ kyuudonut: ex. turn, flag...etc 12/11 19:43
→ kyuudonut: 另外process synchronization本來就要考慮到scheduling 12/11 19:45
推 newpuma: 原來如此...這樣說來用semaphore去設計臨界區間的進入區 12/11 19:56
→ newpuma: 離開區還需要特別設計別的變數來保證bounded waiting嗎@@ 12/11 19:56
→ newpuma: ? 12/11 19:56
→ k2shouai: 我說的是只有這二個process的情形 12/11 19:58
→ kyuudonut: @newpuma yes, 像是block和wake這兩個call有維持一個 12/11 20:03
→ kyuudonut: fifo queue 12/11 20:03
→ kyuudonut: @k2 如果CPU一直沒切給pj pi的確一直有可能一直跑下去? 12/11 20:04
推 newpuma: 瞭解,有點像是排程的starvation問題了 (雖然bounded wai 12/11 20:09
→ newpuma: ting也隱含這層意思) 12/11 20:09
→ k2shouai: 假如發生你講那種情形就程式會有bug,但不是這個設計造 12/11 20:26
→ k2shouai: 成的啊 12/11 20:26
→ kyuudonut: 這樣不是就代表這個設計沒有保證bounded waiting @@? 12/11 21:35
→ k2shouai: Bounded waiting不是只考慮使用同個semaphore的process 12/11 22:19
→ k2shouai: 嗎? 12/11 22:19
→ ken52011219: 現行 os 系統關於假設性的問題基本上都沒有一定答案 12/11 22:24
→ ken52011219: 如同洪逸筆記上 bound waiting 是假設有 queue 滿足 12/11 22:25
→ ken52011219: 該項 , 但真的只能假設 queue 而已嗎 ? 絕對還有別 12/11 22:26
→ ken52011219: 種方式 去決定要怎麼排程 只是有太多種方法了 12/11 22:26
→ ken52011219: 就連恐龍本也只是概念式地稍微講解 12/11 22:27
→ ken52011219: 在能保證不會Stravation 的情況下 , 是否能讓優先度 12/11 22:28
→ ken52011219: 較高的再多跑幾次 (假設quantum 有限) 12/11 22:30
→ ken52011219: 有很多手段都可以達到此目的 12/11 22:31
推 aa06697: 洪毅上課有說~ 看起來會不滿足bounded waiting 但這不是 12/12 13:36
→ aa06697: 使用者要考量的 這必須是設計semaphore的設計者要考量的 12/12 13:36
→ aa06697: (最簡單可能就是用waiting queue) 所以我們是以使用者 12/12 13:36
→ aa06697: 的角度來看他能否解決cs問題 就不須考慮此 12/12 13:36