Потому что так устроен жёсткий диск. Жёсткий диск может прочитать или записать минимум 1 сектор. Он не может прочитать или записать 1 байт. Размер сектора же уже зависит от железа.
К физическому размеру сектора дополняется логический размер кластера файловой системы. Обычно он тоже пишется\читается атомарно, но это уже искусственное программное ограничение. И оно может быть снято планировщиком.
Например, размер сектора 512 байт, а размер кластера 1024 байта.
Вы читаете файл длинною 1 байт.
Т.к. размер кластера 1024, то файловая система запросит с диска 2 сектора по 512 байт.
Затем вы решили изменить 1 байт и записать.
Файловая система отправит на запись 2 сектора по 512 байт. Тут в действие может вступить планировщик, определить какие данные изменились и реально на запись отправить лишь 1 сектор.