linux pipe的緩沖區(qū)大小限制測試
pipe()創(chuàng)建管道、采用默認方式的方式,即默認阻塞模式。
平臺:
uname -a
Linux develop 2.6.25-14.fc9.i686 #1 SMP Thu May 1 06:28:41 EDT 2008 i686 i686 i386 GNU/Linux
三個概念:
1、頁緩沖區(qū)大?。?K
2、總緩沖區(qū)大?。?4K
1、<4K的數(shù)據(jù)立即發(fā)送,以頁為單位
2、>4K的數(shù)據(jù),將會分成多個頁的數(shù)據(jù),分批發(fā)送。
函數(shù) write要么阻塞,要么成功(copy全部數(shù)據(jù)到內(nèi)核緩沖區(qū),不存在只copy部分數(shù)據(jù)的情況),異常換回-1