Обычно он может прочитать столько байтов, сколько доступно в buf
.В действительности базовый драйвер устройства (будь то файловая система, сеть или канал) будет возвращать меньше, чем вы хотите, если нет ничего более доступного.
Итак, конкретное поведение read
зависит от базового драйвера в ядре.
Вот почему важно всегда проверять возвращаемое значение read
и проверять фактические прочитанные байты.