I/O模型不論在實際使用還是準備筆試面試中都是重要的內(nèi)容,參考Unix網(wǎng)絡(luò)編程進行總結(jié)如下。(尤其注意紅色標注處)
1. 明確I/O考察的對象和流程
參考Unix網(wǎng)絡(luò)編程,一個輸入操作通常包括兩個不同的階段:
(1) 等待數(shù)據(jù)準備好;
(2) 從內(nèi)核向進程復制數(shù)據(jù)。
對于一個套接字的輸入操作,第一步通常涉及等待數(shù)據(jù)從網(wǎng)絡(luò)到達,當所等待分組到達時,被復制到內(nèi)核的某個緩沖區(qū);
第二步就是把數(shù)據(jù)從內(nèi)核緩沖區(qū)復制到應(yīng)用進程緩沖區(qū)。
理解上述兩個不同階段對于后續(xù)理解I/O模型尤其是非阻塞I/O與同步I/O關(guān)系十分必要。
延伸閱讀
學習是年輕人改變自己的最好方式