Hi All,I think you are describing the splice syscall:
I just had an idea for improving the performance of linux applications with some help from the
kernel. Let's say that I have to make a copy of a file. So, I read the input file into a buffer
and then write the buffer to the output file.
In both these cases the same data is coming from kernel_to_user and then from user_to_kernel. If
this can be short-circuited, that is, from kernel_to_kernel then the performance can be increased
a lot.
The psuedocode would be:
fd_inp = open _output_file
fd_out = open _input_file
instruct_kernel to write next data read from fd_inp to fd_out
read fd_out