buffer i/o using read(2) on BSD sockets

Arturo Perez x6739 aperez at cvbnet.UUCP
Tue Mar 20 05:37:02 AEST 1990


It seems that I have generated a little bit of heat (but also quite a bit of
light) with my statement that the buffering on BSD sockets is visible even
at the application's level.  I have even been accused of telling "a lie, 
excuse me, a misleading statement" in a public forum.  So now I feel I must
clarify what I meant.

You may or may not recall that I claimed that the buffering on a BSD socket
is visible to applications and sometimes even users.  For example, here's
an excerpt from a Sun 3/60 man page for tar(1):


B	Force tar to perform multiple reads (if necessary)
	so as to read exactly enough bytes to fill a block.  This
	option exists so that tar can work across the Ethernet,
	since pipes and sockets return partial blocks even
	when more data is coming.

That's my best piece of evidence.  Now, you and I may know that it's not 
strictly necessary to have this option, but there it is.

Arturo Perez
ComputerVision, a division of Prime
aperez at cvbnet.prime.com
Too much information, like a bullet through my brain -- The Police



More information about the Comp.unix.wizards mailing list