> do I have to do anything special to ensure that Writer is always
> doing the system calls in batches of [PIPE_BUF].
Yes. Writer doesn't do anything to respect PIPE_BUF.
> Perhaps if I do a write and 'flushed' write after?
If you make a sequence of calls to [Writer.write] and then wait on
[Writer.flushed], then Writer will make a single system call for all
of the writes. It will then fill the result of [Writer.flushed], and
you can continue.
> On the same topic, is Writer making use of [writev] under the hood?
Yes, although the vector will be of length one in the situation above.