Эти операции вообще не являются одновременными, но операционная система управляет обеими операциями одновременно.
Что произойдет, если файловый менеджер (скажем, Windows Explorer) скажет операционной системе скопировать файл из одного места в другое, по одному для каждой из двух операций копирования.
Операционная система разбивает эту команду на две части своей собственной системы, «файловую систему» и «драйвер диска». Файловая система определяет, какие блоки на каком диске связаны с конкретными файлами, и сообщает драйверу диска о необходимости чтения или записи в эти блоки.
Драйвер диска создает очередь операций чтения и записи и определяет наиболее эффективный способ их удовлетворения. Настольная операционная система обычно старается быстро обслуживать эти запросы, чтобы сделать систему максимально отзывчивой, но серверная операционная система будет ставить в очередь операции с блоками как можно дольше, чтобы обрабатывать их в порядке, позволяющем максимально эффективно использовать порядок блоков.
Как только драйвер диска решает выполнить операцию с блоком, он говорит диску переместить его головку и прочитать или записать некоторые данные. Затем результат действия передается обратно в файловую систему и, в конечном итоге, в пользовательское приложение.
Тот факт, что операции появляются одновременно, является лишь иллюзией многозадачных возможностей операционной системы. Это довольно легко различить, поскольку несколько копий файлов занимают немного больше времени, чем одна копия (или иногда LOT дольше, если вы пытаетесь сделать кучу одновременно).
Конечно, ОС все еще может перемещать два отдельных диска одновременно, если это действительно разные диски.