2009年6月19日 星期五

blocking I/O

此處的blocking指的是process停住了,process進行此類I/O之時,如果沒有辦法立即取得它想要的資源時,將會被系統排入waiting queue內部進行等待,此種狀況對process而言就是被blocking


一旦進入了此種狀態,要離開的方法有:


1.系統給了它所需的資源

2.被強制中斷(如因為time out而收到signal之類的)


與其反面的構想有Asynchronous I/O method 就是通稱的 non-blocking I/O
會讀進資料到指定位置,但是並不會去進行等待,當下可能沒讀到任何東西,
但是之後的資料接收可以另外安排。

沒有留言:

張貼留言