linux 文件写入有关问题

linux 文件写入问题
在linux中,1g的数据,每recv一次数据就写入到文件中,和在内存中建立一个buffer,每接收1兆的数据再写如到文件中,他们之间的差别大吗? linux自己有缓存,我再创建一个缓存有必要吗?菜鸟,谢谢各位了。

------解决方案--------------------
我在哪本书上看到过 说一般buffer为4096字节写入文件可以达到最高性能
------解决方案--------------------
貌似标准C文件读写函数有buf,但是我试过自己再创建1024Bbuf,速度更快。函数setvbuf()
探讨
如果有大量的并发,比如ftp服务,那么写文件需要自己创建buffer吗?