Read all bytes from stdin into a Vec.
Uses a direct read() loop into a pre-allocated buffer instead of read_to_end(),
which avoids Vec’s grow-and-probe pattern (extra read() calls and memcpy).
On Linux, enlarges the pipe buffer to 4MB first for fewer read() syscalls.