|splice() / wire() / tee() ... whatever
||[Jan. 20th, 2005|02:10 am]
Linus silently submitted a patch into the 2.6 series recently to redo how pipes are implemented, with the later-stated long term goal of being able to splice and tee file descriptors together in the kernel.|
More details: http://lwn.net/Articles/118750/
But it's turning out to not be too long term -- he recently showed some inital code to implement some of it.
I'm excited because it means Perlbal will have to do a LOT less copying. It's like sendfile, except you're able to wire ("splice") arbitrary fds together, regardless of whether they're page-backed or socket-backed. (which is why we can't use sendfile() from one socket to another socket, which is what Perlbal wants to do....)