請問有關critical section的觀念問題 |
尚未結案
|
charse
一般會員 ![]() ![]() 發表:5 回覆:9 積分:7 註冊:2004-06-07 發送簡訊給我 |
我的觀念中
Critical section用TestAndSet來作的話
因為他可以ATOMIC的執行來保證不會被插隊
可是TestAndSet不是算硬體指令一類的嗎?
那我怎麼會遇到像是以TestAndSet來作SEMAPHORE的程式呢?
應該是要用semaphore來emulate TestAndSet
就是用軟體來模擬硬體的功能比較合理吧...
我原本是認為semaphore應該是藉由其他可以ATOMIC執行的指令
來做到TestAndSet的功能...
而TestAndSet指令功能是等同binary semaphore
因為binary semaphore也是藉由wait和signal的方法atomic執行
......此時binary semaphore的atomic是利用原本較短較快的指令來保證ATOMIC,是不需要特殊指令和硬體的?
......至於TestAndSet則是需要特殊指令和硬體,不過可以節省指令數目,因為用軟體去模擬他也許要花多一點的時間? 但看來是我觀念錯掉了
可以請各位高人幫小弟指點一下迷津好嗎?
感激不盡~
< >< >
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |