Вы видите поведение только dd
синхронизации данных на диске после операции. Чтобы оптимизировать операции ввода-вывода, Linux часто считывает данные большими блоками, чем запрошено (упреждающее чтение), и задерживает записи, чтобы их можно было объединить (грязный кеш). В конце операции либо dd
синхронизирует файл на диске, либо ядро делает это неявно, и процесс остается активным до завершения всех операций записи.
Если на компьютере нет других массовых операций ввода-вывода, вы сможете оценить объем оставшихся для записи данных, посмотрев на значение «Dirty:» в /proc/meminfo
- это общий объем данных, ожидающих обработки. записано на диск.
Объем данных, которые система может оставить не записанными в памяти в любой момент времени, можно контролировать с помощью следующих ручек настройки sysctl. По умолчанию используются только отношения. Вы можете определить значение в процентах (коэффициентах) или байтах.
vm.dirty_background_ratio
vm.dirty_ratio
vm.dirty_background_bytes
vm.dirty_bytes
Официальную документацию по этим параметрам вы найдете здесь:
https://www.kernel.org/doc/Documentation/sysctl/vm.txt