On Linux, we should try to use `splice()` rather than the standard read/write stuff for operations involving pipes. This _mostly_ affects `sh`.