[理工] 計組&OS

作者: mistel (Mistel)   2019-11-18 19:44:14
1.https://i.imgur.com/wdNSX4s.jpg
請問第一題的b選項錯在哪?
2.https://i.imgur.com/74ROqWm.jpg
https://i.imgur.com/762WSlK.jpg
請問第11題的d選項為什麼是對的?
many to one中會平均分配cpu time給各個kernel thread,但並不知道這條kernel thread
有多少user thread,所以不能保證有分配到較多的cpu time吧?
3.https://i.imgur.com/vlEM2bQ.jpg
再請教一下這頁最上面這題的d選項為什麼是錯的?
謝謝大家
作者: zuchang (chang)   2019-11-18 22:57:00
synchronous IO是說發出IO請求後還可以做事
作者: ok8752665 (dd8752665)   2019-11-18 23:12:00
那是asynchronous吧?
作者: zuchang (chang)   2019-11-18 23:38:00
應該二個都是 因為二個都算nonblocking IO只是asynchronous 是完成多少 就回報多少 synchronous是完成才回報
作者: ok8752665 (dd8752665)   2019-11-18 23:50:00
是嗎 洪逸是說blocking io約等於synchronous io 然後non-blocking io是有多少回報多少 asynchronous是做完會回報
作者: mi981027 (呱呱竹)   2019-11-19 08:05:00
z大的解釋有原文可以參考嗎?? 我的理解跟o大比較像欸blocking, synchorous是發出io請求後block住,等io完成才做其他事nonblocking會不斷的polling,詢問io完成了沒,沒完成就做其他事(會使用while loop不斷檢查)asynchronous是發出io request後就直接return,直到kernel通知我們io做完了再回來取(可以用signal實作)有錯還請更正
作者: zuchang (chang)   2019-11-19 09:19:00
抱歉 應該mi跟ok大是對的 是我記錯
作者: b10007034 (Warren)   2019-11-19 09:33:00
http://bit.ly/34677wU可參考看看
作者: mistel (Mistel)   2019-11-19 10:50:00
感謝幾位大大討論跟回覆,可以順便講解一下原文提到的其他選項嗎><
作者: b10007034 (Warren)   2019-11-19 11:24:00
第一題應是machine code,x86assembly language 可以透過compiler 轉成arm
作者: ok8752665 (dd8752665)   2019-11-19 11:36:00
3. 如果是call exit()直接變成terminated?
作者: b10007034 (Warren)   2019-11-19 11:41:00
Call system call 之後不一定要進waiting可以繼續執行asynchronous/nonblocking...
作者: ok8752665 (dd8752665)   2019-11-19 11:50:00
喔喔 對齁

Links booklink

Contact Us: admin [ a t ] ucptt.com