Во-первых, если вы читаете и пишите побайтно, то количество системных вызовов равно количеству байт в файле, а каждый системный вызов переключает контекст. Во-вторых, если работа осуществляется с HDD, то головка мечется с места на место, а её позиционирование - чертовски долгая операция. В-третьих, файловый менеджер скорее всего вообще не читает и не пишет файл, а просто делает один системный вызов, типа
splice, и дальше копированием занимается DMA.