Fast UNIX Servers: Difference between revisions

Line 39: Line 39:
** <tt>mremap(2)</tt> and <tt>remap_file_pages(2)</tt> on [[Linux APIs|Linux]] can be used effectively at times
** <tt>mremap(2)</tt> and <tt>remap_file_pages(2)</tt> on [[Linux APIs|Linux]] can be used effectively at times
** There's nothing wrong with <tt>MAP_FIXED</tt> so long as you've already allocated the region before (see caveats...)
** There's nothing wrong with <tt>MAP_FIXED</tt> so long as you've already allocated the region before (see caveats...)
**<code>"The linux mremap() is an idiotic system call.  Just unmap the file and re-mmap it. There are a thousand ways to do it, which is why linux's mremap() syscall is stupid." - [http://www.mail-archive.com/freebsd-hackers@freebsd.org/msg12072.html Matthew Dillon]</code>
**<blockquote>"The linux mremap() is an idiotic system call.  Just unmap the file and re-mmap it. There are a thousand ways to do it, which is why linux's mremap() syscall is stupid." - [http://www.mail-archive.com/freebsd-hackers@freebsd.org/msg12072.html Matthew Dillon]</blockquote>
* User-space networking stacks: The Return of Mach!
* User-space networking stacks: The Return of Mach!
** Linux has long had zero-copy <tt>PF_PACKET</tt> RX; get ready for [http://marc.info/?t=122038008900009&r=1&w=2 zero-copy TX] (using the same <tt>PACKET_MMAP</tt> [http://kerneltrap.org/mailarchive/linux-netdev/2008/9/2/3168784 interface])
** Linux has long had zero-copy <tt>PF_PACKET</tt> RX; get ready for [http://marc.info/?t=122038008900009&r=1&w=2 zero-copy TX] (using the same <tt>PACKET_MMAP</tt> [http://kerneltrap.org/mailarchive/linux-netdev/2008/9/2/3168784 interface])