SVR3.0 vs BSD4.3

Narayan Mohanram narayan at tandem.UUCP
Thu Mar 24 10:18:41 AEST 1988


In article <4441 at megaron.arizona.edu> lm at megaron.arizona.edu.UUCP (Larry McVoy) writes:
>you start counting how many times you say "bcopy(src, dest, len)".  This
>might be a moot point when we have infinitely fast CPU's and memories :-)
>
>(It should be obvious but I'll drive it home:  the streams code that I've
>seen copies the data out of the upper level buffer and then into the 
>lower level buffer [assuming "downward" movement].  The copying dominates
>the time spent in the streams drivers.  If streams can handle imbedded 
>pointers in their data then my comments are meaningless.)
>-- 
>Larry McVoy	lm at arizona.edu or ...!{uwvax,sun}!arizona.edu!lm

This is entirely wrong. Each layer just passes mblks down. There is no 
copying of data once it is copied in from user code to kernel space into
and mblk. Each layer then just tacks on its header to the front of
the chain of mblk's. This is finally dma'd out to the net. If the
driver is capable of scattered IO then dma is normally done from the
chain of mblk's.

Narayan Mohanram

(narayan at ati.tis.llnl.GOV)



More information about the Comp.unix.wizards mailing list