看板 Grad-ProbAsk 關於我們 聯絡資訊
附上題目 http://0rz.tw/Lf8p5 我想問第三題 題目說有一個預防processor be blocked forever的程式: int fd; char buffer[100]; ... alarm(3); // set timer for 3 seconds write(fd, buffer, 100); //write 100 byte from buffer //to the open file descriptor fd ... (b) 問這段程式為什麼會產生race condition,導致processor be blocked forever (c) 問解決race condition的方法,提示是跟write()和polling有關 可是我實在看不太懂這段程式碼的作用是什麼 是要讓想要write的程序先等幾秒在執行的意思嗎@@? 那這樣race condition就只可能發生在alarm一直被設置,讓程序不斷等待的情況吧@@? 可是(c)小題又完全不懂了 不知我是不是哪裡誤會題目了,請各位高手指點一下,謝謝!! 另外也問一下第四題,有點不確定 題目問在multicore processor上,當有個core是overload 而此時thread是 (1)computation (2)IO intensive 要不要搬到idle core上 我的想法是(1)時計算可以分開,所以可以搬到idle core (2)時處理IO,多個core一起處理也沒有什麼幫助,所以應該不要搬 不知道有沒有想錯,肯請各位高手指教!! 謝謝!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.25.106