On Tue, Mar 13, 2001 at 19:41:50 -0600, Rohit Rakshe wrote:
> Hello,
> 
> I am sure people have thought about this one, but just that I could not
> find any discussions about it:
> 
> Consider a server which receives data over network, does some operations
> on the data and sends it back over the network. The kernel could spent
> most of its time copying data to and from user space. (the operations are
> performed in the user space).
> 
> The following can be done to avoid this overhead:
> 
> Say, I want to copy a page from user space to kernel, I can just pin it in
> physical memory; then attach it to kernel page table. (similar thing for
> other way round).
> 
> Is this kinda thing implemented ? If not, is it feasible ?

Yes, it has been done.  See:

http://people.FreeBSD.org/~ken/zero_copy/

The version of the patches linked off the page isn't the latest, the latest
is here:

http://people.FreeBSD.org/~ken/zero_copy/zero_copy.diffs.20010124

Those diffs are against -current as of January 24th.  I can probably supply
diffs against a newer version of -current if you need 'em.

The NFS code isn't ready for prime time, I need to rip that out and clean
up some mutex issues before the code can go into -current.

Ken
-- 
Kenneth Merry
[EMAIL PROTECTED]

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message

Reply via email to