想請問
PollingI/O, Interrupted I/O
和
Blocking I/O, Non-blocking I/O, AsynchronousI/O
之間有什麼關係嗎?
是可以2*3這樣互相搭配
還是後面三種各自使用到前面兩種運作方式之一?
作者:
can18 (18號)
2017-12-31 09:10:00上面是Cpu如何處理I/O下面是user process如何handle IO我猜兩個應該是完全不相關的
作者:
TWkobe (中華柯比)
2017-12-31 11:48:00可以相關或不相關 下面更是描述整個Io event 的處理流程
我目前理解是blocking io是不載入新的process然後是interrupted ioNon blocking是載入新的但是polling然後asynchronous io是載入新的然後interrupted io請問這樣理解正確嗎?
作者:
TWkobe (中華柯比)
2017-12-31 14:08:00你可以想像socket通訊中 某個個server有許多task在listen client端的請求若是blocking io ,假設沒有pending request則會被強迫一直等到client端有請求而nonblocking就可以此時切換下一個task作別的事至於怎麼檢查有沒有pending你要用polling或interrupt都可以 所以block/nonblocking看得是一整個流程或者也可以用生產者消耗者問題來思考也行
了解~那可以再問一下non-blocking和asynchronous差別嗎?覺得兩個好像~