[lkml]   [1998]   [Jul]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: Kernel-bound applications?
> Two things you might like to consider (they aren't necessarily
> easy;-):
> - direct copying from writing process to reading process. This would
> require you to read the page tables of the reading process so you can
> copy_from_user() to the physical pages of the reading process. You'll
> need to pin down the reading process pages

I was thinking about this method. For blocking reads and writes, it seems
like it would work great. But since X uses non-blocking i/o, I didn't
really look into it. Anyone want to comment further on the feasibility?
Perhaps a test in unix_stream_sendmsg and unix_stream_recvmsg that checks
to see if it is a blocking socket and if true, does the direct copy.

> - when user buffers are page aligned and at least one page in size, do
> page flipping.

I think I'll let someone else try this method :)

> Both these techniques require page table accesses, which will have
> some overhead. You might also need to consider cache issues.
> Do it and benchmark it :-)

I think I'll try the direct copy mechanism this weekend, along with some
other ideas.

Kirk Petersen

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
Please read the FAQ at

 \ /
  Last update: 2005-03-22 13:43    [W:0.054 / U:14.244 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site