aaa09777e1
up to now. The new sendfile is the code that Netflix uses to send their multiple tens of gigabits of data per second. The new implementation features asynchronous I/O, when I/O operations are launched, but not awaited to be complete. An explanation of why such behavior is beneficial compared to old one is going to be too long for a commit message, so we will skip it here. Additional features of new syscall are extra flags, which provide an application more control over data sent. The SF_NOCACHE flag tells kernel that data shouldn't be cached after it was sent. The SF_READAHEAD() macro allows to specify readahead size in pages. The new syscalls is a drop in replacement. No modifications are required to applications. One can take nginx binary for stable/10 and run it successfully on head. Although SF_NODISKIO lost its original sense, as now sendfile doesn't block, and now means something completely different (tm), using the new sendfile the old way is absolutely safe. Celebrates: Netflix global launch! Sponsored by: Nginx, Inc. Sponsored by: Netflix Relnotes: yes |
||
---|---|---|
.. | ||
bpf.c | ||
flowtable.c | ||
if.c | ||
inet6.c | ||
inet.c | ||
ipsec.c | ||
main.c | ||
Makefile | ||
Makefile.depend | ||
mbuf.c | ||
mroute6.c | ||
mroute.c | ||
netgraph.c | ||
netisr.c | ||
netstat.1 | ||
netstat.h | ||
nlist_symbols | ||
pfkey.c | ||
route.c | ||
sctp.c | ||
unix.c |